Commit Graph

122 Commits

Author SHA1 Message Date
Bas Schouten
0ca40e581f Bug 1088414: Use a single synchronization texture for D3D11. r=jrmuizel
This patch adds a cross platform 'sync object' that is used to synchronize the drawing of individual textures. For the D3D11 implementation all textures that are written to will have one pixel copied into the D3D11 sync texture while holding its lock. The compositor will then, before composition acquire and release sync once, this should ensure all drawing on the content side has completed.
2014-12-13 01:50:47 +00:00
Jeff Muizelaar
7aba108fce Bug 1088414. Backout "Use a single synchronized texture for d3d11"
https://hg.mozilla.org/mozilla-central/rev/e2efedec2d60
2014-11-17 14:20:05 -05:00
Matt Woodrow
e937640eac Bug 1088414. Use a single synchronized texture for d3d11. r=bas,f=jrmuizel
Calling AcquireSync on textures created with
D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX appears to be really slow, this really
bites us with the number of textures involved when tiling.

I've also tested using ID3D11Query to check when work is completed, this also
appears to be pretty slow.

This instead just uses a single texture with a keyedmutex, and makes sure we
draw to it last and lock it first. It's pretty hacky, but seems to work really
well so far.
2014-10-22 15:37:00 +13:00
Benoit Girard
de95949f46 Bug 1094442 - Part 1: Refactor how tile w/h is queried r=kats 2014-11-12 17:54:29 -05:00
Botond Ballo
8e10bf2d87 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Carsten "Tomcat" Book
52d5b03991 Backed out changeset a96930f1e26b (bug 1055741) 2014-11-13 11:47:31 +01:00
Botond Ballo
031c8b1c39 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Robert O'Callahan
6b986c65a5 Bug 1083635. Part 5: ClientLayerManager::BeginTransactionWithTarget should assert if we're not going to take a snapshot. r=mattwoodrow 2014-10-21 10:32:10 +13:00
Ehsan Akhgari
22d38b6803 Bug 1088838 - Don't export CompositorChild.h, CompositorParent.h and ShadowLayersManager.h twice; r=BenWa 2014-10-27 08:57:36 -04:00
Sotaro Ikeda
bc36c56844 Bug 1076868 - Fix RemoveTextureFromCompositableAsync() call handling r=nical 2014-10-07 11:37:15 -07:00
Jeff Muizelaar
0f09ff4b36 Bug 1066664. Fix screenshot rotation. r=mwoodrow
This moves the screenshot (now-nonexistent) unrotation code from the opengl
compositor into ClientLayerManager.cpp
2014-09-30 16:20:48 -04:00
Markus Stange
a15e939a69 Bug 1073103 - Rename ThebesLayer to PaintedLayer. r=roc 2014-09-26 13:06:08 -04:00
Bas Schouten
51697dd483 Bug 1072404: Firefox may crash when the D3D device is removed while rendering. r=mattwoodrow 2014-09-24 17:12:10 +00:00
Nicolas Silva
c761b24200 Bug 1071825 - Remove simple tiling code. r=mattwoodrow 2014-09-23 17:44:48 -04:00
Milan Sreckovic
e15e3face5 Bug 1048984.1: Utility methods for managing texture pool returns. Make sure tiles go back to the correct pool. r=nsilva 2014-09-16 10:07:46 -04:00
Jeff Muizelaar
4f3610dd6b Bug 1064479. Redo how screen rotation is implemented on B2G/Layers. r=nical,mwoodrow
Currently we use a world transform on the LayerManager. This gets passed to the
screen render target which adjusts the gl transform to accomplish the rotation.
This causes a lot of the system to have to know about the transform.

