Commit Graph

1909 Commits

Author SHA1 Message Date
Bob Owen
387477fb68 Bug 1464032 Part 12: Add CanvasParent, CanvasChild and RecordedTextureData. r=mattwoodrow, jld
RecordedTextureData records TextureData calls for play back in the GPU process.
CanvasChild and CanvasParent set up the recorder and translator.
They also help to manage the starting of translation and co-ordinating the
translation with the frame transactions.
This patch also includes other changes to wire up recording and playback.
2018-12-02 14:19:11 +00:00
Bob Owen
fd4b37602b Bug 1464032 Part 1: Fix unified build issues. r=jrmuizel 2018-12-02 14:02:27 +00:00
Miko Mynttinen
6c57050ada Bug 1490404 - Part 2: Add retained display list statistics r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D33680

--HG--
extra : moz-landing-system : lando
2019-06-06 17:54:14 +00:00
Barret Rennie
fc26f28fc6 Bug 1551735 - Ref count and document CompositionRecorder r=kats
The CompositionRecorder was being stored as a UniquePtr on the
CompositorBridgeParent, but was then passed to and stored on the LayerManger as
a raw pointer. This has been updated to use a RefPtr.

Differential Revision: https://phabricator.services.mozilla.com/D32230

--HG--
extra : moz-landing-system : lando
2019-05-31 00:30:24 +00:00
Coroiu Cristina
0c344192ae Backed out 7 changesets (bug 1551735) for build bustage at src/gfx/layers/wr/WebRenderCompositionRecorder.h on a CLOSED TREE
Backed out changeset 98e75ac2cf4f (bug 1551735)
Backed out changeset 152e3a6e5c10 (bug 1551735)
Backed out changeset 9deb5350e244 (bug 1551735)
Backed out changeset 6154bdfe6fad (bug 1551735)
Backed out changeset 4a0936bda490 (bug 1551735)
Backed out changeset a7868d694fe1 (bug 1551735)
Backed out changeset 06c8e5f7768d (bug 1551735)
2019-05-31 00:05:00 +03:00
Barret Rennie
76600ea0a2 Bug 1551735 - Ref count and document CompositionRecorder r=kats
The CompositionRecorder was being stored as a UniquePtr on the
CompositorBridgeParent, but was then passed to and stored on the LayerManger as
a raw pointer. This has been updated to use a RefPtr.

Differential Revision: https://phabricator.services.mozilla.com/D32230

--HG--
extra : moz-landing-system : lando
2019-05-30 20:17:39 +00:00
Noemi Erli
02b7a9faeb Backed out 7 changesets (bug 1551735) for build bustages in RenderThread.cpp CLOSED TREE
Backed out changeset aa165d8c181d (bug 1551735)
Backed out changeset e7b857609786 (bug 1551735)
Backed out changeset f2a2396a0d4a (bug 1551735)
Backed out changeset 5891d00fca85 (bug 1551735)
Backed out changeset 2e6ca6d6c527 (bug 1551735)
Backed out changeset 3b2078f90715 (bug 1551735)
Backed out changeset a516d20303e6 (bug 1551735)
2019-05-30 23:10:21 +03:00
Barret Rennie
00a6425f1f Bug 1551735 - Ref count and document CompositionRecorder r=kats
The CompositionRecorder was being stored as a UniquePtr on the
CompositorBridgeParent, but was then passed to and stored on the LayerManger as
a raw pointer. This has been updated to use a RefPtr.

Differential Revision: https://phabricator.services.mozilla.com/D32230

--HG--
extra : moz-landing-system : lando
2019-05-29 21:52:12 +00:00
sotaro
acbc3518d5 Bug 1554091 - Remove WrExternalImageBufferType r=jrmuizel
If ExternalImageType is just passed from C to rust, it caused crash on non-Windows platform. It was caused by stack corruption. Then &ExternalImageType is used instead of ExternalImageType to bypass the problem.

Differential Revision: https://phabricator.services.mozilla.com/D32436

--HG--
extra : moz-landing-system : lando
2019-05-28 22:03:54 +00:00
Matt Woodrow
f732a16883 Bug 1468728 - Don't try to maintain visible regions for Layers that might need to have a 3d representation. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D30452

--HG--
extra : moz-landing-system : lando
2019-05-27 20:21:06 +00:00
Jean-Yves Avenard
022c57caf3 Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

Differential Revision: https://phabricator.services.mozilla.com/D31468

