Commit Graph

33859 Commits

Author SHA1 Message Date
Bruce Mitchener
c41980d970 Bug 1557721 - Use or_insert_with where possible. r=kvark
[wrupdater] From https://github.com/servo/webrender/pull/3667

Depends on D34162

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

--HG--
extra : moz-landing-system : lando
2019-06-07 16:17:52 +00:00
Bruce Mitchener
8449544a47 Bug 1557721 - Remove redundant field names. r=kvark
[wrupdater] From https://github.com/servo/webrender/pull/3667

Depends on D34161

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

--HG--
extra : moz-landing-system : lando
2019-06-07 16:17:29 +00:00
Bruce Mitchener
8e8893bb16 Bug 1557721 - Use unwrap_or_else where possible. r=kvark
[wrupdater] From https://github.com/servo/webrender/pull/3667

Depends on D34160

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

--HG--
extra : moz-landing-system : lando
2019-06-07 16:17:07 +00:00
Bruce Mitchener
ef4c1180af Bug 1557721 - Remove identical conversion. r=kvark
[wrupdater] From https://github.com/servo/webrender/pull/3667

Depends on D34159

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

--HG--
extra : moz-landing-system : lando
2019-06-07 16:16:12 +00:00
Bruce Mitchener
5083295c77 Bug 1557721 - Remove unneeded return statement. r=kvark
[wrupdater] From https://github.com/servo/webrender/pull/3667

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

--HG--
extra : moz-landing-system : lando
2019-06-07 16:15:55 +00:00
Tarek Ziadé
2f870d3a3e Bug 1529023 - Enable threads on macOS for GetProcInfo r=jld,mstange
To run task_for_pid() on child processes, we need the child task port for
security reasons. This port can be obtained via a Mach IPC exchange.

This is what GeckoChildProcessHost::GetChildTask() provides, so we use it
in cocoa's version of GetProcInfo()

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

--HG--
extra : moz-landing-system : lando
2019-06-07 07:48:37 +00:00
Daniel Varga
851bd2386e Merge mozilla-central to autoland. on a CLOSED TREE 2019-06-07 19:24:42 +03:00
Daniel Varga
108b3fc423 Merge mozilla-inbound to mozilla-central. a=merge 2019-06-07 19:19:50 +03:00
Alexis Beingessner
a5a5beced5 Bug 1474294 - Add reftest for a box-shadow in perspective transform without preserve-3d. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D30980

--HG--
extra : moz-landing-system : lando
2019-06-07 14:40:30 +00:00
sotaro
e615d8edf3 Bug 1557257 - Rename KnowsCompositor* aForwarder to aKnowsCompositor r=nical
Differential Revision: https://phabricator.services.mozilla.com/D33928

--HG--
extra : moz-landing-system : lando
2019-06-07 12:27:05 +00:00
Daniel Varga
a05236937c Merge mozilla-central to autoland
--HG--
extra : rebase_source : ef48ee99e861f57c5e04f0230238ab31940e46b1
2019-06-07 12:58:55 +03:00
Daniel Varga
fe7dbedf22 Merge mozilla-inbound to mozilla-central. a=merge 2019-06-07 12:50:35 +03:00
Csoregi Natalia
eb1f65e802 Merge mozilla-central to mozilla-inbound. CLOSED TREE 2019-06-07 01:40:06 +03:00
Csoregi Natalia
0bbc9b655d Merge inbound to mozilla-central. a=merge 2019-06-07 00:52:54 +03:00
Boris Chiou
d1f4ea261c Bug 1555548 - Send other transform-like properties as non-animating animation into compositor. r=hiro
Not only animating transform-like properties, but also non-animating ones have
to be passed into the compositor, so the final transform matrix could
take them into account (on the compositor).

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

--HG--
extra : moz-landing-system : lando
2019-06-06 18:29:46 +00:00
Jeff Gilbert
224ede5084 Bug 1547193 - ANGLE cherry-pick environ solaris fix. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D34044

