Commit Graph

732 Commits

Author SHA1 Message Date
Markus Stange
ab50ec247d Bug 913443 - Recycle PaintedLayers as soon as possible. r=roc
This means layers are assigned bottom-to-top.
2015-03-04 00:18:47 -05:00
Markus Stange
8b9c146165 Bug 913443 - When determining the layer to recycle, only consider layers that have display items in common with the layer we need. r=roc 2015-03-04 00:21:00 -05:00
Markus Stange
08cd6f5eac Bug 913443 - Delay PaintedLayer recycling until PopPaintedLayerData(). r=roc
Once we're smarter about recycling the right layer, we can't decide on a layer
as soon as we encounter its first display item. We might need to have to look
at all of the assigned display items. This change makes that requirement
explicit.
2015-03-03 21:32:08 -05:00
Markus Stange
de4601141f Bug 913443 - Add a display item buffer for PaintedLayerData so that we can assign items without needing to know the actual Layer. r=roc 2015-03-04 00:21:55 -05:00
Markus Stange
cd045a4b5e Bug 913443 - Change the order of these calls. r=roc
The calls above don't need access to the PaintedLayer, but the ones this change
is moving down do. This change just makes it more obvious that we're free to
move the calls to an even later point.
2015-03-03 17:21:42 -05:00
Markus Stange
a62ad81d88 Bug 913443 - Move IsWidgetLayerManager() check out of UpdateCommonClipCount. r=roc
UpdateCommonClipCount accesses the PaintedLayerData's mLayer field in order to
get the layer manager. We want to be able to call UpdateCommonClipCount when
mLayer is null.
2015-03-03 17:00:55 -05:00
Markus Stange
89e4ac2c1e Bug 913443 - Remove unused aItemVisibleRect argument. r=roc 2015-03-03 16:57:30 -05:00
Markus Stange
313c6c3469 Bug 913443 - Break CreateOrRecyclePaintedLayer up even more. r=roc 2015-03-02 19:25:13 -05:00
Markus Stange
6cfa76525a Bug 913443 - Extract layer hint calculation. r=roc 2015-03-02 19:24:18 -05:00
Markus Stange
3e610f145e Bug 913443 - Break up CreateOrRecyclePaintedLayer into more parts. r=roc 2015-03-02 18:43:58 -05:00
Markus Stange
12bd1db1fe Bug 913443 - Remove some #ifdefs. r=roc
This function will be split up into more functions, and carrying along the
#ifdefs throughout those would be a pain.
2015-03-02 18:29:12 -05:00
Markus Stange
c6051df741 Bug 913443 - Remove mention of the word ThebesLayer in a comment. r=roc 2015-03-02 18:19:12 -05:00
Markus Stange
ea6525cc63 Bug 961887 - Find uniform opaque background colors under ContainerLayers. r=roc 2015-02-25 11:47:22 -05:00
Markus Stange
2e16d3eb79 Bug 961887 - Make FindOpaqueBackgroundColorFor take a region instead of a PaintedLayerData. r=roc 2015-02-20 14:46:09 -05:00
Markus Stange
a097b563bd Bug 961887 - Refactor mVisibleAboveRegion management. r=roc 2015-02-18 17:37:19 -05:00
Timothy Nikkel
2138def09b Bug 1102896. Save and restore the subpixel AA settings of the draw target when drawing an inactive layer manager so they don't get clobbered. r=mattwoodrow 2015-02-24 22:59:43 -06:00
Wes Kocher
cc0aeb80b6 Backed out 3 changesets (bug 961887) for reftest failures on a CLOSED TREE
Backed out changeset 1684d29858e1 (bug 961887)
Backed out changeset 97c8184c3058 (bug 961887)
Backed out changeset f02c5c1f7704 (bug 961887)
2015-02-24 17:32:37 -08:00
Markus Stange
533b9d24b1 Bug 961887 - Find uniform opaque background colors under ContainerLayers. r=roc 2015-02-24 14:35:46 -05:00
Markus Stange
7c77f134f7 Bug 961887 - Make FindOpaqueBackgroundColorFor take a region instead of a PaintedLayerData. r=roc 2015-02-20 14:46:09 -05:00
Markus Stange
1d50988de8 Bug 961887 - Refactor mVisibleAboveRegion management. r=roc 2015-02-18 17:37:19 -05:00
Markus Stange
271445d798 Bug 1134311 - Get rid of the draw region and always only use the visible region. r=roc 2015-02-18 13:01:40 -05:00
Timothy Nikkel
fb9bac3e2d Bug 1118051. Report layer event regions items as having empty bounds so they don't expand the visible region of layers. r=roc
When choosing a painted layer for the event region item we must report the bounds of the hit regions as the bounds so that we don't fall through to the bottom most painted layer.
2015-02-11 17:06:47 -06:00
David Anderson
78dfafe577 Disable layers flattening if APZ is enabled. (bug 1131389, r=mattwoodrow)
--HG--
extra : rebase_source : 8c023aeb48688fdff4f6496d1778c09095c83630
2015-02-10 20:54:18 -08:00
Nicholas Nethercote
6ee3666899 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 488e401ff87e31a2074c4108c4df0572d9536667
2015-02-09 14:34:50 -08:00
Andrew McCreight
8413cc973c Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Nicholas Nethercote
3629781b69 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 99182e70335d2b5ff95f8c528ae992d37294be3a
2015-02-04 20:05:36 -08:00
Seth Fowler
7d2a7a5455 Bug 1128225 (Part 3) - Add infrastructure for tracking draw results in geometry items. r=tn 2015-02-04 13:50:56 -08:00
David Anderson
d4b93595b2 Make debugging whole-layer invalidation slightly easier. (bug 1128752, r=mattwoodrow) 2015-02-03 14:18:44 -08:00
Timothy Nikkel
6c3cb83d4a Bug 1120431. Ensure that the draw region of a painted layer always includes the visible region, even if simplication of the region might try to change that. r=matt.woodrow
Sometimes, in very specific cases,  the visible region gets simplified to one rect and is thus much bigger than the draw region. This becomes a problem if we decide to pull an opaque background color from a lower layer so that we are opaque. In which case we draw the background color over the whole visible region. But we use the draw region to determine if we can place items below this layer, so that background color could cover them incorrectly.
2015-01-25 17:28:51 -06:00
Tom Tromey
e46c893814 Bug 1124680 - add MOZ_OVERRIDE in subclasses of TimelineMarker. r=smaug 2015-01-22 07:35:00 +01:00
Kartikaya Gupta
791c89ebb6 Bug 1116586 - Fix hit region for items with rounded corners. r=tn 2015-01-21 09:16:38 -05:00
Kartikaya Gupta
b4cf97874e Bug 1119942 - Hoist nsDisplayScrollInfoLayer items out of inactive layermanagers into their parent. r=tnikkel,mattwoodrow 2015-01-20 09:49:30 -05:00
Kartikaya Gupta
8e244775ac Bug 1119942 - Add some missing logging for which display items end up on which layer. r=BenWa,mattwoodrow 2015-01-20 09:49:30 -05:00
David Anderson
7ae9b13ba1 Fix classic scrollbars getting occluded with containerless scrolling. (bug 1100756, r=roc)
--HG--
extra : rebase_source : fcf95ab0c435d9c29a6a3552fe05d7f1ad3bc0ec
2015-01-13 23:55:17 -08:00
Tom Tromey
626168339b Bug 1113706 - move TimelineMarker to a new header; r=smaug 2015-01-05 09:39:16 -08:00
Benoit Girard
9e4578658c Bug 1113781 - Only track layer decision with MOZ_DUMP_PAINTING and add a preference. r=mstange 2014-12-31 15:21:58 -05:00
Benoit Girard
8d46226796 Bug 1113837 - Build display-list dumping without MOZ_DUMP_PAINTING. r=mstange 2014-12-31 15:17:39 -05:00
Kartikaya Gupta
b492715b7d Bug 1098654 - Improve layerization of display items when dealing with async scrollable layers. r=tnikkel
The function IsSubjectToAsyncTransforms() was not correctly reporting when a
layer was actually subject to async transforms. As a result, sometimes display
items from above such a layer would end up in a layer below. This could
manifest as page elements being improperly covered by async scrolling elements.
2014-12-30 09:39:39 -05:00
David Anderson
c6a362e7e4 Allow containerless scrolling for root scroll frames, too. (bug 1076192, r=tn)
--HG--
extra : rebase_source : 29d74a8734aabc0e583ad5e372f7b04bcc9e2b8f
2014-12-17 15:37:28 -08:00
Wes Kocher
e83bf23b26 Merge m-c to inbound a=merge 2014-12-12 17:39:12 -08:00
Tom Tromey
b07d94c0b7 Bug 1050770 - Add paint details to timeline. r=smaug, r=mattwoodrow 2014-12-11 10:40:00 -05:00
Jeff Muizelaar
93fa5b52e6 Bug 1110530. Use a rectangle instead of a region for layer bounds. r=roc
We only ever look at the bounds of this region so we can just track
that in a single rect instead of a region.