Instead we can just bake the transform into the root layer's shadow transform.
Everything now mostly just works.
2014-09-10 15:59:00 -04:00
Benoit Girard
68f5937220 Bug 1057088 - Add a way to sync query compositor properties like overfill and HWC status. r=smaug,jrmuizel 2014-09-02 15:23:34 -04:00
Sotaro Ikeda
546592b3c5 Bug 1062361 - Free cached tiles on memory-pressure r=nical 2014-09-04 08:27:46 -07:00
Benoit Girard
64e8d26a7f Bug 1055050 - Add visual warning if the transaction latency is > 100 ms. r=mwoodrow 2014-08-28 15:24:26 -04:00
Kartikaya Gupta
c11731dee2 Bug 1055760 - Replace GetPrimaryScrollableLayer with functions that are more appropriate. r=BenWa 2014-08-27 22:13:41 -04:00
Kartikaya Gupta
9d9e2ce30a Bug 1055760 - Update tiling code to use LayerMetricsWrapper. r=botond,BenWa 2014-08-27 22:13:41 -04:00
Matt Woodrow
3e4fdd6a6f Bug 1056427 - Stop PRenderFrame from managing PLayerTransaction since it hasn't worked since the layers refactoring. r=roc 2014-08-22 12:16:44 +12:00
Botond Ballo
98eb7b14f0 Bug 1039992 - Fix a unified build issue. r=kats 2014-08-18 16:13:12 -04:00
Kartikaya Gupta
18bbff8294 Bug 1051985 - Move the FrameMetrics from ContainerLayer to Layer. r=mattwoodrow,BenWa 2014-08-11 20:00:36 -04:00
Bas Schouten
e1fe5e72d5 Bug 947781 - Part 4: Add ReadbackLayer functionality to ClientLayerManager. r=mattwoodrow 2014-07-30 15:38:47 +02:00
Ed Morley
1be21e1760 Backed out changeset 96379f178485 (bug 947781) 2014-07-30 14:54:01 +01:00
Bas Schouten
88d1088a98 Bug 947781 - Part 4: Add ReadbackLayer functionality to ClientLayerManager. r=mattwoodrow 2014-07-30 15:38:47 +02:00
Milan Sreckovic
a09a4551b8 Bug 1043603: Expose tile pool size and pool shrink timeout as prefs. r=clord 2014-07-25 15:49:47 -04:00
Botond Ballo
7d711383aa Bug 1041751 - Fix an order-of-arguments mistake. r=tn 2014-07-24 19:11:00 -04:00
Botond Ballo
d6e2c66d3b Bug 1041751 - Do not create an empty APZ test data bucket for each paint when APZ test logging is not pref'd on. r=kats 2014-07-23 18:38:28 -04:00
Botond Ballo
861ce1ccae Bug 1007728 - Avoid calling APZCTreeManager::UpdatePanZoomControllerTree() on repeat transactions. r=kats,BenWa 2014-05-30 18:52:43 -04:00
Wes Kocher
fe4d79aeec Backed out changeset c1ea5a8280d7 (bug 1041751) for b2g Gip orange on a CLOSED TREE 2014-07-22 16:54:52 -07:00
Botond Ballo
5987b0f91e Bug 1041751 - Do not create an empty APZ test data bucket for each paint when APZ test logging is not pref'd on. r=kats 2014-07-22 15:35:18 -04:00
Matt Woodrow
92c8aefeaf Bug 1039145 - Part 2: Fully remove component alpha/background copying support from BasicCompositor. r=roc 2014-07-18 18:48:23 +12:00
Carsten "Tomcat" Book
a9f417483c Backed out changeset 49c713f92304 (bug 1039145) 2014-07-18 10:45:20 +02:00
Matt Woodrow
9772ed7433 Bug 1039145 - Part 2: Fully remove component alpha/background copying support from BasicCompositor. r=roc 2014-07-18 18:48:23 +12:00
Kartikaya Gupta
e4121fd891 Bug 1021085 - Fix up the Fennec code path as well. r=Cwiiis 2014-06-23 08:42:53 -04:00
Sotaro Ikeda
1e3fa8c17c Bug 1026432 - Add GetCompositorChild() to ClientLayerManager r=nical 2014-06-17 19:42:34 -07:00
Victor Porof
298ca2ed1b Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Matt Woodrow
e068ca7fe9 Bug 854421 - Part 9: Send DidComposite during ClientLayerManager destruction. r=roc 2014-05-29 09:44:30 +12:00
Matt Woodrow
e096ef5d0b Bug 854421 - Part 7: Allocate and return transaction id's from the refresh driver when using OMTC to prevent over-production. r=roc 2014-05-29 09:43:39 +12:00
Matt Woodrow
33af0836e2 Bug 854421 - Part 1: Add a transaction id number to DidComposite. r=nical 2014-05-29 09:42:14 +12:00
Matt Woodrow
96c3bb3303 Bug 1013767 - Restrict BasicCompositor snapshots to the bounds of the invalid region. r=nical 2014-05-28 13:21:32 +12:00
Nicolas Silva
8a0c258ce9 Bug 1013292 - Fix some using namespace + unified build issues in gfx code. r=kats 2014-05-22 12:11:45 +02:00
Botond Ballo
02ed5b8fb8 Bug 961289 - Expose client- and compositor-side APZ test data from nsIDOMWindowUtils. r=ehsan,kats,bholley 2014-05-09 17:16:03 -04:00
Botond Ballo
71b9348946 Bug 961289 - Client-side instance of APZ test data and utilities for writing to it. r=tn,kats 2014-04-21 19:48:54 -04:00
Botond Ballo
7f00b26cfe Bug 961289 - Assign sequence numbers to paints on the client side and forward them to the compositor. r=BenWa,kats 2014-05-06 17:26:13 -04:00
Mason Chang
773924dcae Bug 979949 - Expose compositor fill ratio to JS for automation. r=benwa,mrbkap. 2014-05-08 17:32:00 +02:00
Sotaro Ikeda
b226cd7960 Bug 1000525 - Defer Fence release until IPC delivery complete r=nical 2014-05-05 18:56:40 -07:00
Nicolas Silva
6fcaf72b1b Bug 997699 - Move CompositableChild to the .cpp. r=bjacob 2014-04-24 20:13:59 +02:00