--HG--
extra : moz-landing-system : lando
2019-06-06 21:46:43 +00:00
Csoregi Natalia
df1edb3dc0 Merge mozilla-central to autoland. CLOSED TREE 2019-06-07 01:38:51 +03: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
Jeff Muizelaar
620457f85d Bug 1556421. Fix DrawTargetOffset::GetRect. r=mstange
We want to ensure that we include the underlying DrawTarget's origin.

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

--HG--
extra : moz-landing-system : lando
2019-06-06 14:11:10 +00:00
Jeff Muizelaar
5826a9c1f4 Bug 1556466. Fix into DrawTargetOffset::IntoLuminanceSource. r=mstange
Use the underlying mDrawTarget instead of the base class.

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

--HG--
extra : moz-landing-system : lando
2019-06-06 14:11:27 +00:00
Jeff Muizelaar
f86acccbe5 Bug 1556468. Use the DrawTarget's offset when calculating the clip. r=mstange
The code currently assumes an offset of 0,0

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

--HG--
extra : moz-landing-system : lando
2019-06-06 14:12:31 +00:00
Kartikaya Gupta
37ebd39e5c Bug 1550467 - Add a test for event untransforms. r=botond
This exercises the transforms propagated in bug 1530661, which is
WebRender-specific (because the events only have the target layers id
set on them if WR is enabled).

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

--HG--
extra : moz-landing-system : lando
2019-06-06 20:49:52 +00:00
Kartikaya Gupta
ff26c575c6 Bug 1550467 - Also install SimpleTest.is into the fission window. r=botond
I split this out so it's more obvious what pieces need to be modified
to add additional functions.

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

--HG--
extra : moz-landing-system : lando
2019-06-06 20:49:43 +00:00
Kartikaya Gupta
575727cc8b Bug 1550467 - Add a basic browser-mochitest for testing APZ+fission codepaths. r=botond,nika
This introduces the framework and helpers needed to do this kind of testing,
and adds a basic sanity test that ensures some basic functionality.

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

