Matt Woodrow
c4935c5621
Bug 811927 - Allow conversion of nsDisplayBackgroundImage into ImageLayers. r=roc
2012-11-19 16:28:18 +13:00
Robert O'Callahan
b69838cecd
Bug 810470. Part 8: Limit the BasicLayers background-caching optimization to cases where the destination context has an integer translation only, and snap the image rectangle. r=mattwoodrow
...
Previous patches in this bug enabled the nsDisplayCanvasBackground
background-caching optimization for the test 402807-1.html. That exposed
an existing bug where we don't snap the background image to pixel
boundaries when drawing through that path. This patch fixes it.
This patch also stops the IsSingleFixedPositionImage path from using
mDestRect, returning the rect as an out-parameter instead.
--HG--
extra : rebase_source : b7a496dfc7584dd8c73cddd0809fc5aa31992d53
2012-11-14 17:35:18 -08:00
Robert O'Callahan
7fc1422e17
Bug 810470. Part 7: Simplify TryOptimizeToImageLayer/IsSingleFixedPositionImage now that colors are not involved. r=mattwoodrow
...
--HG--
extra : rebase_source : 42177253b513be84e55a6ad2e9ba1db6a1f76eef
2012-11-10 00:42:10 -05:00
Robert O'Callahan
f4f4ec813d
Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow
...
--HG--
extra : rebase_source : c532ae41706db6c9d5488bc2b7901c3bf0f0fc25
2012-11-09 18:14:59 -05:00
Robert O'Callahan
54d9dcfd01
Bug 810470. Part 4: Make only background-attachment:fixed backgrounds that have propagated to the viewport use a dedicated layer, and refactor how we do that. r=mattwoodrow
...
--HG--
extra : rebase_source : f1085ce640e50617b687f9902edd83816512f786
2012-11-09 18:14:14 -05:00
Robert O'Callahan
65b20a64a3
Bug 810470. Part 2: Change nsDisplayBackground invalidation to store and compare the background positioning rect. r=mattwoodrow
...
--HG--
extra : rebase_source : c9141ba46d034fc496a3e9e33efce5b022bec41c
2012-11-08 10:05:32 -05:00
Robert O'Callahan
e039b9a03d
Bug 810470. Part 1: Cache nsStyleBackground pointer in nsDisplayBackground. r=mattwoodrow
...
--HG--
extra : rebase_source : a104cfa5d8c72e208866b56507c56174e14ef143
2012-11-07 23:08:40 -05:00
Matt Woodrow
31f5fe62a9
Bug 808491 - Force 3d transformed layers to always be active. r=roc
2012-11-13 22:26:29 -08:00
Bas Schouten
0e0da178a5
Bug 811173. Part 1: Allow nsDisplayBackgroundColor::GetBounds to enable snapping. r=roc
...
--HG--
extra : rebase_source : 4eb0dadaaf17d7c30a82454c98390fd5c01eb4ec
2012-11-13 11:57:59 -08:00
Matt Woodrow
0c5d51feb5
Bug 798964 - Add nsDisplayBackground color and make the bounds of nsDisplayBackground match the image. r=roc
2012-10-25 18:32:25 +13:00
Robert O'Callahan
11676b36b3
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
Matt Woodrow
e61d78e687
Bug 800041 - Make nsDisplayWrapList set its own reference frame correctly, and sanity check during ComputeVisibilityForSublist. r=roc
2012-10-25 18:32:25 +13:00
Phil Ringnalda
69b684d597
Back out c95958e3b85d and e8a8bf41e0c4 (bug 798964) for Android reftest-4 failures
2012-10-25 01:19:57 -07:00
Phil Ringnalda
c20613e7b1
Back out 8bffa268afd8 (bug 800041) for reftest assertions in 745934-1.html
2012-10-24 23:49:39 -07:00
Matt Woodrow
561c136845
Bug 800041 - Make nsDisplayWrapList set its own reference frame correctly, and sanity check during ComputeVisibilityForSublist. r=roc
2012-10-25 18:32:25 +13:00
Matt Woodrow
c2f1eb01a3
Bug 798964 - Add nsDisplayBackground color and make the bounds of nsDisplayBackground match the image. r=roc
2012-10-25 18:32:25 +13:00
Timothy Nikkel
ca1ed04511
Bug 642257. If there are no plugins in the display list skip a potentially expensive compute visibility pass with accurate visible regions to determine plugin geometry because it is not needed. r=roc
...
If there is a plugin in a background tab and a complex scene in a foreground tab the accurate visible regions can cause us to bog down, for no good reason.
2012-10-18 00:34:58 -05:00
Matt Woodrow
7c3fac5a5a
Bug 802321 - Don't compare geometry objects for inactive layers. r=roc
2012-10-17 21:00:00 +13:00
Matt Woodrow
8aef6bc9df
Bug 800198 - Make mContainerReferenceFrame the reference frame for the items inside the container, not the container itself. r=roc
2012-10-16 14:10:48 +13:00
Robert O'Callahan
d5a0e1a420
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
Matt Woodrow
20207825ed
Bug 800287 - Optimize display list processing. r=roc
2012-10-12 12:38:25 +13:00
Isaac Aggrey
481e7dfb0b
Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan
2012-09-28 01:57:33 -05:00
Matt Woodrow
17610240f2
Bug 781053 - Part 1 - Allow conversion of nsImageBoxFrame to an ImageLayer. r=roc
2012-09-25 08:29:14 +12:00
Matt Woodrow
daef8103fd
Bug 539356 - Add an option for frames to invalid just a rect instead of the frame bounds. r=roc
2012-08-29 17:48:45 +12:00
Matt Woodrow
5730a3f4b2
Bug 539356 - Part 9f - Compute the invalid area of the layer tree and pass this to the widget. r=roc
2012-08-29 17:47:18 +12:00
Matt Woodrow
c36e8e6c82
Bug 539356 - Part 9e - FrameLayerBuilder changes for display list invalidation. r=roc
...
* * *
imported patch move-by-correctly
2012-08-29 17:47:15 +12:00
Matt Woodrow
a67ae37664
Bug 539356 - Part 9a - Add new display list invalidation API to nsDisplayItem and implement it. r=roc
2012-08-29 17:39:01 +12:00
Ed Morley
aba3a8f5ef
Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE
2012-09-27 16:34:46 +01:00
Matt Woodrow
af81361caa
Bug 781053 - Part 1 - Allow conversion of nsImageBoxFrame to an ImageLayer. r=roc
2012-09-25 08:29:14 +12:00
Matt Woodrow
27184c37d8
Bug 539356 - Add an option for frames to invalid just a rect instead of the frame bounds. r=roc
2012-08-29 17:48:45 +12:00
Matt Woodrow
4d096475d2
Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt
2012-08-29 17:38:58 +12:00
Matt Woodrow
84cb2c3529
Bug 793132 - Make sure that only display lists get the reference frame adjusted transform. r=roc
2012-09-26 10:47:41 +12:00
Phil Ringnalda
8166187203
Back out 85d6cbd01d39, 56fc051c1932, a2ad17b87332 (bug 781053) for OS X debug assertions and crashes
...
--HG--
extra : rebase_source : ab24a2f8e9eddcf33ea39344abb7afbf400bf6e0
2012-09-24 21:23:05 -07:00
Matt Woodrow
636d5256a9
Bug 781053 - Part 1 - Allow conversion of nsImageBoxFrame to an ImageLayer. r=roc
2012-09-25 08:29:14 +12:00
Matt Woodrow
a7bfc8c75e
Bug 792314 - Make nsDisplayTransform support untransformed frames. r=roc
2012-09-20 11:14:07 +12:00
Matt Woodrow
464976376b
Bug 788044 - Make transformed frames the reference frame for their display list tree. r=roc
2012-09-16 22:32:59 +12:00
Matt Woodrow
d6a87a4ee6
Bug 788044 - Make various functions take const parameters. r=roc
2012-09-13 12:32:53 +12:00
Arnaud Sourioux
a84a1b22ad
Bug 733186: Annotate ~1000 methods with MOZ_OVERRIDE in /layout r=dholbert r=dbaron
2012-09-14 09:10:08 -07:00
Chris Lord
d4f38f7c0a
Bug 786502 - Fix background-attachment:fixed scrolling with page. r=roc
...
Fix the size check in nsDisplayBackground::ShouldFixToViewport so that async
scrolling of fixed backgrounds works correctly when zoomed in on Firefox
Mobile. Also make IsFixedItem in nsDisplayList public and use it in
FrameLayerBuilder, so that fixed items are determined and treated consistently.
2012-09-13 11:34:34 +01:00
Chris Lord
0f17d35c1d
Bug 786502 - Separate background layers into separate items. r=roc
...
Separate out background layers into separate display-list items, so that
backgrounds that are a mix of fixed and non-fixed layers will be treated
individually.
2012-09-13 11:34:23 +01:00
Chris Lord
6f2be640b7
Bug 786672 - Use the scrolled frame for nsDisplayScrollLayer when finding the active scrolled root. r=roc
...
The underlying frame of an nsDisplayScrollLayer can change and end up returning
different values when finding the active scrolled root. Instead of relying on
display-item ordering/merging, get the scrolled frame from the item (which was
already storing it).
2012-08-30 08:31:16 +01:00
David Zbarsky
18258768e4
Bug 785648 - Improve OMTA logging r=cjones
2012-08-25 21:27:28 -04:00
David Zbarsky
e992387408
Bug 784846 - The ShouldPrerender check for async animations is wrong r=mattwoodrow
2012-08-23 02:05:27 -04:00
Ehsan Akhgari
e368dc9c85
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
Nicolas Silva
75542595f3
Bug 782372 - Splits ImageLayers.h into ImageLayers.h ImageContainer.h and ImageTypes.h, r=bgirard
2012-08-19 15:33:25 -04:00
Aryeh Gregor
a88ffe5c80
Bug 626472 part 3 - Remove nsnull for good; r=ehsan
2012-08-12 13:43:47 +03:00
Matt Woodrow
2ebb996f8c
Bug 539356 - Part 8b - Move painting of retained layers to the view manager flush, and only composite on the paint event. r=roc
...
* * *
Fix Empty transactions with the new paint timing
2012-08-13 22:10:10 +12:00
Chris Lord
b2f8ecf01c
Bug 779269 - Implement a TryMerge method for nsDisplayFixedPosition. r=roc
...
Allow nsDisplayFixedPosition items that share the same fixed-pos frame to be
merged. This avoids a bug where the Google PDF viewer document image gets
re-rendered offset on the initial frame of a scroll when layer acceleration is
enabled.
2012-08-10 09:36:33 +01:00
Cameron McCormack
de6e2e472d
Bug 655877 - Part 32: Allow nsCharClipDisplayItems to be constructed without an nsDisplayListBuilder. r=roc
2012-08-08 21:37:14 +10:00
David Zbarsky
88efdd2ce1
Bug 768440 Part 2: Animate CSS Transitions on the compositor r=roc,dbaron
2012-07-31 10:28:22 -07:00
David Zbarsky
bf4f8d3c97
Bug 755084 Part 2: Perform CSS animations of transform and opacity on the compositor r=roc, dbaron
2012-07-31 10:28:21 -07:00
Mark Finkle
ecceaf8977
Backout 169ff207ed19, a34baed70c1b, f9ccdd490bd7, 39550ed860e6, 2194a2dd66b2, 908eb2e26843, a76e0a267f26 due to mobile viewport bustage (bug 778580)
2012-07-30 14:36:12 -04:00
Aryeh Gregor
d0ad5a7d0c
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
David Zbarsky
def7ad497f
Bug 768440 Part 2: Animate CSS Transitions on the compositor r=roc,dbaron
2012-07-27 13:23:45 -07:00
David Zbarsky
93b20c52d3
Bug 755084 Part 2: Perform CSS animations of transform and opacity on the compositor r=roc, dbaron
2012-07-27 13:23:44 -07:00
Matt Woodrow
22e66cf03d
Bug 777617 - Allow component alpha flattening of fixed position and zoomed display items. r=roc
2012-07-27 15:02:01 +12:00
Ed Morley
3ed23376d4
Backout 1244b8a8e57a (bug 755084), 32d16d0f87c9 (bug 706179), 8548e016d4a9 (bug 768440), 697f5b87eae9 (bug 768440), 808fc2bd4e8c (bug 755084), 54b1484cd125 (bug 755084), 876726b632c0 (bug 706179) for xul android R3 failures
2012-07-25 16:37:04 +01:00
David Zbarsky
ab1bc2614f
Bug 768440 Part 2: Animate CSS Transitions on the compositor r=roc,dbaron
2012-07-25 01:48:10 -07:00
David Zbarsky
630069520d
Bug 755084 Part 2: Perform CSS animations of transform and opacity on the compositor r=roc, dbaron
2012-07-25 01:48:09 -07:00
Chris Lord
f9fb18bba5
Bug 769541 - Fix display list creation for positioned descendants of fixed position frames. r=roc
...
Positioned descendants of positioned frames escape the child display list to
their parent's positioned descendants list when they don't have a z-index set.
This caused their invalidations to be logged against the incorrect layer.
To fix this, wrap each extra positioned descendant of a fixed-position frame
in its own nsDisplayFixedPosition so they receive their own layers.
2012-07-25 08:06:19 +01:00
Matt Brubeck
90029e0bf6
Back out f4f5189b1d0c, 3b4f0606c547, b8a5a1ab8a5f, 5078933d6954, 7e0260c45de9 (bug 768440, bug 755084, bug 706179) because of reftest failures
2012-07-23 20:25:51 -07:00
David Zbarsky
32e63c7164
Bug 768440 Part 2: Animate CSS Transitions on the compositor r=roc,dbaron
2012-07-23 17:34:49 -07:00
David Zbarsky
ffaa635014
Bug 755084 Part 2: Perform CSS animations of transform and opacity on the compositor r=roc, dbaron
2012-07-23 17:34:46 -07:00
Matt Woodrow
b489b85891
Bug 539356 - Part 28 - Cached nsDisplayBackground rasterizations with BasicLayers. r=roc
2012-07-23 15:00:36 +12:00
Matt Woodrow
1a5c93fd0e
Bug 741682 - Flatten component alpha layers into their parent layer with BasicLayers. r=roc
2012-07-23 15:00:36 +12:00
Daniel Holbert
a77d92bb74
Bug 776306: When prepending to a display list, only update its 'mTop' pointer if it was empty. r=roc
2012-07-21 22:06:58 -04:00
Jonathan Watt
c8b3589558
Bug 614732 - Implement display list based painting and hit-testing for SVG. r=roc.
...
--HG--
extra : rebase_source : 77e55885fbbf428008f5be787ddeb7e561c0d9bd
2012-07-20 14:12:29 -04:00
David Zbarsky
9a61d96c70
[Bug 774505] Don't include Layers.h everywhere r=cjones
2012-07-18 12:31:40 -04:00
Matt Woodrow
35ca0069c9
Bug 539356 - Part 7 - Store FrameLayerBuilder objects on the LayerManager instead of nsDisplayListBuilder. r=roc
2012-07-17 13:03:51 -04:00
Matt Woodrow
8f6b3ad35c
Bug 539356 - Part 5 - Change SVG effects painting to use a LayerManager transaction. r=roc
2012-07-17 13:03:51 -04:00
Rafael Ávila de Espíndola
ad9204e4f5
Bug 774031 - Remove extra ;. r=roc.
2012-07-15 00:16:47 -04:00
Chris Lord
be15aa7a6e
Bug 772079 - Fix ThebesLayerInvalidRegion being destroyed too soon. r=roc
...
A comment in ApplyThebesLayerInvalidation says that it preserves the content
of ThebesLayerInvalidRegion, in case there are multiple container layers for
the same frame. SetHasContainerLayer, however, immediately clears said property.
This was causing invalidations to be lost since Bug 758620 on fixed-position
elements, as they were being separated out onto their own layers but were still
merged in the root scroll layer. This is tracked in Bug 769541.
This fixes the problem by storing the new invalid region in DisplayItemDataEntry
and clearing/setting the ThebesLayerInvalidRegion property in the
UpdateDisplayItemData callback from FrameLayerBuilder::WillEndTransaction.
2012-07-14 08:49:05 +01:00
Ehsan Akhgari
0a629a3bf0
Backout changeset eea5704272d0 (bug 539356) because of performance and correctness regressions
2012-07-03 20:28:32 -04:00
Ehsan Akhgari
97259d4a95
Backout changeset 60affaedccc3 (bug 539356) because of performance and correctness regressions
2012-07-03 20:26:55 -04:00
Ehsan Akhgari
94344ff460
Backout changeset bd0a91621ea9 (bug 539356) because of performance and correctness regressions
2012-07-03 20:25:57 -04:00
Ehsan Akhgari
cf18ee9122
Backout changeset f568fc280fb0 (bug 539356) because of performance and correctness regressions
2012-07-03 20:24:55 -04:00
Ehsan Akhgari
12c6e3a4cf
Backout changeset 65410094add4 (bug 539356) because of performance and correctness regressions
2012-07-03 20:19:18 -04:00
Ehsan Akhgari
8538d26c24
Backout changeset 6234134d4430 (bug 539356) because of performance and correctness regressions
2012-07-03 20:08:19 -04:00
Matt Woodrow
847a97d95f
Bug 539356 - Part 28 - Cached nsDisplayBackground rasterizations with BasicLayers. r=roc
2012-06-30 15:06:14 +12:00
Matt Woodrow
f4ee9e6284
Bug 741682 - Disable component alpha layers with BasicLayers. r=roc
2012-06-30 15:06:12 +12:00
Matt Woodrow
31125260ee
Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt
2012-06-30 15:06:11 +12:00
Matt Woodrow
46e6f3d27b
Bug 539356 - Part 8b - Move painting of retained layers to the view manager flush, and only composite on the paint event. r=roc
2012-06-30 15:06:10 +12:00
Matt Woodrow
c238df59ea
Bug 539356 - Part 7 - Store FrameLayerBuilder objects on the LayerManager instead of nsDisplayListBuilder. r=roc
2012-06-30 15:06:10 +12:00
Matt Woodrow
831f8a3e50
Bug 539356 - Part 5 - Change SVG effects painting to use a LayerManager transaction. r=roc
2012-06-30 15:06:10 +12:00
Chris Lord
737f39fdfa
Bug 758620 - Force fixed-position frames to have their own layers. r=roc
...
Introduce a new display-list item 'nsDisplayFixedPosition' that represents
fixed-position elements. This item cannot be merged, which forces fixed
position elements to have their own layer, and has a BuildLayer implementation
that sets the necessary metadata on a Layer to be able to maintain its
position correctly during composition when asynchronously panning and zooming.
2012-06-27 16:43:57 +01:00
Ed Morley
46f74afdf1
Backout de70e79ced32, ddd519d0767e, 9b952d924953 & 03efce585669 (bug 758620) for reftest failures
2012-06-26 16:13:33 +01:00
Chris Lord
d68b636b06
Bug 758620 - Force fixed-position frames to have their own layers. r=roc
...
Introduce a new display-list item 'nsDisplayFixedPosition' that represents
fixed-position elements. This item cannot be merged, which forces fixed
position elements to have their own layer, and has a BuildLayer implementation
that sets the necessary metadata on a Layer to be able to maintain its
position correctly during composition when asynchronously panning and zooming.
2012-06-26 14:43:11 +01:00
Kartikaya Gupta
3bd1fbeb89
Bug 763570 - Part 1 - Back out 18b206c111cd from bug 747493 as we have a better solution that also fixes other broken frameset behaviours. r=tnikkel
2012-06-15 17:49:46 -04:00
Ed Morley
865fc92be0
Backout 61fd66629c4f, 7c8121f8d3af & 2a2e9cf8fd41 (bug 539356), e31a5e6545d3 (bug 761884), 85fa80bd9792, a284ccb25b83, 2865904db9fc, 34e07b09c426, e9b3d41e0360, cef00ebcd6c8, f943b729ac14 & 783f298401b6 (bug 539356), 330a086f1570 (bug 741682), d80219c8842c (bug 739671), e8c96b4fd4da, 313af486e68d, 0adc41ff56dc, 0cd288a38085, f1d43208825c, 4859876972f3, eec8ef3ebe48, f7f29fcd1845, 6079b229d306, f23c3a7e7ce0, 9824458a41e2 & 6748b5496059 (bug 539356) for mochitest-4 orange & talos regressions on multiple platforms
2012-06-11 10:08:32 +01:00
Matt Woodrow
3d5108eb76
Bug 741682 - Disable component alpha layers with BasicLayers. r=roc
2012-06-11 16:45:38 +12:00
Matt Woodrow
cee7c9d24b
Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt
...
* * *
Bug 539356 - Part 9a - Add new display list invalidation API to nsDisplayItem and implement it. r=roc
* * *
Bug 539356 - Part 9b - Add new frame invalidation API. r=roc
* * *
Bug 539356 - Part 9c - Remove old invalidation code. r=bz
* * *
Bug 539356 - Part 9d - Make SVG support the new invalidation model. r=jwatt
* * *
Bug 539356 - Part 9e - FrameLayerBuilder changes for display list invalidation. r=roc
* * *
Bug 539356 - Part 9f - Compute the invalid area of the layer tree and pass this to the widget. r=roc
* * *
Bug 539356 - Part 9g - Modify MozAfterPaint code to work with the new invalidation model. r=roc
2012-06-11 16:45:30 +12:00
Matt Woodrow
554b2e7419
Bug 539356 - Part 8b - Move painting of retained layers to the view manager flush, and only composite on the paint event. r=roc
2012-06-11 16:44:09 +12:00
Matt Woodrow
1ff0a4086c
Bug 539356 - Part 7 - Store FrameLayerBuilder objects on the LayerManager instead of nsDisplayListBuilder. r=roc
2012-06-11 16:44:08 +12:00
Matt Woodrow
6f54e66111
Bug 539356 - Part 5 - Change SVG effects painting to use a LayerManager transaction. r=roc
2012-06-11 16:44:08 +12:00
Timothy Nikkel
dff7715e01
Bug 747493. Give frameset documents a basic scroll layer so we can communicate the document's metrics to the compositor and frontend. r=roc,mats
2012-06-09 19:26:57 -05:00
Gervase Markham
82ff7027aa
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Jonathan Watt
f418b57d69
Bug 734082 - Compute and store bounds and visual overflow bounds for both SVG leaf and container frames. r=roc.
2012-05-17 05:05:09 +01:00
Matt Woodrow
15509fccd0
Bug 722603 - Improve dirty rect calculation with 3d transforms and preserve-3d. r=roc
2012-05-11 19:49:14 +12:00
Andreas Gal
a3df077a1a
Do background image scaling on the GPU. Part 2: Support turning simple background images into image layers (bug 750172, r=roc).
2012-05-03 13:13:12 -07:00
Andreas Gal
7db0b87ef1
Do image scaling on the GPU (bug 650988, r=roc,cjones).
2012-05-03 07:05:55 -07:00
Robert O'Callahan
1c1601b380
Bug 749075. Part 1: Refactor the nsDisplayItem API for testing whether the item needs to be rendered to a transparent surface. r=mattwoodrow
...
Currently we return an extra out parameter on GetOpaqueRegion. This is ugly and it's also going to be inefficient
because in a followup patch I'm going to avoid calls to GetOpaqueRegion, but we still need to know whether the item
needs a transparent surface. So this patch removes that out parameter. Instead, we rely on the fact that only
Windows' glass-window-background display item needs to force a transparent surface, and there can only be one
of those per window. So we store a reference to it in the nsDisplayListBuilder if there is one, and then we can
efficiently tell if any leaf display item is the one that forces a transparent surface. For display items that
wrap a list, we continue to store whether they need to force a transparent surface in a boolean in the list.
2012-05-03 16:29:05 +12:00
Robert O'Callahan
23f723d5cc
Bug 745934. Update bounds of nsDisplayOpacity after we've mutated its list. r=mattwoodrow,a=blocking-fennec
2012-04-19 14:40:43 +12:00
Ehsan Akhgari
483c294149
Backout changeset 0b25ccd32a49 (bug 745934) for reftest failures; a=bustage
2012-04-18 23:52:59 -04:00
Robert O'Callahan
ddeb57aca1
Bug 745934. Update bounds of nsDisplayOpacity after we've mutated its list. r=mattwoodrow,a=blocking-fennec
2012-04-19 14:40:43 +12:00
Robert O'Callahan
df01b1f9dc
Bug 735898. Part 6: Avoid nsIFrame::GetOffsetTo calls by caching a frame/offset pair in nsDisplayListBuilder, using the cache from nsDisplayListBuilder::ToReferenceFrame, and having BuildDisplayListForChild efficiently update the cached frame from parent to child when possible. Also, use display items' precalculated ToReferenceFrame() instead of calling nsDisplayListBuilder::ToReferenceFrame where possible. r=mattwoodrow,a=blocking-fennec
2012-04-18 17:14:14 +12:00
Robert O'Callahan
d4b553e307
Bug 735898. Part 5.9: Remove nsDisplaySVGEffects::mEffectsFrame since it's always the same as mFrame. r=mattwoodrow,a=blocking-fennec
2012-04-18 17:12:53 +12:00
Robert O'Callahan
8de539221c
Bug 728983. Part 1: Add nsDisplayItem::GetMergedFrames. r=mattwoodrow
2012-04-17 17:44:32 +12:00
Robert O'Callahan
bf5a330929
Bug 735898. Part 3: In DisplayBorderBackgroundOutline, when we have created an nsDisplayBackground item and it's themed, don't bother checking to create an nsDisplayBorder item. r=mattwoodrow
...
It turns out that calling HasBorder() is especially expensive for themed frames since we call into the theme engine to compute the border, so avoiding it is a nice win.
2012-04-13 23:44:06 +12:00
Robert O'Callahan
6e2327252f
Bug 735898. Part 1: Cache bounds (union of all child item bounds) in nsDisplayWrapList. r=mattwoodrow
2012-04-13 23:44:06 +12:00
Mark Capella
bb0cb90d39
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
Robert O'Callahan
4e3da44c46
Backing out changesets ef599d7f3f11, 70ef464f50e3 and 1a204c38918e (bug 735898) due to test failures.
2012-04-12 00:34:23 +12:00
Robert O'Callahan
5e8bcd0f82
Bug 735898. Part 3: In DisplayBorderBackgroundOutline, when we have created an nsDisplayBackground item and it's themed, don't bother checking to create an nsDisplayBorder item. r=mattwoodrow
...
It turns out that calling HasBorder() is especially expensive for themed frames since we call into the theme engine to compute the border, so avoiding it is a nice win.
2012-04-11 16:49:34 +12:00
Robert O'Callahan
6a6630c551
Bug 735898. Part 1: Cache bounds (union of all child item bounds) in nsDisplayWrapList. r=mattwoodrow
2012-04-11 16:48:47 +12:00
Robert O'Callahan
1595646b6a
Bug 735898. Part 0: Fix comment.
2012-04-11 16:48:37 +12:00
Robert O'Callahan
7c34e38876
Bug 733607. Restructure logic to compute snapped bounds of display items in layer coordinates. Moves responsibility for computing snapped bounds from within the display items to callers of GetBounds/GetOpaqueRegion. r=tnikkel
...
Previously we snapped the results of nsDisplayItem::GetBounds and
nsDisplayItem::GetOpaqueRegion internally. By tracking which display items were
inside transforms, we disabled snapping quite conservatively whenever an ancestor
had a transform, which is undesirable.
With this patch, we don't snap inside GetBounds or GetOpaqueRegion, but just return
a boolean flag indicating whether the item will draw with snapping or not. This flag
is conservative so that "true" means we will snap (if the graphics context has a transform
that allows snapping), but "false" means we might or might not snap (so it's always safe
to return false).
FrameLayerBuilder takes over responsibility for snapping item bounds. When it converts
display item bounds to layer pixel coordinates, it checks the snap flag returned from
the display item and checks whether the transform when we draw into the layer will be
a known scale (the ContainerParameters scale factors) plus integer translation. If both
are true, we snap the item bounds when converting to layer pixel coordinates. With
this approach, we can snap item bounds even when the items have ancestors with active
transforms.
2012-04-10 23:24:18 +12:00
Matt Woodrow
72f481f48f
Bug 700240 - Print display lists to a file. r=roc,bjacob
2012-03-01 21:26:09 +13:00
Jonathan Watt
571cebe9d0
Bug 727805 - Give aFactor in nsDisplayList.cpp a more meaningful name. r=mattwoodrow.
2012-02-17 06:08:33 +00:00
Matt Woodrow
bf96c795a0
Bug 722603 - Part 2: Use cached transform as much as possible (r=roc).
2012-02-14 01:12:49 -08:00
Mats Palmgren
498185f3f0
Bug 619273 - Move the selection state bit from frames to content nodes. r=smaug
2011-12-20 10:15:41 +01:00
Robert O'Callahan
763cffbfd2
Bug 702739. When a element has an active transform and the element's content (before being transformed) is no larger than the window, prerender its entire contents into layers when any of it is visible, so we don't have to rerender it and/or resize its layers as it moves into or out of view. r=mats
2011-12-19 10:57:35 +13:00
Matt Brubeck
f51deee1fa
Back out bug 710521, bug 672013, bug 702739 because of Mac reftest failures
2011-12-18 08:15:09 -08:00
Robert O'Callahan
7a9dc0adaf
Bug 702739. When a element has an active transform and the element's content (before being transformed) is no larger than the window, prerender its entire contents into layers when any of it is visible, so we don't have to rerender it and/or resize its layers as it moves into or out of view. r=mats
2011-12-18 21:46:44 +13:00
Matt Woodrow
7b48d2cb2b
Bug 700240 - Print nsSVGEffects types. r=roc
2011-11-17 16:44:16 +13:00
Matt Woodrow
76656ee23d
Bug 700240 - Make display list debugging independent of DEBUG. r=khuey,roc
2011-11-17 16:44:16 +13:00
Robert O'Callahan
a2c2c53e5c
Bug 681867. Part 2: remove nsDisplayForcePaintOnScroll. r=mats
2011-10-21 14:41:36 +13:00
Ehsan Akhgari
92064e6d3f
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
Matt Woodrow
bc0aec246e
Bug 684759 - Part 3b - Add event handling for sorted preserve-3d layers. r=roc
2011-10-07 10:24:02 +13:00
Matt Woodrow
6e3aac5fe5
Bug 684759 - Part 3a - Sort preserve-3d layers using their z depth at points where they intersect in 2d space. r=roc
2011-10-07 10:23:18 +13:00
Matt Woodrow
ae2391fce2
Bug 691106 - Merge sequential nsDisplayTransforms and give them unique frame keys. r=roc
2011-10-03 17:02:25 +13:00
Michael Wu
d2b70213ac
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
Jonathan Watt
3c8937dad1
Bug 664130 - Clarify some display list comments and code. r=roc.
2011-09-08 12:15:00 +01:00
Jonathan Watt
fedee44618
Bug 677198 - Remove some Windows line endings introduces by bug 505115. r=mattwoodrow.
2011-09-08 12:15:00 +01:00
Matt Woodrow
e9aa70c516
Bug 682922 - Disable preserve-3d on scroll frames. r=roc
2011-09-05 10:25:35 +12:00
Matt Woodrow
5a40560039
Bug 505115 - Part 14b - Layout support for -moz-transform-style. r=roc
2011-08-27 12:01:46 +12:00
Matt Woodrow
d71d3420c7
Bug 505115 - Part 5 - Use gfx3DMatrix in layout. r=roc
2011-07-23 10:28:51 +12:00
Matt Woodrow
5afc317166
Bug 505115 - Part 3 - Convert nsStyleTransformMatrix to be backed by a 4x4 matrix. r=dbaron
2011-07-23 10:28:07 +12:00
Mats Palmgren
e757474795
Bug 312156 - Implement CSS3 text-overflow. r=roc
2011-06-22 20:11:48 +02:00
Robert O'Callahan
723e5c86ee
Bug 637852: Part 5: Create ContainerParameters structure to carry resolution scale factors through layer creation. r=tnikkel
...
This patch shouldn't change any behavior. It just passes the ContainerParameters around, which will contain scale factors that should have been
applied when BuildLayer returns a ContainerLayer.
This patch also adds an aTransform parameter to BuildContainerLayerFor, which nsDisplayTransform uses to set the
transform for the ContainerLayer. This way BuildContainerLayerFor knows what the container's transform is going to be
before constructing the children, which in the next patch will let us construct the children with the right resolution.
2011-06-23 00:11:27 +12:00
Jonathan Watt
27ad18c773
Bug 664130 - Document what GetFrameBoundsForTransform is about. r=roc.
...
--HG--
extra : rebase_source : dd1843b385b0976bd318dff6cc7c59ef15970f32
2011-06-16 12:06:05 +01:00
Jonathan Watt
00a35b6a3c
Bug 664130 - Document what GetOpaqueRegion is useful for. r=roc.
...
--HG--
extra : rebase_source : abde1fd28975506a58068725e5cbb660620760f8
2011-06-16 12:06:05 +01:00
Tatiana Meshkova
2712ab6a70
Bug 653133 - Recover PRPackedBools order [r=roc]
2011-05-13 15:23:19 +03:00
Ed Morley
f13392fb42
Bug 614515 - Remove MOZ_SVG conditions. r=roc
2011-05-30 09:34:50 +02:00
Jonathan Watt
06594c58c1
Bug 614732 part 2 - Doc changes (clarify why nsDisplayTransform requires a bounds rect, and correctly associate nsStyleTransformMatrix's doxygen comment with it). r=roc.
2011-05-25 09:01:11 +01:00
Tatiana Meshkova
8148576e7f
Bug 656167 - Temporarily disable or back out fixed layers. Visibility part. r=roc
2011-05-13 16:21:59 +03:00
Jim Mathies
ada37f0740
Bug 633282 - Accumulate exclude glass regions during painting and update the widget opaque region info. r=roc.
2011-05-13 11:40:46 -05:00
Jim Mathies
d839661fc9
Bug 633282 - manual backout of 'fixup UpdatePossiblyTransparentRegion v.3' in bug 622328 due to merge conflicts. r=tn
2011-05-13 11:40:46 -05:00
Mounir Lamouri
137f2b751b
Merging cedar with mozilla-central.
2011-05-13 10:59:05 +02:00
Robert O'Callahan
e8bdea28a0
Bug 654641. Make nsDisplaySolidColor::GetBounds reflect any snapping that's going on. r=tnikkel
2011-05-13 02:59:09 +12:00
Tatiana Meshkova
3dd472d1eb
Bug 653133 - Fennec crashes when loading a page with huge background-attachment:fixed background r=roc
2011-05-09 11:40:09 +03:00
Benjamin Stover
1b6808fa69
Bug 640048 Fix edge case for z-ordering for async scrollable elements r=roc
2011-05-01 18:53:01 -07:00