Commit Graph

87 Commits

Author SHA1 Message Date
Robert O'Callahan
c03a4afc08 Bug 681192. Part 8: Use a generous allowed range when scrolling in CurPosAttributeChanged. r=matspal
There was a subtle reftest failure on Mac in RTL text-overflow tests.
I tracked it down to RTL overflow:auto areas being automatically scrolled by a subpixel amount.
This was because we try to set scrollbar "curpos" attributes to an integer number of CSS pixels representing
the scroll amount, relative to the top-left of GetScrolledRect, which is a noninteger number of CSS pixels
in this case. Then in ReflowFinished() we scroll to the saved curpos values plus the top-left of GetScrolledRect.
This patch fixes the problem by making CurPosAttributeChanged pass an allowed scroll range to
ScrollToWithOrigin. We allow any scroll destination that, when rounded to CSS pixels, would give the same
value as "curpos".
This fixes the bug, ensuring that ReflowFinished's call to CurPosAttributeChanged will not normally need
to scroll because the current position will be in the acceptable range. Also, it means that code that
scrolls by setting the "curpos" attribute will be optimized to try to hit a layer pixel boundary.

--HG--
extra : rebase_source : 3a768883feee4ff2b88fe3c729ea1058e911f2ea
2012-05-10 17:24:19 +12:00
Oleg Romashin
b98e2fe7f1 Bug 681192. Part 1: Add "allowed scroll destination range" to nsIScrollableFrame::ScrollTo and nsGfxScrollFrame implementation. r=roc,matspal
--HG--
extra : rebase_source : 51d04f7e7db35c02de3401a3481d4cc3827c19ec
2012-02-07 16:53:18 -08:00
Avi Halachmi
3ecca78724 Bug 702463 - Smooth scrolling should use refresh observer instead of a timer. r=roc 2012-03-31 16:08:00 +03:00
Timothy Nikkel
b9a7468478 Bug 732016 Allow override of the scroll port size used for clamping scroll positions. r=roc 2012-04-24 13:52:35 -05:00
Joe Drew
3019e4b61c Backout 492d12fa8b65 (bug 732016) for regressions. a=regression
--HG--
extra : rebase_source : cda0401baa2c3e5f6192f76c1cd25eca8187a9a0
2012-04-23 11:13:33 -07:00
Timothy Nikkel
e472248f52 Bug 732016 Allow override of the scroll port size used for clamping scroll positions. r=roc 2012-04-19 20:54:54 -05:00
L. David Baron
1984592c22 Add a font inflation data structure per block formatting context. (Bug 706193, patch 2) r=roc
This structure is per block formatting context because we have to make a
single inflation decision for things like consecutive runs of paragraphs
of text.  Inflating some paragraphs and not others (within the same
sequence of adjacent paragraphs) based on the amount of text in each one
would be disastrous.  Otherwise it's ideal for the units to be as small
as possible as long as they merge such sequences; therefore this uses a
definition corresponding to CSS's idea of elements that establish new
block formatting contexts.
2012-04-16 15:32:12 -07:00
Jared Wein
3e7213669a Backed out changeset 3b8a666e351e (bug 702463) 2012-04-03 16:50:25 -07:00
Avi Halachmi (:avih)
393c935eba Bug 702463: Smooth scroll - Use refresh observer instead of a timer. r=roc 2012-03-31 16:08:00 +03:00
Jared Wein
4ef699b55b Backed out changeset 4e515b6a5a41 (bug 702463) 2012-04-03 16:22:49 -07:00
Avi Halachmi (:avih)
22084dbd86 Bug 702463: Part 1 v8 - Smooth scroll - Use refresh observer instead of a timer 2012-03-31 16:08:00 +03:00
Avi Halachmi (:avih)
11eac7e423 Bug 737758: part 3: Cleanups and semantic consistency [r=roc] 2012-03-26 11:53:45 +02:00
Avi Halachmi (:avih)
d705a99716 Bug 737758: part 1: Propagate mouse wheel event origin from ESM [r=roc] 2012-03-26 11:50:30 +02:00
Avi Halachmi
569c1017ce Bug 206438 - Smooth scrolling should use the 'smoothwheel' algorithm. r=roc ui-r=limi 2012-03-11 13:55:00 -07:00
Chris Lord
37426c75dd Bug 726817 - Add nsIFrameLoaderOwner.clampScrollPosition. r=roc
Add an attribute to nsIFrameLoaderOwner that allows the clamping of set scroll
positions to be toggled.
2012-02-17 23:41:13 +00:00
Timothy Nikkel
26a00fb960 Bug 675015. Wait until scrolling is complete to dispatch synthetic mouse moves. r=roc 2012-01-18 22:13:02 -06:00
Benjamin Stover
a371dc7830 Bug 524925 - Recompute overflow without reflowing for transforms. part=1/6 r=dbaron
Add an extra change hint, UpdateOverflow, that can be used to specify that
a frame's overflow areas may have changed and that they need to be recalculated.
When a transform on a frame changes, instead of marking it for reflow, set this
hint instead.

