Nicholas Cameron
b9c7de3bfd
Bug 755078 - Disable mask layers on Android. r=roc
2012-05-17 10:30:10 +12:00
Robert O'Callahan
91cae0fac8
Bug 754556. Ensure that setting scroll positions in CSS pixels doesn't unexpectedly move the scroll position, especially not in the wrong direction. r=matspal
...
If the current scroll position is fractional, e.g. y=N.4 CSS pixels, and something tries to read the
position in CSS pixels and scroll to that position (e.g. calling window.scrollTo(0, rootElem.scrollTop),
or equivalently window.scrollBy(0, 0)), it can actually end up scrolling backwards. So create a new
method nsIScrollableFrame::ScrollToCSSPixels which ensures that scrolling to a CSS pixel offset tries to
preserve the current fractional scroll position if that's possible, and if that's not possible at least does
not allow the scroll position to move in the wrong direction.
2012-05-15 17:58:09 +12:00
Robert O'Callahan
cc4c60522a
Bug 681192. Part 12: more fixes to remove unnecessary rounding to pixels. r=matspal
...
--HG--
extra : rebase_source : 39f2c0ef3220b3f0d4f6bc2564a86daa2112dc3b
2012-05-10 17:24:20 +12:00
Robert O'Callahan
28e494af4f
Bug 681192. Part 11: Don't snap scrollrange endpoints to device pixels anymore. r=matspal
...
--HG--
extra : rebase_source : a4ad5072fbb1a9e1e8d0fcf31268fee8812be41e
2012-05-10 17:24:20 +12:00
Robert O'Callahan
41b38a3c31
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
5120270d4b
Bug 681192. Part 2: Make nsIScrollableFrame::ScrollBy automatically set a generous allowed destination range. r=roc
...
--HG--
extra : rebase_source : 392359b325ca0435031e8f31a47154a82943c2b4
2012-02-07 12:20:57 -08:00
Oleg Romashin
14a398fcf0
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
Timothy Nikkel
6ffee527c4
Bug 749425. Push the scroll frame clip inside the scroll layer so it gets transformed by the shadow transform. r=roc
2012-05-08 23:15:00 -04:00
Ms2ger
de7c676373
Bug 716439 - Followup: remove unused variable 'sf'; r=roc
2012-05-05 11:00:06 +02:00
Nicholas Cameron
a387d019ba
Bug 716439; remove a check for rounded rects to enable the use of mask layers. r=roc
2012-02-08 11:26:46 +13:00
Avi Halachmi
968bd575ff
Bug 702463 - Smooth scrolling should use refresh observer instead of a timer. r=roc
2012-03-31 16:08:00 +03:00
Timothy Nikkel
5fce132cd1
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
59b12ae642
Backout 492d12fa8b65 (bug 732016) for regressions. a=regression
...
--HG--
extra : rebase_source : cda0401baa2c3e5f6192f76c1cd25eca8187a9a0
2012-04-23 11:13:33 -07:00
Timothy Nikkel
be2da87d6f
Bug 732016 Allow override of the scroll port size used for clamping scroll positions. r=roc
2012-04-19 20:54:54 -05:00
Wes Johnston
41d4502cda
Bug 745936 - Display port should not override dirtyRect during hit detection r=roc
2012-04-17 08:08:29 -04:00
L. David Baron
8c67e2ae8b
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
Mark Capella
1a44f1208f
Bug 740688 - Use uintptr_t instead of PRUword, and intptr_t instead of PRWord. r=jwalden
...
--HG--
extra : rebase_source : 648a581323d2c2893df780f71fe34dadcc4bbaab
2012-04-11 17:17:44 -07:00
Jared Wein
777fbc3a41
Backed out changeset 3b8a666e351e (bug 702463)
2012-04-03 16:50:25 -07:00
Avi Halachmi (:avih)
03341a5710
Bug 702463: Smooth scroll - Use refresh observer instead of a timer. r=roc
2012-03-31 16:08:00 +03:00
Jared Wein
9ea5fa75f8
Backed out changeset 4e515b6a5a41 (bug 702463)
2012-04-03 16:22:49 -07:00
Avi Halachmi (:avih)
ae12e0480f
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)
aebd5ca0c6
Bug 737758: part 3: Cleanups and semantic consistency [r=roc]
2012-03-26 11:53:45 +02:00
Avi Halachmi (:avih)
8a2de1a907
Bug 737758: part 1: Propagate mouse wheel event origin from ESM [r=roc]
2012-03-26 11:50:30 +02:00
Jonathan Watt
51053d52ea
Bug 379709 - Avoid reflowing SVG twice during page load due to initially assuming we'll need space for a vertical scrollbar when the nsSVGOuterSVGFrame can tell us we won't. r=bz.
2012-03-19 08:34:19 +00:00
Ali Juma
62fb2dc162
Bug 725095 - Address Layout review comments. r=mats
2012-03-13 12:57:31 -04:00
Benoit Girard
188ca471f6
Merge mc->Maple
2012-03-13 11:05:28 -04:00
Avi Halachmi
3c59129fb9
Bug 206438 - Smooth scrolling should use the 'smoothwheel' algorithm. r=roc ui-r=limi
2012-03-11 13:55:00 -07:00
Benoit Girard
6345ad9c43
Restore merge changeset 39a3044823b0, regression fixed upstream in mc
2012-03-05 13:09:05 -05:00
Benoit Girard
02e577f6ff
Backed out changeset 39a3044823b0 because of bad interaction with maple.
2012-03-02 18:32:46 -05:00
Benoit Girard
72da51e037
Merge mc->Maple, resolved conflicts
2012-03-02 14:27:05 -05:00
Doug Turner
63f2081ca1
Merge with mozilla-central
2012-02-24 11:57:27 -08:00
Doug Turner
476b362925
merge with mozilla-central:
2012-02-22 09:30:09 -08:00
Rob Campbell
eb749cad65
merge fx-team to m-c
2012-02-22 12:47:22 -04:00
Ali Juma
926f982ccc
Only try to scroll scrollable layers, and force Gecko to generate a scrollable layer even for smaller pages.
2012-02-20 11:30:05 -05:00
Chris Lord
cfb5872a5b
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
Chris Lord
93986b5c67
Backout scroll-clamp stuff again
...
I hope this makes it easier to merge and I'm not just wasting time...
2012-02-19 09:26:52 +00:00
Brad Lassey
34aa551009
merge from mozilla-central
2012-02-18 17:29:33 -05:00
Chris Lord
c436bcb3c1
Bug 726817 - Add nsIFrameLoaderOwner.clampScrollPosition. r=
...
Add an attribute to nsIFrameLoaderOwner that allows the clamping of set scroll
positions to be toggled.
2012-02-17 23:41:13 +00:00
Chris Lord
b7a97d4f18
Backout 87134:1c1c22bd0291 and 87135:a4af71f1bc1f
...
Realised I made a mistake with the nsIFrameLoaderOwner.clampScrollPosition
patch and I want this to go in as a single commit and not break building of
Maple.
2012-02-18 00:46:23 +00:00
Chris Lord
02fd6d6c24
Bug 726817 - Add nsIFrameLoaderOwner.clampScrollPosition. r=
...
Add an attribute to nsIFrameLoaderOwner that allows the clamping of set scroll
positions to be toggled.
--HG--
extra : rebase_source : db24645ff2fb04bb0ffa5ffb01a8d35a79274126
2012-02-17 23:41:13 +00:00
Alexander Surkov
b34485ff9f
Bug 677154 - fix a typo
2012-02-18 02:51:29 +09:00
Alexander Surkov
b79d3bc706
Bug 677154 - Detached document accessibility tree, r=bz, marcoz
2012-02-18 02:38:43 +09:00
Ed Morley
ef395cb269
Merge mozilla-central to mozilla-inbound
2012-02-23 01:03:16 +00:00
Mats Palmgren
4ac8d2dffb
Bug 726258 - Don't suppress the scrollbar because of a too small size in the scollbar minor direction. r=bz
2012-02-22 17:23:47 +01:00
Jared Wein
1c58f1711c
Bug 725700 - Keyboard arrow keys and scrollbar buttons should have consistent scrolling distances.
2012-02-20 11:24:36 -05:00
Patrick Walton
380bcbc803
Force the creation of an nsDisplayScrollLayer if a displayport was set on a scroll frame
2012-02-07 22:32:21 -08:00
Nathan Froyd
72e8d1d540
Bug 731615 - Eliminate duplicate headers in layout. rs=smontagu
2012-02-29 10:57:47 -05:00
Jared Wein
1c062f7770
Bug 710373 - Pressing the vertical slider down arrow should move three lines instead of one. r=roc
2012-01-31 12:04:35 +01:00
Mats Palmgren
530ea96a92
Bug 672944 - Setup overflow areas for the scrolled block frame in a XUL scroll frame for the benefit of text-overflow; Make the text-overflow code grok the extra wrapper frame in this case. r=roc
2012-01-28 04:35:59 +01:00
Chris Lord
5215455da7
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
L. David Baron
5eb8920348
Switch nsLayoutUtils inflation methods to the new setup with state on the pres context. (Bug 706609, patch 5) r=roc
...
This is the third of three patches to rework the way we handle getting
the font inflation container and width data during reflow, which are
needed so that we can sometimes honor inflation during intrinsic width
calculation (which we need to do to make some form controls inflate
correctly).
2012-01-24 17:21:29 -08:00
Timothy Nikkel
381f828353
Bug 675015. Wait until scrolling is complete to dispatch synthetic mouse moves. r=roc
2012-01-18 22:13:02 -06:00
Benjamin Stover
0a52de4032
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
9cc6cc3865
Bug 515530 - Remove nsHTMLContainerFrame. r=roc
2011-12-27 21:18:48 +01:00
Nicholas Nethercote
56767a7167
Bug 711908 - Fix a bunch of GCC warnings in layout. r=dbaron.
2011-12-19 19:46:39 -08:00
Robert O'Callahan
fb6541792a
Bug 697215. CanScrollWithBitBlit needs to return true for scrollframes inside replaced elements (i.e., iframes) that are honoring border-radius. r=mats
2011-12-20 14:31:20 +13:00
Markus Stange
105bef8583
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
f0e8959d30
Backed out changeset 4a81c89bb466 for bug 697215
2011-12-20 16:03:45 +13:00
Robert O'Callahan
4cc46e0f9f
Bug 697215. CanScrollWithBitBlit needs to return true for scrollframes inside replaced elements (i.e., iframes) that are honoring border-radius. r=mats
2011-12-20 14:31:20 +13:00
Robert O'Callahan
ad1cf4eefc
Backed out changeset 026ec6345ae3 for bug 697215
2011-12-18 23:01:43 +13:00
Robert O'Callahan
41261d0f5e
Bug 697215. CanScrollWithBitBlit needs to return true for scrollframes inside replaced elements (i.e., iframes) that are honoring border-radius. r=mats
2011-12-18 21:47:00 +13:00
Robert O'Callahan
854ef91454
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
8d2f605b6d
Bug 687972 - backing out changesets b17ab862bbc1 and a6db0c6c94a3 r=orange
2011-11-30 22:59:00 -05:00
Robert O'Callahan
a86c192475
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
L. David Baron
abb8d1c39a
Make other users of font metrics (other than MathML and XUL) honor font size inflation. (Bug 627842, patch 15) r=roc
...
This does not address users of font metrics in layout/mathml/ (for text
size and alignment issues) or in layout/xul (for text size and sizing of
listbox and tree widgets): see all the callers of GetFontMetricsFor*
in those directories.
2011-11-23 18:48:23 -08:00
Jonathan Watt
8a0b72332d
Bug 695303 - Add a mozilla::clamped function to replace NS_CLAMP (so side affects of args are evaluated no more than once) and NS_MIN(max, NS_MAX(val, min)) (to make code clearer). r=bsmedberg.
2011-10-28 19:33:28 +01:00
Robert O'Callahan
e285f8195b
Bug 696248. Flush pending onscroll events before painting. r=mats
2011-10-26 17:14:31 +13:00
Robert O'Callahan
ac9ee51054
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
Ehsan Akhgari
82c43f09d4
Bug 656130 - Part 1: Make sure that the absolute containing frame to be returned is actually marked as such in the frame tree; r=bzbarsky
2011-05-11 19:53:34 -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
Masayuki Nakano
d9869bfccf
Bug 669028 part.13 layout should use mozilla::LookAndFeel rather than nsILookAndFeel r=roc
2011-09-09 11:27:13 +09: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
Mats Palmgren
f06792a6ef
Bug 653649 - New way of getting child lists from frames. (part 3/5) r=roc
...
Update GetAdditionalChildListName consumers to use the new
child list iterator instead.
2011-08-24 22:54:29 +02:00
Matheus Kerschbaum
e7cc82ef30
Bug 568971 - Nuke nsIGlobalHistory3. r=mak sr=bz
2011-08-18 12:07:43 +02:00
L. David Baron
2c717f398d
Switch lots of callers to using nsLayoutUtils::GetFontMetricsForFrame and nsLayoutUtils::GetFontMetricsForStyleContext. (Bug 678671, patch 1) r=roc
...
This changes a number of callers that were previously bypassing the use
of the correct language (with either no language or the charset-detected
language on the pres context via nsPresContext::GetMetricsFor) and/or
the correct user font set to pass the correct values, which should
improve the correctness of the behavior of whatever they were using the
fonts for, and also reduce the number of unique sets of font metrics
requested (which helps nsFontCache effectiveness).
2011-08-14 10:08:04 -07:00
Robert O'Callahan
2c93649c0e
Bug 386444. Pass the correct current scroll position as the default value to GetCoordAttribute. r=dbaron
...
--HG--
extra : rebase_source : f0f11de318a050a1121669daaa5056089a5258b7
2011-08-12 10:44:29 +12:00
Michael Wu
2bee25de63
Bug 675561 - Calls to GetMetric should pass a pointer to PRInt32, not PRBool, r=roc
2011-08-01 18:20:52 -07:00
Neil Deakin
f6bd0911ea
Bug 670148, remove nsIScrollbarFrame, r=roc
2011-07-11 10:05:09 -04:00
Craig Topper
43c8429d0c
Bug 654369 - Part 9: Remove OOM checks from layout/generic r=bz
...
--HG--
extra : rebase_source : b828e73151ceb8cb59e1d8f7c0671dc88397057c
2011-04-28 22:02:16 -07:00
Ed Morley
af1d9c6c2b
Bug 661584 - Code cleanup, substitute more PR_(MAX|MIN|ABS|ROUNDUP) macro calls; r=roc,ted
2011-06-25 16:06:02 +02:00
Robert O'Callahan
a0cb0b9295
Bug 637852. Part 20: Allow fast scrolling within transformed content. r=tnikkel
...
This lets us easily test scrolling with non-identity resolution.
2011-06-23 00:11:28 +12:00
Benjamin Stover
608b301129
Bug 656041 Some parts of page scroll at different rates in Fennec r=roc
2011-06-14 09:20:29 -07:00
Jonas Sicking
5f95458332
Bug 659539 Part 1: Give nsINodeInfos a nodeType, nodeName and localName. r=bz
2011-06-14 00:56:49 -07:00
Masayuki Nakano
f96e0ef619
Bug 663041 layout should use mozilla::Preferences r=roc
2011-06-12 11:30:16 +09:00
Robert O'Callahan
e59d6c5b6a
Bug 646757. Don't construct useless nsDisplayOwnLayers. r=tnikkel
2011-05-31 11:12:06 +12: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
Benjamin Stover
1c80f2b928
Bug 640048 Crash fix: build nsDisplayScrollLayer with a non-null frame r=roc
2011-05-01 18:53:58 -07:00
Benjamin Stover
5eedd38c01
Bug 640048 Fix edge case for z-ordering for async scrollable elements r=roc
2011-05-01 18:53:01 -07:00
Mark Finkle
03e5a556ee
Backed out changeset c7f62d818af2. Causes content crashes Bug 653889
2011-04-30 00:01:29 -04:00
Benjamin Stover
95028ef26c
Bug 640048 Fix edge case for z-ordering for async scrollable elements r=roc
2011-04-29 10:15:44 -07:00
Zack Weinberg
668fa81e1d
Bug 651017, part 6: prune unused and unimplemented nsDeviceContext methods. Push some code down into nsFontCache.
...
--HG--
rename : gfx/src/nsThebesDeviceContext.cpp => gfx/src/nsDeviceContext.cpp
rename : gfx/src/nsThebesDeviceContext.h => gfx/src/nsDeviceContext.h
extra : rebase_source : 82489fb47226260871993f37d337439005250c29
2011-04-16 18:22:44 -07:00
Robert O'Callahan
c957ae039e
Bug 641426. Part 5: Avoid operator== where possible to distinguish between 'equal edges' and 'equal areas' for rectangles. r=dbaron,sr=cjones
2011-04-19 15:07:23 +12:00
Zack Weinberg
52c99aabb7
Bug 174055, part 6: eliminate pointless nsresult return values.
2011-04-07 21:18:43 -07:00
Zack Weinberg
624a6e3ce5
Bug 174055, part 5: prune unused and unimplemented methods.
2011-04-07 20:07:27 -07:00
Zack Weinberg
42ead75834
Bug 174055, part 4: mechanical fixups outside gfx.
2011-04-07 18:05:49 -07: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
Benjamin Stover
0b354a3d72
Bug 649666 Do not create container layers for scrollboxes with (0, 0) scrollRange r=roc
2011-04-13 10:45:00 -07:00
Benjamin Stover
3dc5b1f7a2
Bug 642246 Don't build ThebesLayers for elements with no displayports r=roc
2011-04-11 13:53:01 -07:00