Commit Graph

377 Commits

Author SHA1 Message Date
Robert O'Callahan
eea69229e3 Bug 810470. Part 3: Remove code for invalidating background-attachment:fixed content when scrolling. r=mattwoodrow
New invalidation logic takes care of this automatically.

--HG--
extra : rebase_source : f598635e58390ef868a057e8ea8ab0cf2410b8a9
2012-11-09 18:14:14 -05:00
Matt Woodrow
ad06108ba9 Bug 811570 - Make the root content scroll frame inactive initially if it is overflow hidden. r=roc 2012-11-13 22:26:33 -08:00
Robert O'Callahan
45f55abd96 Bug 805331. Part 1: Refactor nsDisplayList::GetList
Renames GetList to GetSameCoordinateSystemChildren, and adds an assertion
to verify that the children have the same reference frame as the parent.
Adds nsDisplayList::GetChildren to return whatever children there are.
Obsoletes nsDisplayTransform::GetStoredList.
2012-11-03 01:59:03 +13:00
Mats Palmgren
01cc61dab4 Bug 806056 - Make nsContainerFrame destroy abs/fixed pos. child frames unless a derived class already did so. Assert that there are no abs/fixed pos. child frames in nsFrame::DestroyFrom(). r=roc 2012-11-02 01:52:59 +01:00
Mats Palmgren
7bafc7a356 Bug 804486 - s/fontHeight/increment/ to make some code less confusing. r=roc 2012-10-29 06:44:31 +01:00
Mats Palmgren
8ad31a0bc8 Bug 804486 - Add toolkit.scrollbox.horizontalScrollDistance pref, default 5. Change horizontal scroll increment from 10px to horizontalScrollDistance * GetLineScrollAmount().width(). Make GetLineScrollAmount() use the font's AveCharWidth() for the horizontal amount rather than MaxHeight(). r=roc 2012-10-29 06:44:31 +01:00
Mats Palmgren
9b604ab906 Bug 804641 - Work around Android armv6 compiler bug (again). r=roc 2012-10-24 01:34:54 +02:00
Trevor Saunders
31db47e358 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Robert O'Callahan
8aec82ec43 Bug 626245. Part 4: Compute plugin widget geometry updates via the refresh driver's painting, and defer actual widget updates until we've just composited the window. r=mats
Updating plugin widget geometry every time we paint means we don't have to
explicitly request plugin geometry updates.
This patch stops us from flushing plugin geometry changes in
FlushPendingNotifications(Flush_Layout). There are too many Flush_Layouts and
flushing plugin geometry changes on them produces frequent
desynchronization of the plugin geometry with the rendered window contents.
There is some Web compatibility risk there --- it means we have to change
our tests, for one thing --- but hopefully it's OK.