--HG--
extra : rebase_source : 4cd84ab724d9dde1c578e71362cab8033af7a210
2014-12-12 11:25:36 -05:00
Kartikaya Gupta
5fad9ad99a Bug 1105016 - Update tld to pld in debug logging. r=mstange
DONTBUILD because NPOTB
2014-11-26 13:58:15 -05:00
Kartikaya Gupta
b30e6b04cd Bug 1104809 - Log accumulation of event regions into a PaintedLayer. r=mstange,tn 2014-11-25 17:05:39 -05:00
Jonathan Watt
cf91ac7a84 Bug 1103623 - Port most remaining gfxContext::Fill() calls to Moz2D. r=mattwoodrow 2014-11-24 00:04:33 +00:00
Bas Schouten
d4181f7c5f Bug 1099335: Base decision to use a complex clip on whether a DT supports regoin clipping. r=jrmuizel
DrawTargets that support region clipping are able to clip to regions effectively. Other DrawTargets go through expensive complex clip paths. When invalidating regions we have code that draws in multiple steps when using Direct2D to avoid this expense, we should base the decision to do this simply on whether the DrawTarget supports fast region clipping.
2014-11-16 19:17:40 +00:00
Jonathan Watt
1151d6d34f Bug 651021 - Make nsRenderingContext a stack class. r=jrmuizel 2014-10-31 20:08:49 +00:00
Jonathan Watt
1c4344fe0a Bug 1090607 - Port FrameLayerBuilder.cpp's DebugPaintItem helper to Moz2D. r=Bas 2014-10-29 17:07:11 +00:00
Markus Stange
dc285f3c81 Bug 1055634 - Propagate font smoothing background colors to layers. r=roc 2014-10-24 18:32:23 +02:00
Benoit Girard
73fd622865 Bug 961871 - Part 4: Fix budget calculation by adding Maybe prerenderer and animate. r=roc 2014-10-21 21:55:55 -04:00