--HG--
extra : moz-landing-system : lando
2019-05-26 14:31:53 +00:00
Jean-Yves Avenard
23436e1811 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-26 14:30:14 +00:00
Jean-Yves Avenard
04a34db033 Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256

--HG--
extra : moz-landing-system : lando
2019-05-26 14:29:42 +00:00
Gurzau Raul
967bc2a754 Backed out 31 changesets (bug 1552643, bug 1550422) for xpcshell crash on a CLOSED TREE.
Backed out changeset e30c1aa75529 (bug 1552643)
Backed out changeset caadcd7e02d3 (bug 1552643)
Backed out changeset aa7086ab09be (bug 1552643)
Backed out changeset 0b4029671710 (bug 1550422)
Backed out changeset a16295296035 (bug 1550422)
Backed out changeset 3b70307c0db5 (bug 1550422)
Backed out changeset 69df7818d4a3 (bug 1550422)
Backed out changeset d98dfc565927 (bug 1550422)
Backed out changeset 6f0997976944 (bug 1550422)
Backed out changeset 0edd264464c2 (bug 1550422)
Backed out changeset 9ea6da7a74ec (bug 1550422)
Backed out changeset f855f9309c8b (bug 1550422)
Backed out changeset 1033546224a7 (bug 1550422)
Backed out changeset ade7384c6186 (bug 1550422)
Backed out changeset 75b04de7e99c (bug 1550422)
Backed out changeset 91c3acdb2454 (bug 1550422)
Backed out changeset 77d2f80257d1 (bug 1550422)
Backed out changeset e0cd10d35327 (bug 1550422)
Backed out changeset 097091082423 (bug 1550422)
Backed out changeset 2f328853c1ab (bug 1550422)
Backed out changeset f92f2cc29cb1 (bug 1550422)
Backed out changeset 6dc82f88333d (bug 1550422)
Backed out changeset c20f66494d69 (bug 1550422)
Backed out changeset 2ba22cddeb6f (bug 1550422)
Backed out changeset 3aa72f89e295 (bug 1550422)
Backed out changeset ab4c4e806977 (bug 1550422)
Backed out changeset 72e5de040dda (bug 1550422)
Backed out changeset 7d3c2d486706 (bug 1550422)
Backed out changeset 132e0b8d8468 (bug 1550422)
Backed out changeset 54c85ac75dd0 (bug 1550422)
Backed out changeset d7ba4a18dd54 (bug 1550422)
2019-05-25 09:07:49 +03:00
Jean-Yves Avenard
074aea57fe Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

Differential Revision: https://phabricator.services.mozilla.com/D31468

--HG--
extra : moz-landing-system : lando
2019-05-24 11:37:50 +00:00
Jean-Yves Avenard
8d5f292ab5 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-24 11:32:54 +00:00
Jean-Yves Avenard
af5790cf9b Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256

--HG--
extra : moz-landing-system : lando
2019-05-25 00:03:32 +00:00
Barret Rennie
a71ef09a3f Bug 1547472 - Ref count the ProfilerScreenshots structure r=gerald,jesup
Differential Revision: https://phabricator.services.mozilla.com/D32524

--HG--
extra : moz-landing-system : lando
2019-05-24 23:53:28 +00:00
Gurzau Raul
74c555539e Backed out 28 changesets (bug 1550422) for marionette AssertionError and failing browser_policy_hardware_acceleration.js on a CLOSED TREE.
Backed out changeset 5dd10a365ba9 (bug 1550422)
Backed out changeset 529f5be01ab9 (bug 1550422)
Backed out changeset b6861d3badf8 (bug 1550422)
Backed out changeset 059cff1a3dde (bug 1550422)
Backed out changeset 6ada1116b241 (bug 1550422)
Backed out changeset ca67e8e45262 (bug 1550422)
Backed out changeset a1961a51ae44 (bug 1550422)
Backed out changeset 1c90b9cb3ad4 (bug 1550422)
Backed out changeset 285fa46e4f26 (bug 1550422)
Backed out changeset e2938a444234 (bug 1550422)
Backed out changeset 7a930fc51125 (bug 1550422)
Backed out changeset 898ed02804fe (bug 1550422)
Backed out changeset e1b7abc99ae9 (bug 1550422)
Backed out changeset f781d415cef6 (bug 1550422)
Backed out changeset 2fef10a7cce5 (bug 1550422)
Backed out changeset ea64b4d8d4ff (bug 1550422)
Backed out changeset 86a8ba1b755c (bug 1550422)
Backed out changeset 9c0c9e80f309 (bug 1550422)
Backed out changeset 10c153ddbaea (bug 1550422)
Backed out changeset 60fe635ec2c9 (bug 1550422)
Backed out changeset a38796266b28 (bug 1550422)
Backed out changeset 2db647dcdf1c (bug 1550422)
Backed out changeset 952ddac02972 (bug 1550422)
Backed out changeset ba46b53643ec (bug 1550422)
Backed out changeset ca47ef6c59f7 (bug 1550422)
Backed out changeset f45f471a1a40 (bug 1550422)
Backed out changeset 371b4da5b771 (bug 1550422)
Backed out changeset 02fc78890032 (bug 1550422)
2019-05-23 05:59:44 +03:00
Jean-Yves Avenard
d59781ac33 Bug 1550422 - P23. Remove now unused gfxPrefs. r=jrmuizel
And with some tidying some comments and removing stray #include "gfxPrefs.h"