There is an added virtual function on nsIFrame, UpdateOverflow, which is called
recursively on a frame when the corresponding hint is set, to allow it to
update its overflow areas.
2011-06-15 14:03:49 -07:00
Mats Palmgren
ecaac9ba30 Bug 515530 - Remove nsHTMLContainerFrame. r=roc 2011-12-27 21:18:48 +01:00
Markus Stange
d63e804d99 Bug 636564 - Make scroll frames deal correctly with scrollbars that overlay content. r=roc 2011-12-20 13:30:14 +01:00
Robert O'Callahan
2f15f228da Bug 699351. Add nsIFrameLoader::clipSubdocument API to allow XUL <iframe> and <browser> to not clip the subdocument. r=tnikkel,sr=bzbarsky 2011-12-06 01:38:46 +13:00
Brad Lassey
fb38b7fab8 Bug 687972 - backing out changesets b17ab862bbc1 and a6db0c6c94a3 r=orange 2011-11-30 22:59:00 -05:00
Robert O'Callahan
5549f1b115 Bug 699351. Add nsIFrameLoader::clipSubdocument API to allow XUL <iframe> and <browser> to not clip the subdocument. r=tnikkel,sr=bzbarsky 2011-11-30 21:14:26 -05:00
Robert O'Callahan
ae259582e2 Bug 681867. text-overflow only needs to affect the scrolling behavior of the block container with text-overflow. r=mats 2011-10-21 14:41:36 +13:00
Ehsan Akhgari
2a602a5685 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Michael Wu
d8e503c38b Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Mats Palmgren
6894179e71 Bug 653649 - New way of getting child lists from frames. (part 4/5) r=roc
Remove the nsIAtom* child list names and use child list ID enum instead.
2011-08-24 22:54:30 +02:00
Ed Morley
9e71e5b9ac Bug 614515 - Remove MOZ_SVG conditions. r=roc 2011-05-30 09:34:50 +02:00
Boris Zbarsky
447ee74d8c Bug 654989 part 1. Allow handing out both an nsIContent and an nsStyleContext from CreateAnonymousContent. r=roc 2011-05-06 16:04:44 -04:00
Jan Küchler
5ef6bf26cf Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Matheus Kerschbaum matjk7@gmail.com
83489c2891 Bug 639754 - Remove MOZ_IPC checks since IPC is always built now
--HG--
extra : rebase_source : bd8d7491d0fee17e0319ce130bd2988fefe82e93
2011-04-06 21:59:25 -07:00
L. David Baron
56e6f8182f Merge layout work from projects/birch, part 1. a=bsmedberg 2011-03-23 12:36:08 -07:00
L. David Baron
34bc1403fe Fix nsXULScrollFrame parameter names that are named incorrectly and fix inconsistencies between .h and .cpp. (Bug 636307) r=ehsan 2011-03-03 13:18:42 -08:00
Benjamin Stover
a646bb5913 Bug 618975 Followup: bitrot and remove mDisplayport from nsDisplayScrollLayer r=cjones r=tn a=blocking-fennec 2011-03-09 13:35:27 -08:00
Simon Montagu
8e5a76d4bc Set the position of the childRect in nsXULScrollFrame::LayoutScrollArea before calling Layout. Bug 632379, r=dbaron, a=blocker 2011-02-13 08:38:29 +02:00
Simon Montagu
e5ed17c7d6 Bug 508816 - layout patch 2011-02-07 09:59:20 +02:00
Neil Deakin
fee5806e2b Bug 489303, show resizer when statusbar is hidden, r=roc,gavin a=blocking 2011-01-17 09:35:32 -05:00
Robert O'Callahan
8050f8a959 Bug 602892. Part 2: Ensure that a scrollframe is 'inactive' if it can't be scrolled by blitting. r=tnikkel,a=blocking 2011-01-04 21:46:59 +13:00
Robert O'Callahan
62d193188e Bug 602892. Part 1: Refactor so that mScrollingActive is always true for scrollframes that are always active. r=tnikkel,a=blocking 2011-01-04 21:46:56 +13:00
Gavin Sharp
82f380c4da Back out 0ab0603bea99 (bug 489303) due to suspected Txul regression, a=backout 2010-12-25 14:55:35 -05:00
Neil Deakin
49b5659acf Bug 489303 - No resizer since the statusbar is gone, r=gavin+roc, a=b 2010-12-21 13:19:00 -08:00
Vivien Nicolas
12caa58a5e Bug 461843 - Show indication of where on the page you are when scrolling with Fennec. r=roc a=blocking-fennec 2010-10-21 14:07:55 +02:00
Alexander Surkov
8b53f409de Bug 604386 - Prune placeholder from text children, r=davidb, sr=bz, a=blocking 2010-10-16 00:34:35 +09:00
Timothy Nikkel
11a4caffee Bug 599113. Part 2. Remove unused parameter to nsGfxScrollFrameInner::ScrollVisual. r=roc 2010-10-14 20:03:45 -05:00
L. David Baron
86166b79e6 Reduce the border-radius of elements with overflow != visible so that any present scrollbars are not clipped. (Bug 459144, patch 8) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:35 -07:00
Robert O'Callahan
9d2392dcc8 Bug 564991. Part 22: Mark scrolled elements as inactive after a timeout. r=mats 2010-07-16 09:08:05 +12:00
Robert O'Callahan
fa8f373bc3 Bug 564991. Part 14: Scroll using the layer system. r=mats,sr=dbaron 2010-07-16 09:08:02 +12:00
Alexander Surkov
1b2bbba526 Bug 573706 - make frame based accessible creation more pellucid, r=davidb, sr=roc 2010-06-28 21:02:03 +09:00
Doug Turner
90356b7ac3 Bug 568612 - Remove GetURIGeckoFlags/SetURIGeckoFlags because they haven't been used since places landed. r=roc
--HG--
extra : rebase_source : 537a482cc6a4da3e39e55cc6aaa0df474308125b
2010-05-30 09:38:42 -07:00
Neil Deakin
79c932638a Bug 442228, support resizers in scrollable areas and enable them by default for textareas, r=roc,sr=dbaron 2010-03-19 07:49:34 -04:00
Alexander Surkov
be2b5e3966 Bug 534527 - Accessibility needs new DOM API part 2, r=smaug, sr=bz 2010-02-20 16:52:50 -08:00