--HG--
extra : rebase_source : 87adde45795ea2cab362ed9df54e62c5cc97e16c
2012-10-07 02:03:23 +13:00
David Zbarsky
d70685476e [Bug 799407] Fix build warnings in layout r=roc 2012-10-10 01:00:05 -04:00
Matt Woodrow
1d675c61d6 Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Ed Morley
5a3b322459 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Matt Woodrow
49d4c24594 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Robert O'Callahan
6b5d54dbcc Bug 791616. Part 1: Add nsIScrollableFrame::GetPerceivedScrollingDirections to consolidate logic for whether UI actions should be allowed to scroll in a given direction. r=mats 2012-09-24 16:30:33 +12:00
Robert O'Callahan
6d1e576d39 Back out bug 791616 due to test failure. 2012-09-24 21:55:16 +12:00
Robert O'Callahan
dd556aca29 Bug 791616. Part 1: Add nsIScrollableFrame::GetPerceivedScrollingDirections to consolidate logic for whether UI actions should be allowed to scroll in a given direction. r=mats
--HG--
extra : rebase_source : 470acc887036b633f43a30fb7dc6ca24ddc02dc6
2012-09-24 16:30:33 +12:00
Robert O'Callahan
cd1dc8d8c9 Bug 777194. Part 5: When choosing a subpixel position to scroll to, align the new position with the position that was most recently used to rerender the scrolled layer(s). r=tnikkel
If we always align the new scroll position with the previous scroll position, we can accumulate error and
gradually drift out of alignment with the layer pixels until we exceed the tolerance and are forced to
rerender everything.
2012-08-17 11:40:10 +12:00
Robert O'Callahan
f9cec72758 Bug 777194. Part 4: When a scrolled layer's visible region includes pixels that are outside the snapped clip rect, those pixels won't be valid after scrolling. r=mattwoodrow 2012-08-17 11:39:00 +12:00
Peter Van der Beken
d21c8a19b6 Fix for bug 788532 (Add the new DOM bindings API to DOM lists). r=bz.
--HG--
extra : rebase_source : 18e21a786b6a9cc2aeada52ba5ca3a2614cb596b
2012-09-05 22:49:53 +02:00
Robert O'Callahan
b3739ebb38 Bug 787089. Rip out mUpdatePluginGeometryForFrame optimization. It's not known to be a significant win, and creates problems when prescontext ancestor chains are broken; the complexity probably isn't worthwhile. Also, soon (or now) we can rework plugin bounds computation to be use the display list built for rendering. r=matspal
--HG--
extra : rebase_source : 0394fcb5111b8b96b5f8ce48e20d6e5503f9ccf7
2012-09-05 22:30:10 +12:00
Robert O'Callahan
9cdb4ee0d8 Bug 785588. Perform asynchronous scroll operations before firing requestAnimationFrame callbacks. r=tnikkel
--HG--
extra : rebase_source : 3c1439773981db4ea1b957db4351f50899229130
2012-09-05 22:29:15 +12:00
Randell Jesup
29ac5c0b8c Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
Masayuki Nakano
f0eaecb549 Bug 674477 Don't scroll around axis whose overflow is hidden by wheel events r=smaug 2012-08-30 10:05:16 +09:00
Ehsan Akhgari
8c296bbcd4 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Masayuki Nakano
278ebaf46b Bug 422132 part.1 Store unused fractional scroll amount for later wheel events r=smaug 2012-08-20 01:46:21 +09:00
Ed Morley
96e1689d08 Backout 41722f2e0c33 (bug 422132), 69da5f098237 (bug 782903), 5c601428c70b (bug 422132) for bug 782903 2012-08-18 23:29:13 +01:00
Daniel Holbert
4444c8b8b0 Bug 781869: Remove redundant "NS_FRAME_NO_MOVE_VIEW" bit in a few places where it's already implied from NS_FRAME_NO_MOVE_FRAME. r=dbaron 2012-08-17 12:04:06 -07:00
Masayuki Nakano
fd3f6f47bd Bug 422132 Store unused fractional scroll amount for later wheel events r=smaug 2012-08-15 09:52:07 +09:00
Aryeh Gregor
e2dd9c2028 Bug 626472 part 3 - Remove nsnull for good; r=ehsan 2012-08-12 13:43:47 +03:00
Timothy Nikkel
42175961f3 Bug 781086. Accidentally misplaced argument meant we were getting the min size instead of the pref size causing scroll bars to appear where they shouldn't. r=roc 2012-08-13 21:59:44 -05:00
Robert O'Callahan
962fbb550e Bug 780345. Use a heuristic to reduce the scroll-port height by the height of fixed-position headers and footers when scrolling the viewport vertically by pages. r=tnikkel
--HG--
extra : rebase_source : 0f6d4a64b2f3832deb2af1f9ae0d332db042e127
2012-08-09 23:17:40 +12:00
Robert O'Callahan
f982af7739 Bug 383026. Centralize code that converts DOM scroll offsets to/from layout scroll positions. r=dbaron
--HG--
extra : rebase_source : a6118e0eeea749a601e055741e35cdcd15d81e57
2012-08-10 23:17:06 +12:00
Ed Morley
a0952f287d Backout f67014b40e1e (bug 780345) for failures intest_page_scroll_with_fixed_pos.html 2012-08-09 13:17:52 +01:00
Ed Morley
6f3226343f Merge mozilla-central to mozilla-inbound 2012-08-09 12:51:21 +01:00
Ms2ger
331accfcb4 Bug 780387 - Part b: Stop using PRIntn; r=bsmedberg 2012-08-09 09:09:40 +02:00
Aryeh Gregor
5662d18449 Bug 780469 - Reduce unnecessary includes in some content/ header files; r=bz 2012-08-06 15:02:08 +03:00
Robert O'Callahan
fc54b01db1 Bug 780345. Use a heuristic to reduce the scroll-port height by the height of fixed-position headers and footers when scrolling the viewport vertically by pages. r=tnikkel 2012-08-09 23:17:40 +12:00
Robert O'Callahan
e88fd7de46 Bug 772679. RestrictToLayerPixels needs to accurately convert between appunits scroll offsets and ThebesLayer pixel coordinates. r=tnikkel
Change GetThebesLayerResolutionForFrame to GetThebesLayerScaleForFrame,
which just returns a scale. Ensure that the scale is as accurate as possible
even if dedicated layers for scrolled content (or any layers at all) have not
been created yet, by taking into account transforms that have not yet
generated layers. This makes the decisions made by
nsGfxScrollFrameInner::ScrollToImpl independent of whether there is
currently an active layer for the scrolled content (or much more nearly so).
In nsGfxScrollFrameInner::ScrollToImpl, do not use the current internal
fractional offset of the ThebesLayer, which is in a mostly unrelated
coordinate space to our scroll positions. Instead, just try to make sure
that the previous and next scroll position differ by a whole number of
layer pixels.
2012-08-05 00:26:38 +12:00
David Zbarsky
a8ba5502f2 [Bug 780439] Kill off the remains of nsIBox r=roc 2012-08-05 23:00:57 -04:00
Ed Morley
1d8d82865d Backout 6ea008b301da, 14d17919e235, b15fb3603bfe & f89ae41eed63 (bug 772679) for turning test_offsets.html perma-orange on native Android mochitest-7 2012-08-05 14:35:08 +01:00
Robert O'Callahan
078dd6ac15 Bug 772679. RestrictToLayerPixels needs to accurately convert between appunits scroll offsets and ThebesLayer pixel coordinates. r=tnikkel
Change GetThebesLayerResolutionForFrame to GetThebesLayerScaleForFrame,
which just returns a scale. Ensure that the scale is as accurate as possible
even if dedicated layers for scrolled content (or any layers at all) have not
been created yet, by taking into account transforms that have not yet
generated layers. This makes the decisions made by
nsGfxScrollFrameInner::ScrollToImpl independent of whether there is
currently an active layer for the scrolled content (or much more nearly so).
In nsGfxScrollFrameInner::ScrollToImpl, do not use the current internal
fractional offset of the ThebesLayer, which is in a mostly unrelated
coordinate space to our scroll positions. Instead, just try to make sure
that the previous and next scroll position differ by a whole number of
layer pixels.
2012-08-05 00:26:38 +12:00
Ms2ger
b549803df7 Back out bug 772679 for crashes. 2012-08-04 15:10:45 +02:00
Robert O'Callahan
a8cf24827e Bug 772679. RestrictToLayerPixels needs to accurately convert between appunits scroll offsets and ThebesLayer pixel coordinates. r=tnikkel
Change GetThebesLayerResolutionForFrame to GetThebesLayerScaleForFrame,
which just returns a scale. Ensure that the scale is as accurate as possible
even if dedicated layers for scrolled content (or any layers at all) have not
been created yet, by taking into account transforms that have not yet
generated layers. This makes the decisions made by
nsGfxScrollFrameInner::ScrollToImpl independent of whether there is
currently an active layer for the scrolled content (or much more nearly so).
In nsGfxScrollFrameInner::ScrollToImpl, do not use the current internal
fractional offset of the ThebesLayer, which is in a mostly unrelated
coordinate space to our scroll positions. Instead, just try to make sure
that the previous and next scroll position differ by a whole number of
layer pixels.
2012-08-05 00:26:38 +12:00
Vivien Nicolas
c31dd3196e Bug 778810 - Show/Hide scrollbars depending on activity. r=roc 2012-08-03 12:35:14 +02:00
Vivien Nicolas
e04b7a7d14 Bug 777672 - [b2g] |body { overflow: hidden }| do not hide scrollbars. r=roc 2012-08-03 12:35:14 +02:00
Markus Stange
a6c54611fe Bug 770453 - [b2g] Semi-transparent scroll bars should not occupy content-flow space. r=roc 2012-08-03 12:35:14 +02:00
Cameron McCormack
d63a0ddfaa Bug 655877 - Part 15: Don't treat SVG text frames as being positioned. r=roc 2012-08-02 21:38:50 +10:00
Aryeh Gregor
2e7996f8d1 Bug 777292 - Convert incorrect conversions to nsresult and fix named constants; r=ehsan 2012-07-27 16:59:29 +03:00
Aryeh Gregor
57c0ad57fb Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Ed Morley
d34eef5630 Backout 9ed259005de2 (bug 770453) for Android XUL R3 failures in scrollbars-0{1,2}.svg on a CLOSED TREE 2012-07-28 13:30:40 +01:00