Commit Graph

1024 Commits

Author SHA1 Message Date
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
Timothy Nikkel
c0143622d0 Bug 1076783. Move scroll info layers to the bottom of the background layer so they are behind most things. r=roc
Bug 1041510 moved them to the top so merging and flattening with scroll layer items worked correctly, but we don't need scroll layer items anymore.
2014-10-20 20:20:16 -05:00
Kartikaya Gupta
2594a86a86 Bug 1078373 - Use the scrollPositionClampingScrollPortSize when computing whether or not to show the scrollbar. r=tn 2014-10-10 22:16:03 -04:00
Kartikaya Gupta
ab3e782f16 Back out cset 3d9ce7853452 (bug 1078373) for mochitest failures. r=me on a CLOSED TREE 2014-10-10 17:11:13 -04:00
Kartikaya Gupta
8f506045c1 Bug 1078373 - Use the scrollPositionClampingScrollPortSize when computing whether or not to show the scrollbar. r=tn 2014-10-10 16:14:52 -04:00
Timothy Nikkel
c1d8692b35 Bug 1076447. When building the display list for scrollbars and we have a display port just use the whole scrollbar rect as the dirty rect. r=mattwoodrow
When we have a display port the dirty rect for root scroll frames is going to be the display port already when it is passed in. The display port can contain a somewhat arbitrary area of the scroll frame, there is no reason is has to include the scrollbars, which are laid out at the desktop scrollport (and adjusted as necessary in the compositor).

As well as BuildDisplayListForChild, we need the dirty rect to be set for the creation of the nsDisplayWrapList or nsDisplayOwnLayer in AppendToTop.
2014-10-09 15:10:01 -05:00
Kartikaya Gupta
85de5eb65b Bug 1078316 - Tweaks for root-frame overlay scrollbars so they don't oscillate while panning around. r=botond,tn 2014-10-08 22:56:38 -04:00
Ryan VanderMeulen
7106ed491e Merge inbound to m-c. a=merge 2014-09-26 16:54:59 -04:00
Markus Stange
a15e939a69 Bug 1073103 - Rename ThebesLayer to PaintedLayer. r=roc 2014-09-26 13:06:08 -04:00
Kartikaya Gupta
caf3c1bdc9 Bug 1073354 - Update documentation that refers to the now-removed RecordFrameMetrics. r=tn DONBUILD 2014-09-26 11:29:38 -04:00
Arnaud Sourioux
13efd81178 Bug 1038570 - Part 2: rename ObjectFrame class to PluginFrame. r=dbaron 2014-09-24 06:34:00 +02:00
Milan Sreckovic
fe944b11f6 Bug 1068784 - Since the tiling is now not a simple pref choices, but it depends on some platform specific criteria, stop using the pref directly, and always use gfxPlatform::UseTiling instead. r=mwoodrow 2014-09-17 13:55:23 -04:00
Robert O'Callahan
a180df7dde Bug 1062100. Part 2: Assign clip rects to non-async-scrollable scrolled layers, and hide clipped layers if some non-moving layer covers their entire clip rect. r=mattwoodrow 2014-09-06 16:16:33 +12:00
Kartikaya Gupta
5f5ab2525d Bug 1009961 - Remove code to drop displayport if it exceeds B2G max texture size. r=tn
This code is no longer needed because tiling is enabled on all
scrollable layers on B2G, and so we only draw tile-sized chunks
of the displayport. Therefore the textures created will never
exceed the max texture size. On non-B2G platforms this code is
not used anyway so there is no effect. Going forward we should
always be enabling tiling before enabling APZ on new platforms
so it is unlikely that we will need this code.
2014-09-17 02:20:06 -04:00
Robert O'Callahan
05406561b0 Bug 1066591. Backout c43865439dd9 (bug 1066211) to fix regression. 2014-09-13 11:56:16 +12:00
Robert O'Callahan
f76e10418d Bug 1062100. Part 2: Assign clip rects to non-async-scrollable scrolled layers, and hide clipped layers if some non-moving layer covers their entire clip rect. r=mattwoodrow 2014-09-06 16:16:33 +12:00
Kearwood (Kip) Gilbert
322449b9e8 Bug 1022825 - Implement Asynchronous Smooth Scrolling on Compositor Thread. r=kats
- Extended nsIScrollableFrame and nsGfxScrollFrame to return destination
  of smooth scrolls which are to be animated on the compositor thread.
- Added apz.smooth_scroll_repaint_interval preference.
- Implemented AsyncPanZoomController::PanZoomState::SMOOTH_MSD_SCROLL state
  and AsyncPanZoomController::SmoothScrollAnimation class to animate smooth
  scroll animations on the compositor thread.
- Extended FrameMetrics to report requests for smooth scrolls to be animated
  on the compositor thread and their corresponding destination positions.
- AsyncPanZoomController now checks FrameMetrics for requests to perform
  smooth scrolling on the compositor thread.  It will ensure that they
  are cancelled as needed by mousewheel, touchpanel, keyboard, and
  CSSOM-View instant scrolling DOM methods.
- The layout/generic/test/test_scroll_behavior.html mochitest has been
  commented as depending on Bug 1062609 before being enabled for APZ.