Differential Revision: https://phabricator.services.mozilla.com/D31468

--HG--
extra : moz-landing-system : lando
2019-05-22 12:46:30 +00:00
Jean-Yves Avenard
2412878bd9 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-22 22:27:37 +00:00
Jean-Yves Avenard
2c0ce1b3ca Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

Differential Revision: https://phabricator.services.mozilla.com/D31256

--HG--
extra : moz-landing-system : lando
2019-05-22 12:43:42 +00:00
Emilio Cobos Álvarez
835de4b08d Bug 1529002 - Use cbindgen to back CSS transforms. r=boris
This avoids the expensive conversion, and cleans up a bunch.

Further cleanup is possible, just not done yet to avoid growing the patch even
more.

Differential Revision: https://phabricator.services.mozilla.com/D30748

--HG--
extra : moz-landing-system : lando
2019-05-16 23:25:10 +00:00
Ciure Andrei
00a73f5055 Backed out 17 changesets (bug 1550554, bug 1549593, bug 1551991, bug 1529002) for failing multiple Android tests and Windows 2012 bustages CLOSED TREE
Backed out changeset 3bb3fafa62e2 (bug 1551991)
Backed out changeset e12a979de502 (bug 1551991)
Backed out changeset d81e4aa6bf0c (bug 1551991)
Backed out changeset c354e61f2a34 (bug 1551991)
Backed out changeset 37fd602bebc2 (bug 1551991)
Backed out changeset 6c1f00cc30ca (bug 1551991)
Backed out changeset 8a7a0329bdc3 (bug 1551991)
Backed out changeset 86159475ddd3 (bug 1551991)
Backed out changeset 35f91a9ea82a (bug 1529002)
Backed out changeset 6798155e71dc (bug 1529002)
Backed out changeset b90c2cf5b8c5 (bug 1550554)
Backed out changeset 882ab9868c95 (bug 1550554)
Backed out changeset b28a48e2ed21 (bug 1550554)
Backed out changeset 2c31fe18eefd (bug 1550554)
Backed out changeset 57f2362aa538 (bug 1550554)
Backed out changeset 45f171b26e95 (bug 1550554)
Backed out changeset 2e4b263c9410 (bug 1549593)
2019-05-16 13:17:10 +03:00
Emilio Cobos Álvarez
5804e8efae Bug 1529002 - Use cbindgen to back CSS transforms. r=boris
This avoids the expensive conversion, and cleans up a bunch.

Further cleanup is possible, just not done yet to avoid growing the patch even
more.

Differential Revision: https://phabricator.services.mozilla.com/D30748
2019-05-16 16:24:38 +02:00
Matt Woodrow
ccec906120 Bug 1547159 - Composite just the visible rects of ColorLayerComposite on mobile. r=jnicol
Differential Revision: https://phabricator.services.mozilla.com/D29456

--HG--
extra : moz-landing-system : lando
2019-05-02 22:02:30 +00:00
Barret Rennie
4dfb93e03a Bug 1547369 - Rename Compositor::RequestRecordFrames to Compositor::RequestAllowFrameRecording r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D29708

--HG--
extra : moz-landing-system : lando
2019-05-02 17:33:38 +00:00
Botond Ballo
8e221b7e30 Bug 1546139 - Restore the call to AdjustFixedOrStickyLayer() for layers fixed to the RCD-RSF. r=kats
This call served two purposes: (1) scroll the fixed layer by the eVisual
transform, and (2) adjust it by the fixed margins. The first purpose is now
served by applying the eVisual transform to the async zoom container, but
we still need the call for the second purpose.

