Commit Graph

282 Commits

Author SHA1 Message Date
David Anderson
32519375c6 Make finer-grained decisions about whether to update hit testing trees. (bug 1352918, r=kats)
Updating hit testing trees is very expensive for many layers, and often
layer properties that change don't necessitate hit testing tree updates.
While layer tree structure changes do, we can be smarter about
individual layer attributes.
2017-04-13 21:25:16 -07:00
David Anderson
7a44341bcc Improve pixel fill statistics in the D3D11 compositor overlay. (bug 1352151 part 6, r=bas)
This introduces two new statistics to the overlay. The first is the ratio of
pixel shader invocations (as determined by the GPU) to the number of pixels we
determined need to be redrawn. The ideal ratio is 1.0, indicating that we
filled every pixel exactly once. Anything over 1.0 indicates overdraw.

We also add the ratio of shaded pixels to window size. This indicates how well
we computed the invalid region, and whether or not we overfilled that
region.

Note that the OpenGL and Basic compositors do not yet query the GPU for
this statistic, so they will estimate shader invocations by the area of
DrawQuad calls.

Finally, we remove the feature where layout can request the most
recent overdraw statistic. It was not implemented on all compositors, and the
only test that used it was disabled.
2017-04-10 19:44:46 -07:00
David Anderson
7ff89642e7 Collect diagnostics on paint times for the compositor overlay. (bug 1352151 part 1, r=mattwoodrow) 2017-04-10 19:44:45 -07:00
Eric Rahm
61aef92654 Bug 1353143 - Part 5: Replace direct usage of PR_LogPrint. r=froydnj
This replaces the usage of |PR_LogPrint| with either |printf_stderr| or
|MOZ_LOG| where appropriate. |printf_stderr| is used where a logger is not
actually available or if log levels are not being used as expected.
2017-04-04 14:36:21 -07:00
David Anderson
b2fec055bc Attach Compositables to TextureSourceProviders instead of Compositors. (bug 1343814 part 5, r=mattwoodrow) 2017-03-21 20:32:56 -07:00
peter chang
dc497a1152 Bug 1337889 - use CompositorAnimationsId to query Opacity/Transform animation, r=hiro,kats
MozReview-Commit-ID: 3s1kzOQAfrd
2017-02-09 17:30:11 -05:00
peter chang
12f701a514 Bug 1337889 - Add CompositorAnimationsId for layer animations, r=hiro
MozReview-Commit-ID: 4r9VhF4Vp2l
2017-02-08 14:31:45 -05:00
Matt Woodrow
f8409228f1 Bug 1340117 - Batch ReadLock intializer into a separate IDPL message to avoid hitting the file descriptor limit. r=dvander 2017-02-27 16:12:12 +13:00
Tom Tromey
a4b717ab39 Bug 1060419 - make log_print use Printf.h, r=froydnj
MozReview-Commit-ID: BIZ1GQEZ1vs
2016-12-15 20:16:31 -07:00
Matt Woodrow
ebbd7e515a Bug 1328797 - Part 3: Remove sync transactions entirely as they aren't used any more. r=nical 2017-02-16 11:31:18 +13:00
Matt Woodrow
53e1d350fc Bug 1325227 - Part 1: Remove synchronous transaction replies since they don't return any data we didn't already have. r=nical
MozReview-Commit-ID: 2HIbk65L7zR
2016-12-06 13:34:54 -10:00
David Anderson
bb01808f22 Don't let stale async compositables break main-thread paint transactions. (bug 1331548 part 1, r=mattwoodrow) 2017-02-01 23:51:51 -08:00
David Anderson
3b07e8a48a Send SimpleLayerAttributes separately from CommonLayerAttributes. (bug 1332567 part 6, r=mattwoodrow) 2017-01-24 16:41:18 -08:00
David Anderson
ede0640985 Move OpSetLayerAttributes out of the Edit vector. (bug 1332567 part 4, r=mattwoodrow) 2017-01-24 16:41:18 -08:00
David Anderson
ad69deadf5 Lump Paint operations separately from Edit operations. (bug 1332567 part 3, r=mattwoodrow) 2017-01-24 16:41:17 -08:00
David Anderson
0125ec33f2 Don't use TransformMatrix in CommonLayerAttributes. (bug 1332567 part 2, r=mattwoodrow) 2017-01-24 16:41:17 -08:00
David Anderson
d46521f0e5 Move ScrollDirection to LayersTypes.h and make it a proper enum. (bug 1332567 part 1, r=kats) 2017-01-24 16:41:17 -08:00
David Anderson
dd60ba2d92 Use a simpler mechanism for tracking which ref layers need device resets. (bug 1333329 part 1, r=rhunt) 2017-01-24 11:23:11 -08:00
David Anderson
d337ea29c3 Fix ImageBridgeChild memory tracking errors on shutdown. (bug 1323957 part 6, r=mattwoodrow) 2017-01-17 18:47:07 -08:00
David Anderson
02848eb570 Remove PCompositable. (bug 1323957 part 5, r=mattwoodrow) 2017-01-17 18:47:07 -08:00
David Anderson
b1ad9c7a26 Link Compositables via IDs instead of actors. (bug 1323957 part 4, r=mattwoodrow) 2017-01-17 18:47:06 -08:00
David Anderson
01d296df20 Use CompositableHandle in ImageNotification. (bug 1323957 part 3, r=mattwoodrow) 2017-01-17 18:47:06 -08:00
sotaro
9ad651360d Bug 1307458 - Update LayerManager pointer of all Layers of LayerTransactionParent r=mattwoodrow 2017-01-13 10:15:49 +09:00
Ryan VanderMeulen
71eea2561a Backed out 6 changesets (bug 1323957) for intermittent GPU process leaks on a CLOSED TREE.
Backed out changeset 8fe93d5f82a8 (bug 1323957)
Backed out changeset 5d1615317a36 (bug 1323957)
Backed out changeset 1ec74a022e80 (bug 1323957)
Backed out changeset 0a97bbdd54d5 (bug 1323957)
Backed out changeset 70fab4f6d367 (bug 1323957)
Backed out changeset c5ca5b7fcacd (bug 1323957)
2017-01-11 23:09:14 -05:00
Ryan VanderMeulen
88a88a7924 Backed out 7 changesets (bug 1325227) to unblock the backout of bug 1323957.
Backed out changeset d6e962b025e6 (bug 1325227)
Backed out changeset 70136ced844e (bug 1325227)
Backed out changeset e21219e9638a (bug 1325227)
Backed out changeset a5d83d2b1632 (bug 1325227)
Backed out changeset f6c6ef5ac42c (bug 1325227)
Backed out changeset 1a604f87a342 (bug 1325227)
Backed out changeset d4827432cbc2 (bug 1325227)
2017-01-11 23:08:45 -05:00
Matt Woodrow
bd00c725ab Bug 1325227 - Part 1: Remove synchronous transaction replies since they don't return any data we didn't already have. r=nical 2016-12-06 13:34:54 -10:00
David Anderson
fd2bfcead4 Remove PCompositable. (bug 1323957 part 5, r=mattwoodrow) 2017-01-11 09:20:55 -08:00
David Anderson
2688f79e55 Link Compositables via IDs instead of actors. (bug 1323957 part 4, r=mattwoodrow) 2017-01-11 09:20:54 -08:00
David Anderson
3be99bd32b Use CompositableHandle in ImageNotification. (bug 1323957 part 3, r=mattwoodrow) 2017-01-11 09:20:54 -08:00
Nathan Froyd
b9cca6c700 Bug 1322553 - part 2 - use the new constructor of GeckoProfilerTracingRAII; r=mstange
This patch is not strictly relevant to the current bug, but doing the
work here nicely illustrates how the constructor we added in part 1 can
be used in existing parts of the codebase.
2017-01-07 15:56:49 -05:00
David Anderson
57b434983c Simplify calling SendUpdate/SendUpdateNoSwap. (bug 1325993, r=nical) 2017-01-04 12:58:58 -05:00
David Anderson
dff9aea4b9 Use async compositable IDs for image composite notifications. (bug 1325784 part 4, r=nical) 2017-01-04 10:19:30 -05:00
David Anderson
ea90e1e9d4 Move CompositableMap into ImageBridge. (bug 1325784 part 2, r=nical) 2017-01-04 10:19:29 -05:00
David Anderson
35fa218998 Remove PLayer. (bug 1323539 part 2, r=mattwoodrow) 2016-12-21 10:43:47 -05:00
Kan-Ru Chen
edfe14b039 Bug 1319271 - Use actor's manager in case actor is already deleted (r=billm)
MozReview-Commit-ID: 3Dr2POjqNft
2016-12-13 16:46:33 -08:00
Tomislav Jurin
9ff3007b90 Bug 1296189 - Replace NS_RUNTIMEABORT("some string literal message") with MOZ_CRASH(). r=froydnj 2016-12-02 13:46:53 -08:00
Matt Woodrow
26fae296aa Bug 1319626 - Part 2: Add BorderLayer class and basic support for them. r=mstange 2016-11-24 18:11:30 +13:00
Carsten "Tomcat" Book
c5a85de12f Backed out changeset 4909935f8081 (bug 1319626) 2016-11-24 17:02:32 +01:00
Matt Woodrow
ce171e59c7 Bug 1319626 - Part 2: Add BorderLayer class and basic support for them. r=mstange 2016-11-24 18:11:30 +13:00
Matt Woodrow
268a08de7a Bug 1317862 - Part 1: Add TextLayer class and basic support for them. r=mstange 2016-11-24 18:11:29 +13:00
Bas Schouten
cd0155b68f Bug 1317843 - Split LayerManagerComposite into two classes. r=jrmuizel 2016-11-24 18:11:27 +13:00
Carsten "Tomcat" Book
b2903208c2 Merge mozilla-central to inbound 2016-11-16 14:53:15 +01:00
Kan-Ru Chen
1b9dd22e2d Bug 1314254 - Add mozilla::ipc::IPCResult type and convert IPDL handlers to use new return type. r=billm
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.