--HG--
extra : moz-landing-system : lando
2019-06-06 20:49:34 +00:00
Kartikaya Gupta
aef7a3eaeb Bug 1550467 - Ensure that listeners in chrome scripts are cleaned up. r=botond,jmaher
Apparently leaving these listeners registered can leak DOM windows
(in some circumstances that I don't fully comprehend) which causes
test failures when running on debug builds. At any rate, unregistering
listeners on cleanup seems like a good thing to do.

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

--HG--
extra : moz-landing-system : lando
2019-06-06 20:49:25 +00:00
Boris Zbarsky
89baee69d9 Bug 1557501. Stop using [array] in nsIPrefBranch. r=njn
Differential Revision: https://phabricator.services.mozilla.com/D34032

--HG--
extra : moz-landing-system : lando
2019-06-07 01:01:12 +00:00
shindli
f8c85e378a Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-06-06 13:11:16 +03:00
shindli
3caa33a7ea Merge inbound to mozilla-central. a=merge 2019-06-06 12:57:52 +03:00
Cameron McCormack
7db6869429 Bug 1490792 - Part 4: Perform OpenType sanitization OMT. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D33897

--HG--
extra : moz-landing-system : lando
2019-06-06 19:08:52 +00:00
Cameron McCormack
ffd40c5e51 Bug 1490792 - Part 3: Split some work out of LoadPlatformFont. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D33896

--HG--
extra : moz-landing-system : lando
2019-06-06 18:23:31 +00:00
Cameron McCormack
e908038f14 Bug 1490792 - Part 2: Make LoadPlatformFont length argument not a reference. r=jfkthame
We don't write to it.

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

--HG--
extra : moz-landing-system : lando
2019-06-06 18:23:29 +00:00
Cameron McCormack
2b49153d63 Bug 1490792 - Part 1: Move font type determination into SanitizeOpenTypeData. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D33894

--HG--
extra : moz-landing-system : lando
2019-06-06 18:23:27 +00:00
sotaro
82b76845fe Bug 1553969 - Do not disable WebRender at ImageBridgeChild when gecko uses WebRender r=nical
Differential Revision: https://phabricator.services.mozilla.com/D33753

--HG--
extra : moz-landing-system : lando
2019-06-06 02:17:22 +00:00
Nicolas Silva
c44ff5af9a Bug 1546894 - Keep track of current and begin points in path objects in case we'll create a builder from them. r=lsalzman
Because of the way the canvas 2D implementation juggles between path builders and paths, we have to keep track of current and first points in the path, in case a builder is created out of it.

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

--HG--
extra : source : c79b3af2395894b449731fccdd9eb006b4d0189e
2019-06-05 09:55:46 +02:00
sotaro
6680aadc04 Bug 1556340 - Make D3D11TextureData and DXGIYCbCrTextureData alive during host side usage with WebRender r=nical
By Bug 1555544 , it became clear that D3D11TextureData and DXGIYCbCrTextureData should not be deleted before calling RenderDXGITextureHostOGL::EnsureLockable() / RenderDXGITextureHostOGL::EnsureLockable().

With WebRender, the EnsureLockable()s are called on RenderThread asynchronously. Then for achieving the above, it is simpler just to keep D3D11TextureData and DXGIYCbCrTextureData alive during host side usage.

There is already a mechanism to do it. By using NotifyNotUsed, it could be done.

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

--HG--
extra : moz-landing-system : lando
2019-06-05 22:50:50 +00:00
Bas Schouten
44af4c9b25 Bug 1555098: Fall back to non-double buffering when double buffering swap chain creation fails in CompositorD3D11, the way we do in advanced layers. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D33745

--HG--
extra : rebase_source : 02000eeb042542b6e1c4900ceefca69ee6d8eabc
2019-06-05 06:39:45 +02:00
Ryan Hunt
d1d4eb916c Bug 1556557 - Remove BrowserChildBase. r=nika
This class is only inherited by BrowserChild and seems to be a remnant of
the B2G days.

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

--HG--
extra : rebase_source : 504b3185b4cf59bcd4150935b9569641fbf8f844
extra : source : 82604ba5659a292616a10d19ad3f977b3094b33e
extra : histedit_source : 24b70700a41aeac53e2f34bf1f190867ffb75af6
2019-06-03 16:04:46 -04:00
Ryan Hunt
298a301151 Bug 1556548 - Make RenderFrame an internal detail to BrowserParent. r=mattwoodrow,farre
Code outside of BrowserParent should just get the LayersId from a getter
and not worry about RenderFrame.

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

--HG--
extra : rebase_source : 63f9f9680a7cb16a18d9e56999e02a124aa63429
extra : source : e86839ca63260b09184755c98890fa8abf371530
extra : histedit_source : 34333f5f78ecf9b4f3e12c6175a6e81724a41fb2
2019-05-31 16:00:57 -05:00
Nicolas Silva
5e669cb7bb Bug 1546894 - Fix PathBuilderCapture::CurrentPoint when closing a path. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D32459

--HG--
extra : source : 6131723bf0cf1c96352176832f91bcbc8b3432e9
2019-05-24 14:25:47 +02:00
Nicolas Silva
082205e739 Bug 1546894 - Fix PathBuilderSkia::CurrentPoint. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D32456

--HG--
extra : source : 566648165de4b80550337e6052f46eba653f0328
2019-05-27 12:36:32 +02:00
Bruce Mitchener
50752727e1 Bug 1557183 - Fix typos. r=kats
[wrupdater] From https://github.com/servo/webrender/pull/3665
2019-06-05 20:30:20 -04:00
arthur.iakab
94d096ca36 Merge mozilla-central to mozilla-inbound 2019-06-06 01:06:38 +03:00
Kartikaya Gupta
be4391585f Bug 1556597 - Fix warnings in webrender_bindings in nightly rust. r=Gankro
Depends on D33782

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

--HG--
extra : moz-landing-system : lando
2019-06-05 14:06:25 +00:00
Kartikaya Gupta
8d93d33a0b Bug 1556597 - Run cargo fix on webrender. r=Gankro
This is the result of `cargo +nightly fix --all-features --all-targets`
using a recent rust nightly.

Depends on D33781

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

--HG--
extra : moz-landing-system : lando
2019-06-05 14:07:48 +00:00
Kartikaya Gupta
d46fd3203f Bug 1556597 - Fix workspace warnings. r=Gankro
These warnings have been around forever; unused things in the workspace
Cargo.toml file that just need removing.

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

--HG--
extra : moz-landing-system : lando
2019-06-05 14:05:32 +00:00
Jonathan Kew
d816e90844 Bug 1556991 - Remove the pref controlling WOFF2 support; it's always enabled. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D33777

--HG--
extra : moz-landing-system : lando
2019-06-05 13:47:26 +00:00
Jeff Muizelaar
fee767003f Bug 1556505. Handle offset surfaces in the other backends. r=rhunt
This brings DrawTargetCairo and DrawTargetD2D1 inline with DrawTargetSkia's
ability to handle SourceSurfaceOffset properly.

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

--HG--
extra : moz-landing-system : lando
2019-06-03 19:08:58 +00:00
Andrew Osmond
d639d2c5ac Bug 1435586 - Use static gfxPlatform methods directly instead of requiring initialization. r=kats
gfxPlatform::GetSourceSurfaceForSurface and CreateDrawTargetForSurface
are both static methods that we sometimes use via the pattern
gfxPlatform::GetPlatform()->... This is problematic because this forces
gfxPlatform to be initialized in the process, and in the GPU process, we
don't support this. It should be safe to call these methods without
initializing gfxPlatform, so this patch removes the GetPlatform() call.

GetSourceSurfaceForSurface may end up initializing gfxPlatform anyways,
depending on whether or not a DrawTarget was given. This should not be a
concern for the crashes observed in bug 1435586.

Differential Revision: https://phabricator.services.mozilla.com/D33785
2019-06-05 12:40:26 -04:00
Mihai Alexandru Michis
d07d090c31 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-06-05 12:59:10 +03:00
Connor Brewster
da4ad436ef Bug 1556590 - Display root render task instead of last render task in WebRender debugger r=gw
Differential Revision: https://phabricator.services.mozilla.com/D33582

--HG--
extra : moz-landing-system : lando
2019-06-04 20:52:29 +00:00
Lee Salzman
9b48977698 Bug 1556481 - check for DWrite failures in UnscaledFontDWrite::GetFontFileData. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D33585

--HG--
extra : moz-landing-system : lando
2019-06-04 09:26:11 +00:00
Dzmitry Malyshau
5fc1be5b39 Bug 1554502 - Track the reference frame of batched bounding boxes and enforce it in WR r=gw
Differential Revision: https://phabricator.services.mozilla.com/D33343

--HG--
extra : moz-landing-system : lando
2019-06-03 21:12:54 +00:00
Dan Glastonbury
f2af9f0231 Bug 1550640 - P2: Remove dead code resulting from refactoring of ItemRange. r=Gankro
Having `ItemRange` contain a byte slice means that the `display_list` and
`pipeline_id` don't need to be threaded through code that accesses items from
ItemRange.

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

--HG--
extra : moz-landing-system : lando
2019-06-04 05:53:05 +00:00
Dan Glastonbury
8cde33bc21 Bug 1550640 - P1: Refactor ItemRange to contain u8 slices for byte ranges. r=Gankro
This refactor is in preparation for P3.

When refactoring `next_raw()` to use `peek_from` instead of
`deserialize_in_place`, it became clear that `ItemRange` is holding a slice of
bytes from the incoming serialized display list and `peek_from` could be adapted
work directly on the byte slice.

It was also noticed that the `get()` interface was potentially unsafe; any
`ItemRange` can be passed into `get()` for any display list.

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

--HG--
extra : moz-landing-system : lando
2019-06-04 05:53:03 +00:00
Brindusan Cristian
9eb2f739c1 Merge inbound to mozilla-central. a=merge 2019-06-04 06:47:20 +03:00
Maya Rashish
cbc217134b Bug 1180498 - Tolerate a different major libGL.so on NetBSD as well r=jgilbert 2019-06-03 16:54:35 -07:00
sotaro
64ccd472e9 Bug 1556283 - Add more logs to RenderDXGITextureHostOGL and RenderDXGIYCbCrTextureHostOGL r=nical
Differential Revision: https://phabricator.services.mozilla.com/D33439

--HG--
extra : moz-landing-system : lando
2019-06-03 13:43:48 +00:00
Ryan VanderMeulen
e654402ba5 Bug 1554306 - Update HarfBuzz to version 2.5.1. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D32776

--HG--
rename : gfx/harfbuzz/src/hb-ot-name-language.cc => gfx/harfbuzz/src/hb-ot-name-language-static.hh
rename : gfx/harfbuzz/src/test-size-params.cc => gfx/harfbuzz/src/test-gpos-size-params.cc
rename : gfx/harfbuzz/src/test-would-substitute.cc => gfx/harfbuzz/src/test-gsub-would-substitute.cc
rename : gfx/harfbuzz/src/test-name-table.cc => gfx/harfbuzz/src/test-ot-name.cc
extra : moz-landing-system : lando
2019-06-03 15:11:49 +00:00
Ryan Hunt
267c1c0f34 Bug 1519546, part 8 - Also gather EffectsInfo for remote browsers with WebRender. r=jrmuizel
The nsDisplayListBuilder bits were added in the previous commit.

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

--HG--
extra : rebase_source : aec41ccaaab4c99b11ed94baf908d1ec61eaee31
extra : intermediate-source : bbcfdcc12774c1b8d78c6420614141382fed3d40
extra : source : 489c8d663f7f63ea32d3eb2226d45a84e51aabe8
2019-05-24 09:28:34 -05:00
Noemi Erli
e6c999f792 Backed out 2 changesets (bug 1554790) for failures in reftest-resolution.html
Backed out changeset 01f72d6cc13b (bug 1554790)
Backed out changeset 3a41c4ed8bf3 (bug 1554790)
2019-06-05 23:24:26 +03:00
Botond Ballo
6bdb9a362d Bug 1554790 - Use reftest-resolution where appropriate in APZ scrollbar rendering reftests. r=kats
With this change, the tests in question pass on desktop, except for
scrollbar-zoom-resolution-2.html which is annotated as failing.

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

--HG--
extra : moz-landing-system : lando
2019-05-31 18:26:04 +00:00
Csoregi Natalia
de697c360a Merge mozilla-central to mozilla-inbound. CLOSED TREE
--HG--
rename : layout/generic/nsFrameIdList.h => layout/generic/FrameIdList.h
2019-06-02 00:37:53 +03:00
Daniel Varga
f35d98dcc4 Merge mozilla-central to mozilla-inbound 2019-06-01 12:45:58 +03:00
arthur.iakab
3d92be0a81 Backed out 9 changesets (bug 1519546)for causing build bustages on nsLayoutUtils.cpp and browser chrome failures on nsLayoutUtils.cpp
Backed out changeset 04b0e8a22ee2 (bug 1519546)
Backed out changeset bbcfdcc12774 (bug 1519546)
Backed out changeset ea63d3d6b85f (bug 1519546)
Backed out changeset 3cb9ddccccf3 (bug 1519546)
Backed out changeset 49e4d0e4fc7c (bug 1519546)
Backed out changeset d31b7d33efc7 (bug 1519546)
Backed out changeset b4d5865e3307 (bug 1519546)
Backed out changeset 83576499bf77 (bug 1519546)
Backed out changeset f130b7ac0266 (bug 1519546)
2019-06-01 01:18:26 +03:00
sotaro
e9e8848ea1 Bug 1555544 - Remove calling TextureClient::CancelWaitForNotifyNotUsed() r=jgilbert
Flickering happened when SharedSurface_ANGLEShareHandle is destroyed before RenderDXGITextureHostOGL::EnsureLockable() is called on Render thread. RenderDXGITextureHostOGL failed at device->OpenSharedResource() . In this case, SharedSurface_ANGLEShareHandle failed to render. Then black was rendered.

If  TextureClient::CancelWaitForNotifyNotUsed() is not called, the refcount is kept until the host side ends its usage. The refcount is removed by CompositorBridgeChild::NotifyNotUsed().

Depends on D33265

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

--HG--
extra : moz-landing-system : lando
2019-05-31 12:35:42 +00:00
sotaro
16ce9c4a30 Bug 1555544 - Change function name from CancelWaitForRecycle() to CancelWaitForNotifyNotUsed() r=jgilbert
CancelWaitForRecycle() does not cancel wait for recycling. It cancels wait for end of usage on host side.

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

--HG--
extra : moz-landing-system : lando
2019-06-01 09:37:56 +00:00
Emilio Cobos Álvarez
21d5c25734 Bug 1553769 - Make nsIWidget::SetFocus infallible, and make it take an enum class. r=NeilDeakin
Only gtk returns failure ever, and nobody checks the result anyway.

Use an enum class so that it's clear from the caller what it means.

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

--HG--
extra : moz-landing-system : lando
2019-05-31 22:13:56 +00:00
Razvan Maries
d1e73ed3bc Backed out changeset 023c03347e6a (bug 1554183) for build bustages. CLOSED TREE 2019-05-31 18:29:47 +03:00
Randell Jesup
1c5db230d6 Bug 1554183: Save font data to startup cache immediately r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D33245

--HG--
extra : rebase_source : 53851b4761013c0c65e5e173e8367852729fd0c3
2019-05-24 21:38:47 -04:00
Randell Jesup
57fd4e550d Bug 1554183: Save font data to startup cache immediately r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D33245

--HG--
extra : rebase_source : e3d4445f3d9a24262127caca7a273846478e3c85
2019-05-24 21:38:47 -04:00
Ryan Hunt
11703ca543 Bug 1519546, part 8 - Also gather EffectsInfo for remote browsers with WebRender. r=jrmuizel
The nsDisplayListBuilder bits were added in the previous commit.

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

--HG--
extra : rebase_source : 62b7bd85df6475ba6e40fcf3d775daa2a3607f89
extra : source : 489c8d663f7f63ea32d3eb2226d45a84e51aabe8
2019-05-24 09:28:34 -05:00
Andrew Osmond
fc4ca8a7df Bug 1549965 - Enable GPU process by default on Linux if hardware compositing is used. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D33027
2019-05-31 09:20:37 -04:00
Narcis Beleuzu
2bc2cca589 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-31 07:07:40 +03:00
Barret Rennie
8923589429 Bug 1551735 - Clearly document the case of the RendererOGL receiving a new WebRenderCompositionRecorder while it has one r=kats
Differential Revision: https://phabricator.services.mozilla.com/D32356

--HG--
extra : moz-landing-system : lando
2019-05-31 00:31:52 +00:00
Barret Rennie
d9cb9952d0 Bug 1551735 - Record compositions in Web Render r=kats
Now that we have a suitable composition recorder infrastructure, it is just a
matter of plumbing the `WebRenderCompositionRecorder` from the
`CompositorBridgeParent` to the `RenderThread` to start recording frames.

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

--HG--
extra : moz-landing-system : lando
2019-05-31 00:31:39 +00:00
Barret Rennie
f5ab9bc353 Bug 1551735 - Add a thread-safe composition recorder for WebRender r=kvark,kats
Since WebRender does its rendering on a separate thread from the compositor
thread, we need a composition recorder that can be shared between threads.

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

--HG--
extra : moz-landing-system : lando
2019-05-31 00:31:24 +00:00
Barret Rennie
b526a32af7 Bug 1551735 - Expose bindings to the Renderer's composition recorder structures r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D32233

--HG--
extra : moz-landing-system : lando
2019-05-31 00:31:05 +00:00
Barret Rennie
ba01dca1d6 Bug 1551735 - Add a mode to the AsyncScreenshotGrabber to enable composition recording r=kvark
The AsyncScreenshotGrabber now can operate in two modes:

* `ProfilerScreenshots`, which does asynchronous scaling of the captured frames
  for inclusion in profiles by the Gecko Profiler; and
* `CompositionRecorder`, which does not do any scaling and is used for visual
  metrics computations.

The latter mode is exposed by on the `Renderer` via the `record_frame`,
`map_recorded_frame`, and `release_composition_recorder_structures` methods.

A different handle type (`RecordedFrameHandle`) is returned and consumed by
these functions, but they translate between `RecordedFrameHandle` and
`AsyncScreenshotHandle` when communicating with the underlying
`AsyncScreenshotGrabber`.

I considered making the `AsyncScreenshotGrabber` generic over its handle type,
but the extra cost of monomorphization just to change the handle type did not
seem worth it.

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

--HG--
extra : moz-landing-system : lando
2019-05-31 00:30:52 +00:00
Barret Rennie
5c8de993e0 Bug 1551735 - Split out screenshot grabbing infrasturcture into a new module r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D32523

--HG--
extra : moz-landing-system : lando
2019-05-31 00:30:37 +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
Narcis Beleuzu
7cf9aa5d4b Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-31 00:51:28 +03:00
Narcis Beleuzu
4938f48e9f Backed out changeset cb107011caf5 (bug 1549965) for causing assertion failures on gfxFeature.cpp . CLOSED TREE 2019-05-30 23:54:36 +03:00
Barret Rennie
5bbd89905f Bug 1555379 - Record content paint times for WebRender r=kats
The WebRenderBridgeChild now records whether or not it was painting content
while sending display lists to the WebRenderBridgeParent, allowing for
composition times to be recorded for WebRender.

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

--HG--
extra : moz-landing-system : lando
2019-05-30 21:08:01 +00:00
Barret Rennie
67fb95c52f Bug 1555379 - Document the various CompositionPayloadTypes r=bas
Differential Revision: https://phabricator.services.mozilla.com/D33055

--HG--
extra : moz-landing-system : lando
2019-05-30 20:38:52 +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
1725af146a Bug 1551735 - Clearly document the case of the RendererOGL receiving a new WebRenderCompositionRecorder while it has one r=kats
Differential Revision: https://phabricator.services.mozilla.com/D32356

--HG--
extra : moz-landing-system : lando
2019-05-30 20:19:56 +00:00
Barret Rennie
0177b781d0 Bug 1551735 - Record compositions in Web Render r=kats
Now that we have a suitable composition recorder infrastructure, it is just a
matter of plumbing the `WebRenderCompositionRecorder` from the
`CompositorBridgeParent` to the `RenderThread` to start recording frames.

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

--HG--
extra : moz-landing-system : lando
2019-05-30 20:19:48 +00:00
Barret Rennie
6e0b85ac76 Bug 1551735 - Add a thread-safe composition recorder for WebRender r=kvark,kats
Since WebRender does its rendering on a separate thread from the compositor
thread, we need a composition recorder that can be shared between threads.

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

--HG--
extra : moz-landing-system : lando
2019-05-30 20:32:42 +00:00
Barret Rennie
1bd07ea3f6 Bug 1551735 - Expose bindings to the Renderer's composition recorder structures r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D32233

--HG--
extra : moz-landing-system : lando
2019-05-30 20:18:23 +00:00
Barret Rennie
c40786fc58 Bug 1551735 - Add a mode to the AsyncScreenshotGrabber to enable composition recording r=kvark
The AsyncScreenshotGrabber now can operate in two modes:

* `ProfilerScreenshots`, which does asynchronous scaling of the captured frames
  for inclusion in profiles by the Gecko Profiler; and
* `CompositionRecorder`, which does not do any scaling and is used for visual
  metrics computations.

The latter mode is exposed by on the `Renderer` via the `record_frame`,
`map_recorded_frame`, and `release_composition_recorder_structures` methods.

A different handle type (`RecordedFrameHandle`) is returned and consumed by
these functions, but they translate between `RecordedFrameHandle` and
`AsyncScreenshotHandle` when communicating with the underlying
`AsyncScreenshotGrabber`.

I considered making the `AsyncScreenshotGrabber` generic over its handle type,
but the extra cost of monomorphization just to change the handle type did not
seem worth it.

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

--HG--
extra : moz-landing-system : lando
2019-05-30 20:18:09 +00:00
Barret Rennie
b5f01eed03 Bug 1551735 - Split out screenshot grabbing infrasturcture into a new module r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D32523

--HG--
extra : moz-landing-system : lando
2019-05-30 20:17:52 +00: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
Connor Brewster
e68c4f61a8 Bug 1536240 - Add debug option to wrench to output specified shader source r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D33088

--HG--
extra : moz-landing-system : lando
2019-05-30 19:28:10 +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
969a6a61ea Bug 1551735 - Clearly document the case of the RendererOGL receiving a new WebRenderCompositionRecorder while it has one r=kats
Differential Revision: https://phabricator.services.mozilla.com/D32356

--HG--
extra : moz-landing-system : lando
2019-05-29 21:53:44 +00:00
Barret Rennie
69f79b959b Bug 1551735 - Record compositions in Web Render r=kats
Now that we have a suitable composition recorder infrastructure, it is just a
matter of plumbing the `WebRenderCompositionRecorder` from the
`CompositorBridgeParent` to the `RenderThread` to start recording frames.

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

--HG--
extra : moz-landing-system : lando
2019-05-29 23:05:54 +00:00
Barret Rennie
75ce1caae2 Bug 1551735 - Add a thread-safe composition recorder for WebRender r=kvark,kats
Since WebRender does its rendering on a separate thread from the compositor
thread, we need a composition recorder that can be shared between threads.

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

--HG--
extra : moz-landing-system : lando
2019-05-30 13:06:43 +00:00
Barret Rennie
49e2a2721c Bug 1551735 - Expose bindings to the Renderer's composition recorder structures r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D32233

--HG--
extra : moz-landing-system : lando
2019-05-29 21:52:57 +00:00
Barret Rennie
b161b2b08f Bug 1551735 - Add a mode to the AsyncScreenshotGrabber to enable composition recording r=kvark
The AsyncScreenshotGrabber now can operate in two modes:

* `ProfilerScreenshots`, which does asynchronous scaling of the captured frames
  for inclusion in profiles by the Gecko Profiler; and
* `CompositionRecorder`, which does not do any scaling and is used for visual
  metrics computations.

The latter mode is exposed by on the `Renderer` via the `record_frame`,
`map_recorded_frame`, and `release_composition_recorder_structures` methods.

A different handle type (`RecordedFrameHandle`) is returned and consumed by
these functions, but they translate between `RecordedFrameHandle` and
`AsyncScreenshotHandle` when communicating with the underlying
`AsyncScreenshotGrabber`.

I considered making the `AsyncScreenshotGrabber` generic over its handle type,
but the extra cost of monomorphization just to change the handle type did not
seem worth it.

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

--HG--
extra : moz-landing-system : lando
2019-05-29 21:52:44 +00:00
Barret Rennie
4ca216e100 Bug 1551735 - Split out screenshot grabbing infrasturcture into a new module r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D32523

--HG--
extra : moz-landing-system : lando
2019-05-29 21:52:25 +00:00