Differential Revision: https://phabricator.services.mozilla.com/D28735

--HG--
extra : moz-landing-system : lando
2019-04-25 14:33:17 +00:00
Botond Ballo
4af43dbc47 Bug 1546139 - Add support for setting fixed layer margins in a reftest. r=kats
This is accomplished via prefs rather than using a reftest attribute because
it's easier to get the right persistence (that is, how long the fixed margins
stick around) this way. The downside is that someone reading the reftest page
needs to look at the test- or ref-specific prefs in reftest.list to get a full
picture of what the test is doing.

Differential Revision: https://phabricator.services.mozilla.com/D28728

--HG--
extra : moz-landing-system : lando
2019-04-25 14:25:04 +00:00
sotaro
601b513435 Bug 1543621 - Move Y flip handling to AsyncImagePipelineManager::ApplyAsyncImageForPipeline() r=nical
With webrender, current gecko does not handle SurfaceTexture.getTransformMatrix() yet. SurfaceTexture is used for video decoding and WebGL. On both usages, when getTransformMatrix() is not handled, it actually worked as bottom left origin. Then gecko need to ignore y flip. AsyncImagePipelineManager::ApplyAsyncImageForPipeline() is a good place to handle the situations, since it handles canvas and video frame rendering. Long term solution is going to be handled by Bug 1507076.

Differential Revision: https://phabricator.services.mozilla.com/D28315

--HG--
extra : moz-landing-system : lando
2019-04-23 12:29:24 +00:00
Jeff Gilbert
544759b391 Bug 1545892 - Reduce includes in gfx2DGlue.h, nsLayoutUtils.h, nsPresContext.h. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D28266

--HG--
extra : moz-landing-system : lando
2019-04-22 19:58:52 +00:00
Nicolas Silva
546c396de9 Bug 1538736 - Make extra sure Compositables don't refer back to layers after reassignment. r=sotaro
Differential Revision: https://phabricator.services.mozilla.com/D27930

--HG--
extra : moz-landing-system : lando
2019-04-19 18:26:04 +00:00
Barret Rennie
a378edf66c Bug 1544572 - Support composition recording for BasicCompositor r=mstange
The LayerManagerComposite can now request its compositor to record frames
(i.e., ensure there is a window render target). For all compositors except
BasicCompositor, this is a no-op since they already always have one.

Now the BasicCompositor keeps track of whether or not should be recording
frames based on this request from the LayerManagerComposite and information
about the profiler. This also has the benefit of cleaning up some of the code
that was conditionally compiled only on platforms that support the profiler.

Differential Revision: https://phabricator.services.mozilla.com/D27963

--HG--
extra : moz-landing-system : lando
2019-04-17 21:29:19 +00:00
Barret Rennie
d9cf636b77 Bug 1544572 - Support composition recording for LayerManagerComposite r=mstange
Composition recording is now supported by the LayerManagerComposite using the
AsyncReadbackBuffer infrastructure provided by the compositor screenshots work.
This enables composition recording for LayerManagerComposite with all
compositors *except* BasicCompositor, since it does not always have a window
render target (it only keeps one around while the profiler is running and
collecting screenshots).

Differential Revision: https://phabricator.services.mozilla.com/D27820

--HG--
extra : moz-landing-system : lando
2019-04-17 21:31:37 +00:00
sotaro
82cce30aea Bug 1543616 - Call TextureHost::PrepareForUse() when mCompositableCount becomes from 0 to 1 r=nical
By Bug 1529870, the PrepareForUse() is called in WebRenderImageHost::SetCurrentTextureHost(). It works with single buffer mode android SurfaceTexture for WebGL. But it does not work well with video's SurfaceTexture, since multiple TextureHosts are received and a TextureHost might be skipped. The timing of mCompositableCount becomes from 0 to 1 could be used for calling PrepareForUse().

Differential Revision: https://phabricator.services.mozilla.com/D27044

--HG--
extra : moz-landing-system : lando
2019-04-12 17:00:05 +00:00
Jean-Yves Avenard
0545957805 Bug 1540581 - P7. Use Variant instead of Union/Enum. r=kats
It allows for use of default constructor/destructor and leaves no room to incorrectly modify the union members with a wrong type.

Differential Revision: https://phabricator.services.mozilla.com/D26061

