Commit Graph

552 Commits

Author SHA1 Message Date
Timothy Nikkel
062b61cbfb Bug 942189. Only avoid creating scroll info layers for root scroll frames in display root documents (not root content documents) because those have already had RecordFrameMetrics on them. r=roc 2014-01-03 14:48:57 -06:00
Jonathan Kew
afd9fd3b50 bug 735577 - pt 4.1 - use accessor functions for some physical-coordinate fields in nsHTMLReflowMetrics, in preparation for logicalization. r=smontagu 2013-12-27 17:59:52 +00:00
Jonathan Kew
b9938a1edc bug 735577 - pt 3.2 - update the rest of layout code to use the new accessors on nsHTMLReflowState. r=smontagu 2013-12-27 17:59:21 +00:00
Kartikaya Gupta
a5a9461806 Bug 946408 - Always layerize a scrollable element if it's focused. r=kats,tn 2013-12-16 14:53:06 -05:00
Kartikaya Gupta
1f3e408aa4 Bug 946408 - Small refactoring for readability. r=tn 2013-12-16 14:53:02 -05:00
Kartikaya Gupta
8109167828 Bug 949132 - Add a flag to FrameMetrics indicating a non-APZ scroll (original patch by mstange). r=tn 2013-12-16 12:04:45 -05:00
Trevor Saunders
81260b0a39 bug 947022 - type nsIPresShell::mForwardingContainer and nsPresContext::mContainer r=bz 2013-11-20 14:18:25 -05:00
Kartikaya Gupta
9f80972019 Bug 814435 - Always layerize overlay scrollbars on B2G. r=tn 2013-12-09 22:14:54 -05:00
Kartikaya Gupta
1af8763544 Bug 814435 - Annotate layers for scrollbars as such. r=tn, BenWa 2013-12-09 22:14:53 -05:00
Stephen Pohl
acd47107c8 Bug 934811 - Ensure that no scrollbars are displayed for touch input. r=jimm,tn 2013-12-03 13:21:09 -05:00
Botond Ballo
16e9267e41 Bug 912666 - Force scroll frames for 'scrollgrab' elements to always create a real scrollable layer rather than a scroll info layer. r=roc,tn 2013-10-23 05:04:42 -04:00
Botond Ballo
6b767514e1 Bug 936277 - Do not allow subframe displayports to get clipped away. r=tn 2013-11-07 19:36:59 -05:00
Robert O'Callahan
f29e5f0bf3 Bug 931432. Rename nsGfxScrollFrameInner to mozilla::ScrollFrameHelper, and mInner fields to mHelper. r=mats
--HG--
extra : rebase_source : 14410be7a6c41a85489f8a802c88a309ddd0fe60
2013-10-29 15:27:50 +13:00
Timothy Nikkel
52ab14a4c0 Bug 929915. Fix IsScrollingActive on scroll frames to only be true if we actually build a scrollable layer. r=roc 2013-11-01 22:47:21 -05:00
Kartikaya Gupta
c94501ab5f Bug 928441 - Don't clip to the scrollport on root scrollframes if the CSS viewport has been overridden. r=tn,roc 2013-10-24 18:31:26 +02:00
Kartikaya Gupta
4d5196d5fa Bug 906043 - Enable async subframe scrolling for Metro. r=tn 2013-10-18 15:56:51 -04:00
Timothy Nikkel
93e4b6b2d2 Bug 916125. Clip scroll layer items to the scroll port so the resulting layers have the proper clip. r=roc 2013-10-17 17:02:42 -05:00
Robert O'Callahan
b73ccf9edd Bug 926706. When nsGfxScrollFrameInner::UpdateOverflow decides we need to update the scrollbars, don't reflow the scrollframe with NS_FRAME_IS_DIRTY since that reflows all descendants. Just reflow the frame itself and don't dirty anything else. r=tn 2013-10-17 23:05:15 +13:00
André Reinald
d6cc051cc7 Bug 868648: Make window overlay scrollbars appear/disappear when 2 fingers down/up trackpad. Credits to Markus for his help getting this right. r=mstange,masayuki,smichaud 2013-08-16 23:17:40 +02:00
Steven Michaud
061bf53f0e Bug 925411 - Temporarily backout patch for bug 868646 for causing this bug. r=spohl 2013-10-10 16:22:02 -05:00
André Reinald
aecacdd464 Bug 868648 - Make window overlay scrollbars appear/disappear when 2 fingers down/up trackpad. r=mstange, r=masayuki
Credits to Markus for his help getting this right.
2013-08-16 23:17:40 +02:00
Daniel Holbert
9265cd3a98 Bug 919865: Replace #ifdef DEBUG with DebugOnly<> in a few spots in layout/generic. r=mats 2013-10-01 22:02:23 -07:00
Masayuki Nakano
d9fe18d02f Bug 920377 part.30 Get rid of nsGUIEvent r=roc 2013-10-02 12:46:03 +09:00
Robert O'Callahan
bd8d9c7482 Bug 898444. Wrap nsDisplayScrollLayer only around the scrolled content. r=tn
--HG--
extra : rebase_source : 828c5e4a33a26d958117357b439955cfb8dee1dd
2013-10-01 22:29:24 -04:00
Ehsan Akhgari
2fb9794854 Bug 921753 - Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h; r=roc
This patch reduces the number of files that transitively #include
gfx/2d.h from 1782 to 1582.
2013-10-01 17:00:38 -04:00
Masayuki Nakano
96af2de548 Bug 920377 part.11 Get rid of nsScrollPortEvent r=roc 2013-09-27 15:20:56 +09:00
Masayuki Nakano
0d1e72a8e7 Bug 920377 part.10 Get rid of nsScrollAreaEvent r=roc 2013-09-27 15:20:56 +09:00
Masayuki Nakano
ad647cc182 Bug 912956 part.17 mozilla/ContentEvents.h should be included directly r=roc 2013-09-25 20:21:20 +09:00
Daniel Holbert
c191b38ac7 Bug 919871: Make .cpp files in layout/generic #include their corresponding .h file first. r=mats 2013-09-24 18:43:43 -07:00
Timothy Nikkel
116e1aca5d Bug 915526. Take into account display port and scroll port clamping in image visibility. r=roc f=kats 2013-09-15 13:51:35 -05:00
Timothy Nikkel
83defa774d Bug 847223. Part 4. Tweak the ExpandRect function to not expand in a direction that we cannot scroll. r=mats 2013-09-14 19:05:04 -05:00
Timothy Nikkel
929a7df9cb Bug 847223. Part 3. Factor out the expand the scrollport code so we can use it on individual images later. r=mats 2013-09-14 19:05:04 -05:00
Scott Johnson
0aef9cf06c Bug 794693, part 1: Refactor nsHTMLReflowState constructor to allow initialization to be done by caller. [r=dbaron] 2013-09-09 15:29:05 -05:00
Corey Ford
b3400abc97 Bug 886646 - Part 6: Implement sticky positioning, calculated on reflow and scroll. r=dbaron, r=dholbert 2013-09-06 09:35:16 -04:00
Masayuki Nakano
2876cef75a Bug 910978 part.2 Remove nsScrollbarEvent because its member is never used r=smaug+roc 2013-09-03 20:45:28 +09:00
Ehsan Akhgari
4ff8f0416e Bug 908724 - Avoid #including nsPresContext.h in nsIScrollableFrame.h; r=mats
nsPresContext.h pulls in a large number of headers which should not
be needed in nsIScrollableFrame, if we just move ScrollbarStyles to
its own header
2013-08-23 16:20:07 -04:00
Ehsan Akhgari
80d135155d Bug 907883 - Minimize #includes in layout/generic; r=roc
--HG--
extra : rebase_source : 5e87b764a12b05aff477c71547e2131be67ca93b
2013-08-22 14:32:52 -04:00
Ehsan Akhgari
5fa9157954 Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
Mats Palmgren
13760051a7 Bug 883568 - Call UpdateOverflow() in the scroll frame base class to actually update the overflow areas. r=roc 2013-08-10 16:55:29 +00:00
Mats Palmgren
cd070d65f1 Bug 898871 - Add more nsWeakFrame checks around scroll operations. r=roc 2013-08-08 22:04:59 +00:00
Mats Palmgren
61af25d2ee Bug 898871 - Add an assertion that the pres shell was not deleted by some script runner, which should not happen here since the caller must hold a strong ref before starting the scroll operation. r=roc 2013-08-08 22:04:59 +00:00
Stephen Pohl
a198ffc2ab Bug 877097: Hold strong refs to instances of ScrollbarActivity to avoid crashing. r=mats 2013-07-31 21:43:56 -04:00
Ehsan Akhgari
9854ac6166 Bug 872127 - Part 2: Replace mozilla/StandardInteger.h with stdint.h; r=Waldo,ted 2013-07-30 10:25:31 -04:00
Robert O'Callahan
b4b3da2365 Bug 885009. Handle clip-all-descendants cases with rounded corners. r=mats
--HG--
extra : rebase_source : 284587e5fa70532bc6435f987f03c1282edc9cb8
2013-07-26 13:36:05 +12:00
Stephen Pohl
d8a27a209b Bug 896443: Fix the z-ordering of overlay scrollbars to make them appear on top of content with z-index > 0. r=roc 2013-07-25 21:31:35 -04:00
Stephen Pohl
213ea873be Bug 877857: Make hovered overlay scrollbars appear on top of non-hovered ones. r=roc 2013-07-23 00:21:55 -04:00
Robert O'Callahan
3bf479558f Bug 870941. Make scrollframes put scrollbars etc above content in z-order if they're disappering scrollbars. r=mattwoodrow 2013-07-18 10:10:13 -04:00
Stephen Pohl
160820c8f3 Bug 868498: Enable switching between overlay and regular scrollbars without browser restart on Mac OSX. r=roc 2013-07-16 08:58:44 -04:00
Stephen Pohl
6fdf0a7164 Bug 890897 - Don't show overlay scrollbars when we don't end up scrolling the page because we're already at an acceptable place. r=roc 2013-07-16 00:51:21 -04:00
Ryan VanderMeulen
aaee3cf638 Merge m-c to inbound. 2013-07-10 09:45:16 -04:00
Ms2ger
5db9476062 Bug 890821 - Make nsIScrollableFrame::GetScrollPositionCSSPixels return CSSIntPoint; r=roc 2013-07-10 11:58:13 +02:00
Benoit Girard
123c3a85d6 Bug 890279 - Create ScrollInfoLayers for frames we want APZC support. r=kats 2013-07-02 11:16:05 -04:00
Ms2ger
9a38df8e56 Bug 888321 - Pass CSSIntPoint to ScrollToCSSPixels; f=kats r=roc 2013-07-01 09:14:36 +02:00
Robert O'Callahan
8b77b266e2 Bug 875060. Make display:-moz-stack/-moz-inline-stack elements which are overflow:hidden clip all their descendants, including those for which it is not the containing block. r=mats 2013-06-17 17:16:27 +12:00
Karl Tomlinson
1ce654b834 b=810274 allow smooth scroll step to nearest pixel boundary short of desired position r=roc
--HG--
extra : transplant_source : %07%FC%14%84%D6%80%BD%5C%ECe%05%0D%8F%B3%0E%8F%7B%F8%90%1E
2013-06-10 12:37:16 +12:00
Karl Tomlinson
de4783e514 b=810274 include bounds with layer pixels as possible destinations to minimize subpixel scrolls r=roc
--HG--
extra : transplant_source : %3BkY-X%D0%60lwm%C5XN%BEo%CA%AF%0E%10%08
2013-06-10 12:37:16 +12:00
Karl Tomlinson
67fd03b080 backout f4add9815dd1 and db258cb900a7 because gcc 4.4 builds don't use -std=gnu++0x for decltype b=810274 2013-06-06 18:03:21 +12:00
Karl Tomlinson
4745c650c4 b=810274 allow smooth scroll step to nearest pixel boundary short of desired position r=roc
--HG--
extra : transplant_source : %CF%FE%015%5E%E6R%F0W%EB%1EoW%A5%3B%04%D9%F4C%0A
2013-06-06 15:49:23 +12:00
Karl Tomlinson
50bbd1b1db b=810274 include bounds with layer pixels as possible destinations to minimize subpixel scrolls r=roc
--HG--
extra : transplant_source : %22c%20R%E6%BF%C6%10%02%7C%1E%9F%CA%C7%2B%8C%98A%28%D3
2013-06-06 15:49:10 +12:00
Karl Tomlinson
80c7229552 b=810274 ensure scrolled range is non-negative even in the presence of nscoord overflow r=roc
Instead of trying to detect all integer overflow at the source, this merely
keeps the sizes non-negative.  That may not mean they are less than
nscoord_MAX.