MozReview-Commit-ID: AzVbApxFGZ0
2016-11-15 04:26:00 +01:00
Sotaro Ikeda
babd939cf1 Bug 1317656 - Cleanup more gonk/b2g dependent code r=nical 2016-11-15 22:01:30 -08:00
Matt Woodrow
16f8a8bdeb Bug 1308363 - Remove GONK specific code from gfx/. r=jrmuizel,sotaro 2016-10-27 13:17:10 +13:00
Bill McCloskey
1680d779a9 Bug 1279086 - Allow painting for tab switch when JS is running (r=dvander,mconley,mrbkap) 2016-09-16 20:35:11 -07:00
David Anderson
68e0105369 Remove FallbackDestroyActors. (bug 1301780 part 1, r=nical) 2016-09-15 23:57:17 -07:00
Wes Kocher
e13f8b0cdf Merge m-c to inbound, a=merge 2016-08-25 17:14:17 -07:00
Matt Woodrow
facef9a378 Bug 1297578 - Part 2: Merge ShadowLayersManager into the CBP base. r=dvander 2016-08-26 09:10:53 +12:00
Matt Woodrow
76abbdcfa8 Bug 1297578 - Part 1: Create a base CompositorBridgeParent class and avoid implementing things twice. r=nical 2016-08-26 09:08:52 +12:00