--HG--
extra : moz-landing-system : lando
2019-04-11 12:37:06 +00:00
Jean-Yves Avenard
11ac9e9cf8 Bug 1540581 - P6. Tidy some C++ declarations in gfx/. r=gerald,jrmuizel
* Remove redundant virtual keywords
* Mark all destructors of inheriting classes as virtual for clarity
* Mark all classes without virtual destructor as final (exposed errors)
* Make destructor virtual where it needed to be (some were missing)
* Replace empty ({}) code declaration in header with = default
* Remove virtual unused methods

I probably missed some, it quickly became a rabbit hole.

Differential Revision: https://phabricator.services.mozilla.com/D26060

--HG--
extra : moz-landing-system : lando
2019-04-11 12:36:51 +00:00
Jean-Yves Avenard
3ae43eb506 Bug 1493898 - P6. Move YUVColorSpace definition in the gfx namespace. r=mattwoodrow.
YUVColorSpace is inseparable from the bit depth as the matrix coefficients to be calculated need the bit depth information.

So let's put the two types together. gfx namespace also makes more sense as that's where we find IntRect, IntSize and other.

The extent of the changes highlight how much similar data structures are duplicated across the code, to the point it's scary.

Differential Revision: https://phabricator.services.mozilla.com/D25347

--HG--
extra : moz-landing-system : lando
2019-04-11 12:41:33 +00:00
Matt Woodrow
7c9ef067b7 Bug 1538969 - Report nsDisplayVideo as being opaque when possible so that we can occlude content behind it. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D25189

--HG--
extra : moz-landing-system : lando
2019-04-10 08:08:26 +00:00
Matt Woodrow
75814e01be Bug 1538969 - Handle non-integer transforms when doing occlusions in PostProcessLayers. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D25186

--HG--
extra : moz-landing-system : lando
2019-04-10 08:08:24 +00:00
Cosmin Sabou
fa2d5b1cec Backed out 3 changesets (bug 1538969) for wpt reftests failures on transform3d-backface-visibility-001.
Backed out changeset c8e85a802c77 (bug 1538969)
Backed out changeset 911386e724bc (bug 1538969)
Backed out changeset 2332a2fb02fa (bug 1538969)

--HG--
extra : amend_source : 6f1ed1f9f2e978ab6c52a03cde73b225ff09448b
2019-04-09 08:52:20 +03:00
Matt Woodrow
541c8cc1c3 Bug 1538969 - Report nsDisplayVideo as being opaque when possible so that we can occlude content behind it. r=jya
Differential Revision: https://phabricator.services.mozilla.com/D25189

--HG--
extra : moz-landing-system : lando
2019-04-09 03:16:39 +00:00
Matt Woodrow
44deb304fd Bug 1538969 - Handle non-integer transforms when doing occlusions in PostProcessLayers. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D25186

--HG--
extra : moz-landing-system : lando
2019-04-09 03:16:27 +00:00
Sylvestre Ledru
03c8e8c2dd Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D26098

--HG--
extra : moz-landing-system : lando
2019-04-05 21:41:42 +00:00
Csoregi Natalia
ba58e936bd Backed out changeset 4ad80127f89f (bug 1519636) for bustage on MarkupMap.h and nsAccessibilityService.cpp. CLOSED TREE 2019-04-05 09:48:19 +03:00
Sylvestre Ledru
d1c1878603 Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D26098

--HG--
extra : moz-landing-system : lando
2019-04-04 21:36:16 +00:00
Narcis Beleuzu
24dbe577a5 Backed out changeset 389b6bbd76db (bug 1519636) for bustages on MarkupMap.h . CLOSED TREE 2019-04-05 00:27:56 +03:00
Sylvestre Ledru
399dbd28fe Bug 1519636 - clang-format-8: Reformat recent changes to the Google coding style r=Ehsan
clang-format-8 upstream had some improvements wrt macros
See: https://reviews.llvm.org/D33440
This is why the diff is bigger than usual

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D26098

--HG--
extra : moz-landing-system : lando
2019-04-04 20:12:23 +00:00
sotaro
817c9ec8c9 Bug 1529870 - Add handling of single buffer mode android SurfaceTexture r=nical
When SurfaceTexture is single buffer mode, UpdateTexImage() should be called only once for each publish. If UpdateTexImage() is called more than once, it causes hand on puglish side.

Differential Revision: https://phabricator.services.mozilla.com/D24483

--HG--
extra : moz-landing-system : lando
2019-04-03 22:05:27 +00:00
Sylvestre Ledru
ef0bfc3822 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D24168

--HG--
extra : moz-landing-system : lando
2019-03-31 15:12:55 +00:00