Commit Graph

960 Commits

Author SHA1 Message Date
Kearwood (Kip) Gilbert
c1456fb0f3 Bug 969250 - Part 1: Implement scroll snapping for scrollbars (v5 Patch). r=roc 2015-03-03 17:40:00 +01:00
Xidorn Quan
9533554776 Bug 1139283 - Move some properties from nsStyleDisplay to nsStylePosition. r=dbaron
The moved properties are:
* clip
* transform-style
* transform-origin
* backface-visibility
* perspective
* perspective-origin
* will-change
2015-03-08 18:43:22 +11:00
dvander@alliedmods.net
1973744b9c Don't try to async scroll frames that have less than one pixel of scrollability. (bug 1126090 part 7, r=kats) 2015-03-06 14:26:59 -08:00
dvander@alliedmods.net
5873d3e033 Don't async scroll overflowed single-line text boxes in APZ. (bug 1126090 part 6, r=botond) 2015-03-06 14:26:59 -08:00
Kearwood (Kip) Gilbert
89a2c1a5a1 Bug 945584: Part 6 - Implementation of scroll snapping (v10 Patch), r=roc, r=kats
- Implemented CSS scroll snapping (http://dev.w3.org/csswg/css-snappoints/)
2015-02-19 15:53:30 -08:00
Kearwood (Kip) Gilbert
b8c03249f1 Bug 945584: Part 3 - Enable cancellation of OSX synthesized mousewheel scrolling events (v2 Patch),r=roc
- Mouse wheel events synthesized by OSX for momentum scrolling can now
  be interrupted by DOM triggered and CSS scroll snapping triggered scroll
  events for consistent behavior with the scrolling and fling gestures
  in the APZC.
2014-02-04 14:54:22 +13:00
Kearwood (Kip) Gilbert
17eac97452 Bug 945584: Part 2 - Add CSS scroll snapping attributes to ScrollbarStyles (v10 Patch),r=mstange
- ScrollbarStyles now carries additional variables to support new
  CSS scroll snapping attributes:
  - scroll-snap-type / scroll-snap-type-x / scroll-snap-type-y
  - scroll-snap-points-x / scroll-snap-points-y
  - scroll-snap-destination
  - (scroll-snap-coordinate does not apply to the scroll container)
- Simplified the constructor and operator== for ScrollbarStyles.
2014-02-04 14:54:22 +13:00
Kartikaya Gupta
65d1868963 Bug 1139153 - Rip out the unneeded layout.async-containerless-scrolling.enabled pref. r=tn 2015-03-05 06:04:03 -05:00
Ethan Lin
ec3b4c5c1e Bug 1125750 - Check the overflow region direction to avoid unnecesary reflow for scrollable frame. r=dbaron 2015-02-08 18:57:00 +01:00
David Anderson
f664088758 Inactive subframes-in-subframes add event regions to the wrong layer. (bug 1139213, r=tn) 2015-03-03 21:20:50 -08:00
Andrea Marchesini
40ecc85b89 Bug 1134280 - Get rid of Tag() - patch 2.7 - layout/generic - Fix all the occurrences, m=smaug, r=surkov 2015-03-03 11:09:00 +00:00
Kartikaya Gupta
a47b517f92 Bug 990907 - Add a flag on nsIScrollableFrame to indicate if it is actively being scrolled by APZ. r=tn 2015-02-25 09:32:09 -05:00
Kartikaya Gupta
1fd608c7f7 Bug 1102427 - Ensure scroll parents of an active scrollframe are layerized. r=tn 2015-02-24 01:24:04 -08:00
David Anderson
ae1b3dac4a Make sure XUL windows have a top-level APZC. (bug 1130645, r=roc) 2015-02-12 17:49:10 -08:00
L. David Baron
c0fe258808 Back out changeset 6849669e696e (bug 1130645) for Android robocop failures.
The first failure in rc1 was:
TEST-UNEXPECTED-FAIL | testAxisLocking | PaintExpecter - blockUtilClear timeout
and the first failure in rc2 (API9) or rc3 (API11) was:
TEST-UNEXPECTED-FAIL | testPanCorrectness | PaintExpecter - blockUtilClear timeout
2015-02-16 18:22:56 +13:00
David Anderson
bdaed73f96 Make sure XUL windows have a top-level APZC. (bug 1130645, r=roc) 2015-02-12 17:49:10 -08:00
David Anderson
cfade247e1 Remove apz.subframe.enabled and assume it is always true. (bug 1128761, r=kats) 2015-02-03 15:02:04 -08:00
Kartikaya Gupta
d00963ed70 Bug 1124452 - Make it work without containerless-root, too. r=tn 2015-01-28 13:28:28 -05:00
David Anderson
077e04d5dc Fix classic scrollbars getting occluded with containerless scrolling. (bug 1100756, r=roc) 2015-01-13 23:55:17 -08:00
Botond Ballo
70e324a117 Bug 1076241 - Add an API for setting a resolution on a document and scaling it by that amount. r=kats,tn 2015-01-02 20:06:14 -05:00
Ehsan Akhgari
45e11ebec7 Bug 1118427 - Mark virtual overridden functions as MOZ_OVERRIDE in layout; r=roc 2015-01-07 10:07:36 -05:00
Simon Montagu
aba410ebbb Bug 1079154 patch 5: convert callers of ApplyRelativePosition, ReflowChild and FinishReflowChild in layout/generic to the logical versions, r=jfkthame 2015-01-06 23:10:07 -08:00
Mats Palmgren
6e2b90ea60 Bug 1116753 - Remove the nsIPresShell* param from remaining frame ctors that still have it. r=roc 2015-01-06 09:27:56 +00:00
Mats Palmgren
055fe56a7c Bug 1109571 part 3 - Implement table caption specific code for ComputeAutoSize(), GetCorrectedParent() (for getting the style parent frame) and AccessibleType(). r=roc 2014-12-26 07:21:32 +00:00
Markus Stange
a516581a1f Bug 1101635 - Enable tiling on 10.6. r=jrmuizel f=milan 2014-12-19 14:48:33 -05:00
David Anderson
aa28e5e029 Allow containerless scrolling for root scroll frames, too. (bug 1076192, r=tn) 2014-12-17 15:37:28 -08:00
Kartikaya Gupta
531bbe885e Bug 1107606 - Ensure that setting a smooth scroll while APZ is enabled activates the layer. r=tn,kip 2014-12-05 00:04:39 -08:00
Mats Palmgren
a5185c3fee Bug 1107353 - Wallpaper a null-pointer crash in AsyncScrollCallback for now. r=kip 2014-12-04 21:26:26 +00:00
David Anderson
9b52de759d Cache the current animated geometry root in nsDisplayListBuilder. (bug 1101260 part 1, r=roc) 2014-11-20 16:58:18 -08:00
David Anderson
d3aaa4eee9 Add inactive subframes to the dispatch-to-content region. (bug 1082594, r=tn,kats) 2014-11-19 20:24:15 -08:00
Jonathan Kew
874486338c Bug 1093684 - part 1 - Make nsGfxScrollFrame aware of vertical writing modes. r=smontagu 2014-11-17 08:49:37 +00:00
Benoit Girard
de95949f46 Bug 1094442 - Part 1: Refactor how tile w/h is queried r=kats 2014-11-12 17:54:29 -05:00
Botond Ballo
4eddb9ef90 Bug 1076163 - Basic APZ support for css-driven resolution. r=kats,tn
This makes APZ behave nicely with most uses of a css transform:scale.

Summary of changes:
  - FrameMetrics::mCumulativeResolution now includes the css-driven resolution
    in addition to the pres-shell resolution.
  - Displayports are now stored in Screen pixels rather than Layer pixels.
    This is what we want anyways (as we'd like the displayport size to remain
    constant as a fraction of the screen size), but it was necessary to make
    this change as part of this patch because continuing to store them in
    Layer pixels in the presence of a css-driven resolution would have
    required a bunch of infrastructure to implement correctly.

Remaining work:
  - Layout painting a scrollable layer at a resolution different from the
    scale induced by the css transform causes problems. These will go away
    with bug 1076192.
  - Different resolutions on the x and y axes are not supported. This is
    tracked by bug 1039967.
2014-10-24 15:49:38 -04:00
Carsten "Tomcat" Book
5ab7b878a7 Backed out changeset fbb9dc943109 (bug 1076163) for Android 4.0 Crashes on a CLOSED TREE 2014-11-13 11:47:57 +01:00
Botond Ballo
9b6d326e37 Bug 1076163 - Basic APZ support for css-driven resolution. r=kats,tn
This makes APZ behave nicely with most uses of a css transform:scale.

Summary of changes:
  - FrameMetrics::mCumulativeResolution now includes the css-driven resolution
    in addition to the pres-shell resolution.
  - Displayports are now stored in Screen pixels rather than Layer pixels.
    This is what we want anyways (as we'd like the displayport size to remain
    constant as a fraction of the screen size), but it was necessary to make
    this change as part of this patch because continuing to store them in
    Layer pixels in the presence of a css-driven resolution would have
    required a bunch of infrastructure to implement correctly.

Remaining work:
  - Layout painting a scrollable layer at a resolution different from the
    scale induced by the css transform causes problems. These will go away
    with bug 1076192.
  - Different resolutions on the x and y axes are not supported. This is
    tracked by bug 1039967.
2014-10-24 15:49:38 -04:00
Robert O'Callahan
03bebce9f2 Bug 1096181. Recompute overflow areas of transformed elements when a parent element with perspective is scrolled. r=mattwoodrow 2014-11-12 18:08:27 +13:00
Benjamin Peterson
485d6801e5 No bug - Remove extra words to make the sentence coherent. r=me 2014-11-09 13:45:27 -05:00
Benjamin Peterson
7bdc4192fa No bug - fix typo r=me 2014-11-08 14:35:00 -05:00
Jonathan Kew
0fbbf4608c Bug 1093949 - Reverse scroll position for RTL content. r=mats 2014-11-06 09:06:22 +00:00
Robert O'Callahan
ca28a22945 Bug 1080205. Part 1: Don't add clip rects to async-scrolled layers for root scrollframes, since the FrameMetrics to scroll those layers will be set on a ContainerLayer parent. r=tn 2014-10-28 17:34:58 +13:00
Robert O'Callahan
b12c533cbc Bug 1083635. Part 6: Rename viewport to scrollport in ScrollFrameHelper::ComputeFrameMetrics. r=mattwoodrow 2014-10-21 10:32:11 +13:00
Timothy Nikkel
20d7065c10 Bug 1087453. Don't put scroll info layers on top of content that is not scrolled by their associated scroll frame. r=roc 2014-10-28 00:23:52 -05:00
Kearwood (Kip) Gilbert
2e92a8bba9 Bug 1086948 - Remove scroll-behavior: instant CSS value option. r=bz
- Removed "instant" CSS keyword and references used by scroll-behavior.
- Updated tests, removing scroll-behavior: instant test cases.
2014-10-22 11:37:00 +02:00
Robert O'Callahan
8633487ab3 Bug 1073290. Don't render with displayports if we're not painting to the window. r=mattwoodrow 2014-10-21 10:32:11 +13:00
Benoit Girard
91881b27a7 Bug 961871 - Part 4: Fix budget calculation by adding Maybe prerenderer and animate. r=roc 2014-10-21 21:55:55 -04:00
Benoit Girard
a5472b2b25 Bug 961871 - Part 3: Implement will-change budgeting. r=roc 2014-10-21 21:54:32 -04:00
Benoit Girard
8ad6049025 Bug 961871 - Part 2: Refactor will-change scroll, pass through a nsDisplayListBuilder. r=mattwoodrow 2014-10-21 21:54:06 -04:00
Benoit Girard
ca08133d5c Bug 961871 - Part 1: Refactor ScrollingActive. r=mattwoodrow 2014-10-21 21:53:38 -04:00
Kearwood (Kip) Gilbert
92f654786e Bug 1010538 - Part 3 - Implement scroll-behavior CSS property. r=mstange
- Added SCROLL_SMOOTH_AUTO flag to nsIPresShell to enable selection of
  scroll behavior through CSS.
- Updated Element and Window scrolling DOM methods to enable smooth scrolling
  set through the scroll-behavior CSS property.
- Keyboard, scroll bar, mousewheel, and any other events that scroll smoothly
  with the general.smoothScroll preference enabled will now scroll instantly
  if the scroll frame has "scroll-behavior: instant" applied through CSS.
2014-09-15 12:30:03 -07:00
Kearwood (Kip) Gilbert
912497df59 Bug 1010538 - Part 2 - Add scroll-behavior to ScrollbarStyles. r=mstange
- ScrollbarStyles extended to support the scroll-behavior CSS property
- Corrected naming of parameters to ScrollbarStyles CTOR
2014-09-15 12:30:00 -07:00