2014-07-10 11:52:40 -07:00
Robert O'Callahan
5d6eae5feb Bug 967844. Part 3: Setup FrameMetrics from FrameLayerBuilder based on animated geometry roots. r=mattwoodrow 2014-08-31 15:29:24 +12:00
Phil Ringnalda
ef7af0d5d8 Backed out 3 changesets (bug 967844) for robopan bustage
Backed out changeset 6b53305f1c42 (bug 967844)
Backed out changeset dff3eb181f33 (bug 967844)
Backed out changeset 4d4b03442eaf (bug 967844)
2014-09-01 15:20:13 -07:00
Robert O'Callahan
6f95837ff0 Bug 967844. Part 3: Setup FrameMetrics from FrameLayerBuilder based on animated geometry roots. r=mattwoodrow 2014-08-31 15:29:24 +12:00
Ehsan Akhgari
8bb87f8a27 Bug 1060985 - Fix more bad implicit constructors in layout; r=roc 2014-08-31 23:36:37 -04:00
Mats Palmgren
6b85db9a4d Bug 1059242 - Initialize |allowedRange| with aPoint and a distance of zero in both directions (otherwise we'll return zero in the non-scrolled direction and reset that scroll position). r=kip 2014-08-27 11:42:00 -04:00
Kearwood (Kip) Gilbert
acbf7deb57 Bug 1022818 - Part 3: Tests for CSSOM-View Smooth-Scroll DOM API Methods and MSD Animation. r=bz, r=roc
- Verify that instant scroll-behavior is synchronous.
- Verify that smooth scroll-behavior is asynchronous.
- Verify that smooth scroll-behavior is triggered by CSSOM-View DOM methods.
- Verify that instant scroll-behavior interrupts smooth scroll-behavior
  animation.
- Verify that smooth scroll-behavior is not framerate dependant.
- Verify that smooth scroll-behavior physics simulations used by animations
  converge and allow the animation to reach completion.
- CSSOM-View scroll-behavior smooth scroll animations must produce the same
  results indendently of frame-rate:
  - Reference samples of scroll position for each frame are captured from a
    smooth scroll at 120fps for variations in X-Distance, Y-Distance.
  - Test samples are captured from an animation with the same parameters at
    varying framerates.
  - Variance in position at each sampled interval is compared to the 120fps
    reference.  To pass the test, the position of each test sample must match
    the reference position with a tolerance of one test sample frame's range
    of motion.  This range of motion is calculated by the position delta of
    the reference samples one test frame duration before and after.
  - The duration of the reference sample animation and the test sample
    animation must match within 1 frame to pass the test.
  - The simulation driving the animation must converge and stop on the
    destination position for the test to pass.
2014-07-25 14:20:45 -07:00
Miranda Emery
874dede8fb Bug 957445: Part 3 - combines nsIScrollbarOwner with nsIScrollbarMediator, r=mats 2014-02-14 19:40:53 +13:00
Miranda Emery
5c7d76411f Bug 957445: Part 2 - nsHTML/XULScrollFrame implement nsIScrollbarMediator, r=mats 2014-02-05 14:33:18 +13:00
Trevor Saunders
e052cf9168 bug 1016545 - Provide an iterator that iterates over all children of an element r=bz 2014-07-16 14:41:57 -04:00
Robert O'Callahan
456a85a031 Bug 1050096. Clip scrollparts to the viewport for root scrollframes. r=tnikkel 2014-08-09 01:00:53 +12:00
Kearwood (Kip) Gilbert
38463a238d Bug 1026023 - Part 4: Allow smooth scrolling to override momentum mouse wheel scroll events. r=mwoodrow
- When a smooth scroll is being processed on a frame, mouse wheel and trackpad
  momentum scroll event updates will no longer cancel the SMOOTH or SMOOTH_MSD
  scroll animations, enabling scripts that depend on them to be responsive
  without forcing the user to wait for the fling animations to completely stop.
2014-07-15 16:13:00 +02:00
Kearwood (Kip) Gilbert
aefe537eca Bug 1026023 - Part 3: Integrate MSD movement with nsGfxScrollFrame. r=mattwoodrow
- Added nsIScrollableFrame::ScrollMode::SMOOTH_MSD to differentiate
  existing smooth scrolls used by keyboard and mousewheel events from the
  CSSOM-View scroll-behavior's MSD motion scrolling.
- Implemented ScrollFrameHelper::AsyncSmoothMSDScroll, which takes the role
  of ScrollFrameHelper::AsyncScroll when SMOOTH_MSD scrolls are requested.
- Implemented glue code to handle callbacks from AsyncSmoothMSDScroll and
  to hand off velocity between the classes when one scroll animation is
  interrupted by another.
2014-07-09 10:02:31 -07:00
Matt Woodrow
860d97af85 Bug 1043961 - Disabled desktop display port changes for android. r=tn 2014-07-29 12:07:36 +12:00
Jonathan Kew
c7e5b8d9dc bug 1031241 pt 1 - Rename Get{Min,Pref}Width to Get{Min,Pref}ISize throughout layout. r=dbaron,smontagu 2014-07-24 18:03:25 +01:00
Simon Montagu
0132cc9646 Bug 789096 patch 9: use logical coordinates in nsHTMLReflowState available size. r=jfkthame 2014-07-24 01:28:46 -07:00
Matt Woodrow
c48d9f8068 Bug 1031107 - Part 8: Set display ports on tiled scrollable layers. r=tn 2014-07-24 15:14:39 +12:00
Matt Woodrow
b8588895ba Bug 1031107 - Part 4: Union the display port dirty area in nsSubDocumentFrame. r=tn 2014-07-24 15:12:42 +12:00
Timothy Nikkel
899fb99eab Bug 1041510. Now that we merge and flatten display items bottom to top (instead of the reverse) move the scroll info layer to be on top of the other scrolled content so that it is still processed last. r=roc 2014-07-22 15:37:28 -05:00
Timothy Nikkel
9ef876c2b1 Bug 995519. Enable overlay scrollbars on root scrollframes in root content documents. r=roc 2014-07-15 00:09:24 -05:00
Carsten "Tomcat" Book
0934346e13 Backed out changeset 6bf1863c97a5 (bug 1009306) for m6 and m7 android test failures on a CLOSED TREE 2014-06-30 12:30:57 +02:00