If we give in and accept that integer arithmetic may result in the scrolled
rect being smaller than the scroll port, then we shouldn't assert.

--HG--
extra : transplant_source : RP%15%84zx%B9%E8%2C%1E%0A%AB%82%F4%9C%A2y%AD5%27
2013-06-06 15:47:39 +12:00
Kartikaya Gupta
99a4283e34 Bug 877726 - Convert FrameMetrics.mScrollOffset to be a CSSPoint. r=kentuckyfriedtakahe 2013-05-30 21:30:13 -04:00
André Reinald
fe9b343359 Bug 873012 - In case we use overlay scrollbars, and we run on system 10.8 or later, make them overlap in the bottom right corner, r=smichaud
--HG--
extra : rebase_source : 300f78c1230a6f91a102c032b026b1fe2455f634
2013-05-23 14:14:00 -07:00
Stephen Pohl
0cf8e74945 Bug 869314: Fix missing dropmarkers in non-native styled combobox controls when overlay scrollbars are used. r=roc 2013-05-26 15:05:10 -07:00
Stephen Pohl
2acc2dfcba Back out bug 869314 for missing r='s. 2013-05-26 15:00:17 -07:00
Stephen Pohl
e41e125889 Bug 869314: Fix missing dropmarkers in non-native styled combobox controls when overlay scrollbars are used. 2013-05-26 14:40:16 -07:00
Mats Palmgren
a754350c56 Bug 873926 - Don't store a scroll state if we never have been scrolled or restored a previous scroll state. r=roc 2013-05-22 12:49:49 +00:00
Ryan VanderMeulen
26a69bd344 Backed out changesets 619cdf937af1 and 381492b19e3f (bug 869314) for Windows mochitest failures.
CLOSED TREE
2013-05-21 10:13:25 -04:00
Stephen Pohl
79f83908c9 Bug 869314 - Fix missing dropmarkers in non-native styled combobox controls when overlay scrollbars are used. r=roc 2013-05-21 08:27:14 -04:00
Stephen Pohl
c997f428ce Bug 636564 - Implement lion style scrollbars on Mac OSX 10.7+; r=roc 2013-05-02 10:58:00 -04:00
Ryan VanderMeulen
954cd4dfaa Backed out changeset 1840b15583fd (bug 636564) for bustage.
CLOSED TREE
2013-05-02 08:33:54 -04:00
Stephen Pohl
e474e01d79 Bug 636564 - Implement Lion style scrollbars on Mac OSX 10.7+. r=roc 2013-05-02 07:52:25 -04:00
Masatoshi Kimura
761bf787f0 Bug 859018 - Remove the MSVC exemption for FAIL_ON_WARNINGS in layout. r=dbaron 2013-04-28 19:02:35 +09:00
Robert O'Callahan
2817c39fd2 Bug 862180. Part 2: Rename nsDisplayItem::GetUnderlyingFrame() to Frame(). r=mattwoodrow 2013-04-20 00:02:13 +12:00
Karl Tomlinson
7e5e231a8e b=767710 don't let additional events with the same destination restart smooth scrolling r=mstange
--HG--
extra : transplant_source : _%BA%CE%F1A%B7%40N%14VMZ%1D%2C%98Lg%40%F7%AF
2013-04-18 12:05:10 +12:00
Karl Tomlinson
04b8f16444 b=767710 refactor AsyncScroll duration API so duration can be evaluated before resetting r=roc
--HG--
extra : transplant_source : %17Wc%17%5B%CF%A9n%C6%0BE%3Ez%21%CD%C6Q%20%10%26
2013-04-18 12:03:51 +12:00
Karl Tomlinson
5f78a0dc29 b=767710 move current motion calculation into InitSmoothScroll() r=roc
--HG--
extra : transplant_source : %E2%DCQu%13RdE%E9%3A%B3%B5L%21%8A3%3C%5D4%3F
2013-04-18 12:03:29 +12:00
Joshua Cranmer
c7aade5e1f Bug 856108 - Port static analyses to clang, part 2e: use MOZ_STACK_CLASS in layout. r=mats 2013-04-11 22:20:45 -05:00
Robert O'Callahan
53c5c3d2c4 Bug 851445. When saving a frame scroll position, if we're in the process of trying to scroll to a saved scroll position, save the desired position instead of the actual current position. r=mats
--HG--
extra : rebase_source : 4aa4110d32db5f26192c0e4b6fa3185d1ed2c073
2013-03-21 15:44:37 +13:00
Robert O'Callahan
68e0be54fa Bug 841192. Part 15: Move DisplayListClipState clipping methods to AutoSaveRestore and AutoClipMultiple helper classes for safer usage. r=mattwoodrow
--HG--
extra : rebase_source : aa674d4fa93f1b7c2b4dd84ba8d888cc9f289265
2013-04-05 00:36:45 +13:00
Robert O'Callahan
7cbe6380ff Bug 841192. Part 14: Convert all usage of nsDisplayClip(RoundedRect) to use DisplayListClipState/DisplayItemClip. r=mattwoodrow
This patch does several things. Sorry.

In BuildDisplayList implementations, instead of wrapping display items in nsDisplayClip, we
push clip state onto the nsDisplayListBuilder and give the display items an
explicit clip when they're created.

In FrameLayerBuilder, we use the explicit clips we find on display items instead of
computing our own.

We remove nsDisplayClip and everything that depends on it.

We remove ExplodeAnonymousChildLists. With nsDisplayClip gone, and
nsDisplayOptionEventGrabber removed in a previous patch, there are no
anonymous child lists.

nsDisplayItem::TryMerge implementations need to make sure they have the same
clip before being merged.

I ripped out the part of PruneDisplayListForExtraPage that adjusts clip rects.
As far as I can tell, it isn't actually necessary.

--HG--
extra : rebase_source : 6f3988b385d0ac54ab26fad10b12173884441f48
2013-03-04 22:56:02 +13:00
Robert O'Callahan
18e132b4d8 Backout bug 851445 for test failure
--HG--
extra : rebase_source : 3314e6679f15134324d5de09334be14e17aa0790
2013-04-02 18:24:25 +13:00
Robert O'Callahan
34614bb0db Bug 851445. When saving a frame scroll position, if we're in the process of trying to scroll to a saved scroll position, save the desired position instead of the actual current position. r=mats 2013-03-21 15:44:37 +13:00
Mats Palmgren
d6de14ba46 Bug 842166 - Block scripts during nsGfxScrollFrameInner::ReflowFinished(). r=ehsan 2013-03-23 00:08:59 +01:00
Mats Palmgren
c40385817c Bug 849219 - Store the scroll state also when the position is 0,0 to avoid scrolling to an #ID on reload. r=roc 2013-03-15 23:32:35 +01:00
Daniel Holbert
1859a93138 Bug 843719: Reorder params in Margin constructors and SizeTo() methods to match CSS's top,right,bottom,left ordering. r=seth 2013-03-06 00:05:55 -08:00
Daniel Holbert
fcdc481895 (no bug) Fix some whitespace issues in nsGfxScrollFrame.cpp. (whitespace only, DONTBUILD) 2013-03-04 12:57:01 -08:00
Timothy Nikkel
d695637b6c Bug 689623. Part 5. Add mechanism to update image visibility upon some amount of scrolling. r=mats 2013-02-24 18:59:21 -06:00
Karl Tomlinson
ee142b7297 b=842468 use scrollbar pref thickness instead of min for resizer size r=roc 2013-02-20 11:03:48 +13:00
Matt Brubeck
78780585a0 Back out dd103ec4c44b through fba3a342a530 because of B2G test failures on a CLOSED TREE
--HG--
rename : toolkit/system/gnome/nsSystemAlertsService.cpp => toolkit/system/gnome/nsAlertsService.cpp
rename : toolkit/system/gnome/nsSystemAlertsService.h => toolkit/system/gnome/nsAlertsService.h
2013-02-19 17:06:18 -08:00
Karl Tomlinson
e576081726 b=842468 use scrollbar pref thickness instead of min for resizer size r=roc
--HG--
extra : rebase_source : e635ec1870663f459b7e9215dc2b8bc009dec1c0
2013-02-20 11:03:48 +13:00
Jonathan Kew
4a6209493f bug 842514 - consistently use signed types for appUnitsPerDevPixel variables. r=roc 2013-02-19 21:46:27 +00:00
L. David Baron
822b2ca3bc Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
Robert O'Callahan
d9665619b9 Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : de498510bf8d85d9b0b2fab0137ef3be01c9adfa
2013-02-15 00:12:27 +13:00
Robert O'Callahan
59dfd955a1 Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : 50a3d6809ef76a25a3d02d91f2873d9ba11fdc56
2013-02-15 00:08:08 +13:00
Ed Morley
3288d5e24a Backed out changeset 2c860c4bb820 (bug 840902) on a CLOSED TREE 2013-02-15 09:05:36 +00:00
Ed Morley
7054010458 Backed out changeset 6c21598704ac (bug 840902) 2013-02-15 09:05:07 +00:00
Robert O'Callahan
34c090a860 Bug 840902. Part 2: Remove nsresults from various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : ce01b066f803e048c0e38e5316ce96a75e689418
2013-02-15 00:12:27 +13:00
Robert O'Callahan
e5e7f8c6aa Bug 840902. Part 1: Stop checking the results of various display list methods. r=mattwoodrow
--HG--
extra : rebase_source : b7db21120cdd96342502db64916b0b2e75c0a9c3
2013-02-15 00:08:08 +13:00
Timothy Nikkel
b4d7b6c076 Bug 830479. Fix fatal build warning about unsigned/signed comparison on CLOSED TREE. r=me 2013-02-14 11:57:50 -06:00
Timothy Nikkel
9c34c4933d Bug 830479. Account for multiple fixed elements acting as headers and footers when doing full page scrolling. r=roc 2013-02-13 22:36:02 -06:00