Граф коммитов

1671 Коммитов

Автор SHA1 Сообщение Дата
Ciure Andrei 3de853018a Backed out 7 changesets (bug 1441308)for causing webrender build bustages CLOSED TREE
Backed out changeset 1764701d11d1 (bug 1441308)
Backed out changeset 32f7793dfd1a (bug 1441308)
Backed out changeset d8b4d6ec9b40 (bug 1441308)
Backed out changeset e2f83e4816dd (bug 1441308)
Backed out changeset baee8ada680f (bug 1441308)
Backed out changeset c09a51622e98 (bug 1441308)
Backed out changeset 737807563dd5 (bug 1441308)
2019-03-22 10:52:44 +02:00
Doug Thayer 278c2303da Bug 1441308 - Always send parent commands when sending mDestroyedActors r=kats,sotaro
If we try to send them separately as we were before, we can run into
cases where we try to destroy the actors and then send the OpRemoveTexture,
which crashes.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 23:15:42 +00:00
Doug Thayer 5b3a0454a4 Bug 1441308 - Core renderroot splitting changes r=kats,sotaro
This is a large patch that contains all of the core changes for
renderroot splitting.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 03:15:14 +00:00
Miko Mynttinen b9ba790058 Bug 1534805 - Unify FrameLayerBuilder and WR display list iterators r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D23230

--HG--
extra : moz-landing-system : lando
2019-03-21 03:15:16 +00:00
Barret Rennie d1cbdf8699 Bug 1536466 - Fix nsTDependentString with non-null-terminated buffer assertion r=bholley
`gecko_profiler_add_text_marker` was being passed a character pointer and a
length to construct a `nsDependentCString`. However, these values were coming
from a Rust `&str`, which is not null-terminated, causing an debug assertion to
be hit (and possible memory safety issues if mishandle the string). We now
construct an `nsDependentCSubstring` instead.

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

--HG--
extra : moz-landing-system : lando
2019-03-19 23:51:22 +00:00
sotaro b360f74a7a Bug 1535807 - Fix build failure by WebRenderTextureHostWrapper.h r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D23768

--HG--
extra : moz-landing-system : lando
2019-03-16 17:03:18 +00:00
Sylvestre Ledru 4aa92e3091 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D22514
2019-03-13 10:19:06 +01:00
Doug Thayer cb0fa9cf3b Bug 1441308 - Remove unnecessary StackingContextHelper params from clips r=kats
These aren't used, so I'm just getting rid of them as cleanup.

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

--HG--
extra : moz-landing-system : lando
2019-03-13 16:44:05 +00:00
sotaro c046c7a430 Bug 1531294 - Fix RecvEmptyTransaction() as to handle WebRenderTextureHostWrapper usage case
By Bug 1526213, WebRenderBridgeParent::RecvEmptyTransaction() does not handle a case that resource update is handled by WebRenderTextureHostWrapper. In this case, txn.IsResourceUpdatesEmpty() became true and the function thought there was no resource update and the function returned DidComposite soon to client side. Then it caused a heavy over production of SharedSurface_ANGLEShareHandle if GPU is not powerful.

Differential Revision: https://phabricator.services.mozilla.com/D22454
2019-03-12 21:48:34 +09:00
Dorel Luca d16991b48d Backed out changeset ec39fd695adb (bug 1531294) for webrender failures 2019-03-12 05:33:33 +02:00
sotaro ed7384e097 Bug 1531294 - Fix RecvEmptyTransaction() as to handle WebRenderTextureHostWrapper usage case r=mattwoodrow
By Bug 1526213, WebRenderBridgeParent::RecvEmptyTransaction() does not handle a case that resource update is handled by WebRenderTextureHostWrapper. In this case, txn.IsResourceUpdatesEmpty() became true and the function thought there was no resource update and the function returned DidComposite soon to client side. Then it caused a heavy over production of SharedSurface_ANGLEShareHandle if GPU is not powerful.

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

--HG--
extra : moz-landing-system : lando
2019-03-11 23:05:58 +00:00
Dorel Luca 23fb3d3791 Merge mozilla-inbound to mozilla-central. a=merge 2019-03-09 11:47:52 +02:00
Bobby Holley af5a99b2ad Bug 1532810 - Report long-running GL calls to the profiler. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D22202
2019-03-08 13:34:49 -08:00
shindli b483c4a572 Backed out 3 changesets (bug 1532810) for wrench bustages CLOSED TREE
Backed out changeset 866b6d9949a8 (bug 1532810)
Backed out changeset 1cb006402562 (bug 1532810)
Backed out changeset 24b9ae45e4fa (bug 1532810)
2019-03-08 19:41:32 +02:00
Bobby Holley c1cbf37e13 Bug 1532810 - Report long-running GL calls to the profiler. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D22202
2019-03-08 09:16:50 -08:00
sotaro d5c91bd359 Bug 1532457 - Gracefully handle non WebRenderTextureHost case r=nical
Differential Revision: https://phabricator.services.mozilla.com/D22256

--HG--
extra : moz-landing-system : lando
2019-03-07 16:15:17 +00:00
Miko Mynttinen 2ab05c6458 Bug 1526941 - Part 4: Remove mStoredList from nsDisplayTransform r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D21187

--HG--
extra : moz-landing-system : lando
2019-03-07 17:13:17 +00:00
Kartikaya Gupta b038cea28b Bug 1532917 - Remove dead codepath. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D22268

--HG--
extra : moz-landing-system : lando
2019-03-06 11:25:10 +00:00
sotaro ec92048ab6 Bug 1532510 - Add a check by IsDestroyed() to WebRenderLayerManager::DidComposite() r=nical
Differential Revision: https://phabricator.services.mozilla.com/D22044

--HG--
extra : moz-landing-system : lando
2019-03-06 10:25:01 +00:00
Ryan Hunt 36f945fb89 Bug 1531528 - Rename CrossProcessCompositorBridgeParent to ContentCompositorBridgeParent. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D21714

--HG--
rename : gfx/layers/ipc/CrossProcessCompositorBridgeParent.cpp => gfx/layers/ipc/ContentCompositorBridgeParent.cpp
rename : gfx/layers/ipc/CrossProcessCompositorBridgeParent.h => gfx/layers/ipc/ContentCompositorBridgeParent.h
extra : moz-landing-system : lando
2019-03-03 21:02:25 +00:00
Kartikaya Gupta fecd1d365c Bug 1511740 - Use nsDisplayAsyncZoom items to insert zooming animations in WR. r=jrmuizel,botond
The way we control APZ zooming in WebRender is by inserting an animation
property placeholder on a WR stacking context, and then having APZ
update the animation transform value with the proper matrix at composite
time.

Previously, the stacking context being used was the rootmost
stacking context in the content process. However this doesn't work for
zoomable content in the UI process (e.g. about:support), and after
recent changes, also wraps display items that should not be affected by
zoom (e.g. scrollbars or the background color item).

This patch moves the animation property placeholder so that it
corresponds to the newly added nsDisplayAsyncZoom display item, which
corrects both of the above problems and is conceptually in line with the
desired behaviour.

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

--HG--
extra : moz-landing-system : lando
2019-03-04 20:55:46 +00:00
Alex Gaynor 38a2064d1e Bug 1441651 - Part 2 - pass Shmem and ByteBuf by rvalref to Send* IPC methods; r=nika,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D19954

--HG--
extra : moz-landing-system : lando
2019-03-04 16:35:30 +00:00
Kartikaya Gupta 438fafd2a1 Bug 1532708. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D22756

--HG--
extra : moz-landing-system : lando
2019-03-08 20:00:37 +00:00
Jeff Muizelaar 70f8b5c221 Bug 1532088. Use ImageMask directly instead of duplicating it as WrImageMask. r=kats
WrImageMask is a relic from before we had good bindings generation.

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

--HG--
extra : moz-landing-system : lando
2019-03-02 21:48:06 +00:00
Dzmitry Malyshau 79ad259c7c Bug 1531217 - Document origin rewrite and framebuffer coordinates r=gw,nical
The goal of this change was to simplify the semantics of our document placement and split the logical elements inside (display list) from the actual screen rectangle occupied by a document.
To achieve that, we introduce the framebuffer space for things Y-flipped on screen.
We fix the frame outputs, so that they get produced on the first frame without loopback from the frame building to scene building.

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

--HG--
extra : moz-landing-system : lando
2019-03-01 17:16:59 +00:00
Csoregi Natalia b2672c85cf Backed out changeset 93f7dc3084a1 (bug 1531217) for wrench failures. CLOSED TREE 2019-03-01 18:48:30 +02:00
Dzmitry Malyshau a8d4f45a20 Bug 1531217 - Document origin rewrite and framebuffer coordinates r=gw,nical
The goal of this change was to simplify the semantics of our document placement and split the logical elements inside (display list) from the actual screen rectangle occupied by a document.
To achieve that, we introduce the framebuffer space for things Y-flipped on screen.
We fix the frame outputs, so that they get produced on the first frame without loopback from the frame building to scene building.

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

--HG--
extra : moz-landing-system : lando
2019-03-01 14:25:36 +00:00
Ryan Hunt 85ff4bdc33 Bug 1523969 part 8 - Move method definition inline comments to new line in 'gfx/'. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D21108

--HG--
extra : rebase_source : 48a4586f507891f3a2f0f970e9b9a0b15f0f3d61
2019-02-25 16:07:19 -06:00
Chris Peterson bac6d697ae Bug 1528881 - Part 6: gfx/layers: Make some global functions static. r=mattwoodrow
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

gfx/layers/composite/ContainerLayerComposite.cpp:132:6 [-Wmissing-prototypes] no previous prototype for function 'TransformLayerGeometry'
gfx/layers/composite/LayerManagerComposite.cpp:1409:6 [-Wmissing-prototypes] no previous prototype for function 'ComputeVisibleRegionForChildren'
gfx/layers/composite/LayerManagerComposite.cpp:234:6 [-Wmissing-prototypes] no previous prototype for function 'ShouldProcessLayer'
gfx/layers/composite/TiledContentHost.cpp:156:6 [-Wmissing-prototypes] no previous prototype for function 'UseTileTexture'
gfx/layers/ipc/CompositorBridgeParent.cpp:1827:6 [-Wmissing-prototypes] no previous prototype for function 'EraseLayerState'
gfx/layers/ipc/CompositorBridgeParent.cpp:2140:6 [-Wmissing-prototypes] no previous prototype for function 'UpdateIndirectTree'
gfx/layers/opengl/OGLShaderProgram.cpp:28:6 [-Wmissing-prototypes] no previous prototype for function 'AddUniforms'

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

--HG--
extra : source : f5653a8b1bc5a02cf899fe87cb3ebc9796b0b0b1
extra : histedit_source : 4f44f15098c42b4b1fa141de7b8593c128b58596
2019-02-17 14:25:01 -08:00
Timothy Nikkel 4a54583c19 Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-26 00:16:36 -06:00
Timothy Nikkel b2695b4b73 Backed out changeset 2bf33f573505 2019-02-25 22:48:35 -06:00
Timothy Nikkel b9d0354d8a Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-25 22:45:15 -06:00
Noemi Erli a50bfca7a3 Backed out 10 changesets (bug 1505871) for wrench bustages CLOSED TREE
Backed out changeset 045ab0ec3613 (bug 1505871)
Backed out changeset 6486435a048d (bug 1505871)
Backed out changeset 9be871042749 (bug 1505871)
Backed out changeset 0007feaf988d (bug 1505871)
Backed out changeset 3cb8fb01e77e (bug 1505871)
Backed out changeset 2fff213d97e3 (bug 1505871)
Backed out changeset 1ad20d485eca (bug 1505871)
Backed out changeset 0fd8742fa662 (bug 1505871)
Backed out changeset 1899600a7985 (bug 1505871)
Backed out changeset f9578d20e54e (bug 1505871)
2019-02-26 03:43:12 +02:00
Timothy Nikkel 17f5b2d751 Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-25 19:20:26 -06:00
Razvan Maries d7a2f49ed8 Merge mozilla-inbound to mozilla-central a=merge 2019-02-23 06:15:14 +02:00
sotaro 481ac38791 Bug 1529027 - Make WebRenderImageHost to hold WeakPtr<WebRenderBridgeParent> r=nical
Log is added to check if WrBridge mismatch happened.

Differential Revision: https://phabricator.services.mozilla.com/D20435
2019-02-23 08:59:53 +09:00
Jeff Gilbert 2f680de24a Bug 1528396 - More precise GL symbol loading. r=lsalzman
In particular, don't fallback to loading symbols from any loaded
library.

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

--HG--
extra : moz-landing-system : lando
2019-02-22 21:17:28 +00:00
Kartikaya Gupta c366cdefb9 Bug 1528987 - Send the gecko scroll offsets for scrollframes to WR. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D20667

--HG--
extra : moz-landing-system : lando
2019-02-21 21:06:25 +00:00
Cosmin Sabou 6872844079 Backed out changeset e74b9560a9d4 (bug 1528396) for causing mochitest webgl failures on test_pixel_pack_buffer. CLOSED TREE 2019-02-21 04:39:09 +02:00
Jeff Gilbert 878881b125 Bug 1528396 - More precise GL symbol loading. r=lsalzman
In particular, don't fallback to loading symbols from any loaded
library.

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

--HG--
extra : moz-landing-system : lando
2019-02-20 15:46:03 +00:00
sotaro c51309eab2 Bug 1529148 - Remove WebRenderImageHost::mUseAsyncImagePipeline r=nical
WebRenderImageHost::mUseAsyncImagePipeline is not used anymore.

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

--HG--
extra : moz-landing-system : lando
2019-02-20 08:27:09 +00:00
sotaro 087c420a72 Bug 1526213 - Enable WebRenderTextureHostWrapper for canvas r=nical
By using WebRenderTextureHostWrapper for canvas, we could avoid triggering frame build on WebRender backend if WebRenderTextureHostWrapper is only change.

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

--HG--
extra : moz-landing-system : lando
2019-02-18 09:33:32 +00:00
Csoregi Natalia 952908fda0 Merge mozilla-central to mozilla-inbound. CLOSED TREE 2019-02-17 00:14:07 +02:00
Sylvestre Ledru e0c61dafa5 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
Summary: # ignore-this-changeset

Reviewers: Ehsan

Reviewed By: Ehsan

Subscribers: emilio, jandem, bbouvier, jya

Bug #: 1519636

Differential Revision: https://phabricator.services.mozilla.com/D20062
2019-02-16 20:20:37 +01:00
Markus Stange ad3f9a53de Bug 1500692 - Add GRAPHICS subcategories. r=njn,mattwoodrow
r?njn only because this is the first example that adds any actual subcategories.

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

--HG--
extra : moz-landing-system : lando
2019-02-16 17:38:23 +00:00
Markus Stange 0b151b8c2b Bug 1500692 - Centralize profiling category definition and add infrastructure for subcategories. r=njn
The actual subcategories will be added in later patches, so that there are no
unused categories.

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

--HG--
extra : moz-landing-system : lando
2019-02-16 17:37:43 +00:00
Cosmin Sabou a4b19fcd61 Merge mozilla-inbound to mozilla-central. a=merge
--HG--
rename : browser/components/nsBrowserContentHandler.js => browser/components/BrowserContentHandler.jsm
2019-02-15 20:39:45 +02:00
Andrew Osmond bc9d7000be Bug 1527085 - Ensure we invalidate when the image request changes. r=jrmuizel
When the underlying image request (imgIRequest) changes for an image, we
need to ensure that we invalidate the cached WebRenderImageData such that
the image container stored therein is updated to be for the correct
image. This gets a little tricky because some display items store both
the current and previous images, and choose to display the latter if the
former is not yet ready. We also don't know what image the image
container belongs to. As such, we now compare the producer ID of the
current frame in the image container, to the expected producer ID of the
current image request. If they don't match, we must regenerate the
display list.

Differential Revision: https://phabricator.services.mozilla.com/D19699
2019-02-15 09:24:21 -05:00
Sylvestre Ledru 41d1d79094 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-02-15 08:15:57 +00:00
Nicolas Silva 2517b42c0b Bug 1527441 - Separate WebRenderImageData and WebRenderFallbackData. r=jrmuizel
This patch is an attempt to separate the two and avoid accidentally getting into an inconsistent state.
WebRenderImageData manages resources for images that are shared with webrender, while WebRenderFallbackData manages state to render content, in most case in a blob image.
if the fallback data needs to render into a TextureClient, it creates a WebRenderImageData to hold on to the shared texture, but does not inherit from it anymore.

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

--HG--
extra : moz-landing-system : lando
2019-02-13 09:21:11 +00:00
Razvan Maries dcc3ecb682 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2019-02-13 07:23:59 +02:00
Jeff Muizelaar ce64d00a94 Bug 1524661. Include perspective items as container items. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D19562

--HG--
extra : moz-landing-system : lando
2019-02-12 20:47:36 +00:00
Bas Schouten c57c0dec93 Bug 1444452: Implement screenshots on LayerManagerMLGPU. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D19323

--HG--
extra : rebase_source : 38fbabe7c4b1ea0c4627b02b527b848e0d415a0f
2019-02-11 02:31:24 +01:00
Lee Salzman e3498d57d3 Bug 1504230 - check for failure in GetFontKeyForScaledFont when building blobs. r=jrmuizel 2019-02-07 13:14:54 -05:00
Botond Ballo 03553a5195 Bug 1522714 - Propagate the 'is async zoom container' flag to HitTestingTreeNode. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D18111

--HG--
extra : moz-landing-system : lando
2019-02-06 22:05:24 +00:00
Kartikaya Gupta 919598b555 Bug 1506257 - Make the scrollbar animation id a Maybe. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D18669

--HG--
extra : moz-landing-system : lando
2019-02-06 20:00:08 +00:00
Alex Gaynor 0f01791ffc Bug 1512990 - Part 4 - remove declarations of Recv/Answer methods from IPDL protocol base class; r=froydnj
For cases where the class has direct calls (that is, we cast `this` to the
subclass before making the call) no longer declare Recv/Answer methods on the
base class at all. This should ensure that slots for them are not generated in
vtables, and also allow the derived class to choose the method signature (e.g.
whether it wants to take something by reference or by value).

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

--HG--
extra : moz-landing-system : lando
2019-02-06 15:58:43 +00:00
Alex Gaynor 75c7d1fa76 Bug 1512990 - Part 2 - implement direct calls in the IPDL compiler; r=froydnj
When calling a Recv/Alloc/Dealloc method on most types, cast `this` to the
derived class.

There is a heuristic to figure out what the correct derived type is. There is a
blacklist of types which we can't do direct calls on for the moment, as well as
an override for types that do work with direct calls but which don't match the
heuristic.

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

--HG--
extra : moz-landing-system : lando
2019-02-06 15:57:37 +00:00
Oana Pop Rus e00ea598e5 Merge inbound to mozilla-central. a=merge 2019-02-06 11:53:48 +02:00
Glenn Watson 43dfba16ac Bug 1524385 - Set the current clip chain on the stacking context item. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D18527

--HG--
extra : moz-landing-system : lando
2019-02-06 04:35:37 +00:00
Sylvestre Ledru 14486004b6 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-02-04 19:10:18 +00:00
Kartikaya Gupta 2030952357 Back out two changesets from bug 1523776 for causing multiple regressions. r=backout 2019-01-31 14:44:33 -05:00
Oana Pop Rus 707db23fae Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-01-31 12:00:53 +02:00
Matt Woodrow 681aa6716a Bug 1494408 - Clip groups to the transform clip to avoid bounds changes. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D17983

--HG--
extra : moz-landing-system : lando
2019-01-31 07:17:45 +00:00
Kartikaya Gupta c8c588bf80 Bug 1523776 - Don't set the parent link when creating a new clip chain. r=kvark
It turns out that setting the parent link on a clip chain is no longer
needed (and probably hasn't been since WR started applying a stacking
context's clip to the SC's contents). In fact it can produce incorrect
behaviour in some cases, because it doesn't match the semantics of
Gecko's clip chains. This removes the parent link on the Gecko side and
adds a test for this scenario.

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

--HG--
extra : moz-landing-system : lando
2019-01-30 21:39:38 +00:00
Daniel Varga 26142ed106 Backed out changeset e245d8fe0c6d (bug 1494408) for reftest failure at builds/worker/workspace/build/tests/reftest/tests/layout/reftests/invalidation on a CLOSED TREE
--HG--
extra : amend_source : e40d36a925b0a75570a900dca671f8ff68d273cc
2019-01-31 00:30:33 +02:00
Matt Woodrow 9da66b0f20 Bug 1494408 - Clip groups to the transform clip to avoid bounds changes. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D17983

--HG--
extra : moz-landing-system : lando
2019-01-30 19:32:07 +00:00
Daniel Varga 325e31df1d Merge mozilla-central to mozilla-inbound. a=merge 2019-01-31 06:30:06 +02:00
sotaro cdcb90df61 Bug 1523233 - Fix animation delete time r=kats
WebRenderBridgeParent::RemoveEpochDataPriorTo() does not check when animation is added by using epoch. Then there is a case that animation is deleted too early.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 20:11:59 +00:00
Emilio Cobos Álvarez a2231bd95c Bug 1498639 - Give WR the id of the scroll frame perspective scrolls relative to, and compute the right transform based on that. r=kats,kvark
I think this is as clean as it can get.

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

--HG--
extra : moz-landing-system : lando
2019-01-28 23:41:08 +00:00
Matt Woodrow 03dc2eebf4 Bug 1523214 - Don't invalidate for transform/opacity changes in WebRenderCommandBuilder since DLBI handles this already. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D17791

--HG--
extra : moz-landing-system : lando
2019-01-28 01:48:19 +00:00
Matt Woodrow becd2488d6 Bug 1520269 - Use the most recently skipped vsync id for catch up composites. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D17598

--HG--
extra : moz-landing-system : lando
2019-01-25 05:09:46 +00:00
Narcis Beleuzu dcd0b9d50a Merge inbound to mozilla-central. a=merge 2019-01-25 06:28:32 +02:00
Bobby Holley bf4d481f78 Bug 1522017 - Make picture caching explicit. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D17435
2019-01-24 10:44:35 -08:00
Bobby Holley 9d28f0c412 Bug 1522017 - Introduce StackingContextParams to avoid death by a thousand argument. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D17434
2019-01-24 10:44:35 -08:00
Lee Salzman c7d1539b15 Bug 1455848 - use paths for WR font handles on Windows. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D16896
2019-01-17 15:45:07 -05:00
Razvan Maries 6161f7cc5b Backed out 4 changesets (bug 1455848) for windows wrench failures. CLOSED TREE
Backed out changeset d56504db04ea (bug 1455848)
Backed out changeset f2279ecacb81 (bug 1455848)
Backed out changeset 44a36f0fe512 (bug 1455848)
Backed out changeset b8444f241aca (bug 1455848)
2019-01-24 00:56:40 +02:00
Lee Salzman bd0b2ed9f0 Bug 1455848 - use paths for WR font handles on Windows. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D16896
2019-01-17 15:45:07 -05:00
Narcis Beleuzu cec4872bf0 Backed out changeset 2bd66516b97a (bug 1494924) as per jrmuizel`s request. 2019-01-24 22:39:21 +02:00
Cosmin Sabou 67cc836522 Merge mozilla-central to mozilla-inbound. a=merge 2019-02-06 01:11:33 +02:00
Lee Salzman 9e135c5cd1 Bug 1524509 - track whether a WR stacking context is animated separately from whether it should rasterize locally. r=jrmuizel 2019-02-05 16:29:11 -05:00
Cosmin Sabou dad27b903a Merge mozilla-central to mozilla-inbound.
--HG--
rename : browser/base/content/test/urlbar/Panel.jsm => browser/components/urlbar/tests/browser/Panel.jsm
rename : browser/base/content/test/urlbar/authenticate.sjs => browser/components/urlbar/tests/browser/authenticate.sjs
rename : browser/base/content/test/urlbar/browser_URLBarSetURI.js => browser/components/urlbar/tests/browser/browser_URLBarSetURI.js
rename : browser/base/content/test/urlbar/browser_bug1025195_switchToTabHavingURI_aOpenParams.js => browser/components/urlbar/tests/browser/browser_bug1025195_switchToTabHavingURI_aOpenParams.js
rename : browser/base/content/test/urlbar/browser_bug562649.js => browser/components/urlbar/tests/browser/browser_bug562649.js
rename : browser/base/content/test/urlbar/browser_bug623155.js => browser/components/urlbar/tests/browser/browser_bug623155.js
rename : browser/base/content/test/urlbar/browser_bug783614.js => browser/components/urlbar/tests/browser/browser_bug783614.js
rename : browser/base/content/test/urlbar/browser_locationBarExternalLoad.js => browser/components/urlbar/tests/browser/browser_locationBarExternalLoad.js
rename : browser/base/content/test/urlbar/browser_moz_action_link.js => browser/components/urlbar/tests/browser/browser_moz_action_link.js
rename : browser/base/content/test/urlbar/browser_page_action_menu_add_search_engine.js => browser/components/urlbar/tests/browser/browser_page_action_menu_add_search_engine.js
rename : browser/base/content/test/urlbar/browser_page_action_menu_clipboard.js => browser/components/urlbar/tests/browser/browser_page_action_menu_clipboard.js
rename : browser/base/content/test/urlbar/browser_page_action_menu_share_mac.js => browser/components/urlbar/tests/browser/browser_page_action_menu_share_mac.js
rename : browser/base/content/test/urlbar/browser_page_action_menu_share_win.html => browser/components/urlbar/tests/browser/browser_page_action_menu_share_win.html
rename : browser/base/content/test/urlbar/browser_page_action_menu_share_win.js => browser/components/urlbar/tests/browser/browser_page_action_menu_share_win.js
rename : browser/base/content/test/urlbar/browser_populateAfterPushState.js => browser/components/urlbar/tests/browser/browser_populateAfterPushState.js
rename : browser/base/content/test/urlbar/browser_urlbarCopying.js => browser/components/urlbar/tests/browser/browser_urlbarCopying.js
rename : browser/base/content/test/urlbar/browser_urlbarEnter.js => browser/components/urlbar/tests/browser/browser_urlbarEnter.js
rename : browser/base/content/test/urlbar/browser_urlbarFocusedCmdK.js => browser/components/urlbar/tests/browser/browser_urlbarFocusedCmdK.js
rename : browser/base/content/test/urlbar/browser_urlbarHashChangeProxyState.js => browser/components/urlbar/tests/browser/browser_urlbarHashChangeProxyState.js
rename : browser/base/content/test/urlbar/browser_urlbarPlaceholder.js => browser/components/urlbar/tests/browser/browser_urlbarPlaceholder.js
rename : browser/base/content/test/urlbar/browser_urlbarRevert.js => browser/components/urlbar/tests/browser/browser_urlbarRevert.js
rename : browser/base/content/test/urlbar/browser_urlbarSearchSingleWordNotification.js => browser/components/urlbar/tests/browser/browser_urlbarSearchSingleWordNotification.js
rename : browser/base/content/test/urlbar/browser_urlbarUpdateForDomainCompletion.js => browser/components/urlbar/tests/browser/browser_urlbarUpdateForDomainCompletion.js
rename : browser/base/content/test/urlbar/browser_urlbar_blanking.js => browser/components/urlbar/tests/browser/browser_urlbar_blanking.js
rename : browser/base/content/test/urlbar/browser_urlbar_locationchange_urlbar_edit_dos.js => browser/components/urlbar/tests/browser/browser_urlbar_locationchange_urlbar_edit_dos.js
rename : browser/base/content/test/urlbar/browser_urlbar_remoteness_switch.js => browser/components/urlbar/tests/browser/browser_urlbar_remoteness_switch.js
rename : browser/base/content/test/urlbar/browser_urlbar_searchsettings.js => browser/components/urlbar/tests/browser/browser_urlbar_searchsettings.js
rename : browser/base/content/test/urlbar/browser_urlbar_whereToOpen.js => browser/components/urlbar/tests/browser/browser_urlbar_whereToOpen.js
rename : browser/base/content/test/urlbar/browser_wyciwyg_urlbarCopying.js => browser/components/urlbar/tests/browser/browser_wyciwyg_urlbarCopying.js
rename : browser/base/content/test/urlbar/dummy_page.html => browser/components/urlbar/tests/browser/dummy_page.html
rename : browser/base/content/test/urlbar/file_blank_but_not_blank.html => browser/components/urlbar/tests/browser/file_blank_but_not_blank.html
rename : browser/base/content/test/urlbar/file_bug562649.html => browser/components/urlbar/tests/browser/file_bug562649.html
rename : browser/base/content/test/urlbar/file_urlbar_edit_dos.html => browser/components/urlbar/tests/browser/file_urlbar_edit_dos.html
rename : browser/base/content/test/urlbar/head.js => browser/components/urlbar/tests/browser/head-common.js
rename : browser/base/content/test/urlbar/moz.png => browser/components/urlbar/tests/browser/moz.png
rename : browser/base/content/test/urlbar/page_action_menu_add_search_engine_0.xml => browser/components/urlbar/tests/browser/page_action_menu_add_search_engine_0.xml
rename : browser/base/content/test/urlbar/page_action_menu_add_search_engine_1.xml => browser/components/urlbar/tests/browser/page_action_menu_add_search_engine_1.xml
rename : browser/base/content/test/urlbar/page_action_menu_add_search_engine_2.xml => browser/components/urlbar/tests/browser/page_action_menu_add_search_engine_2.xml
rename : browser/base/content/test/urlbar/page_action_menu_add_search_engine_many.html => browser/components/urlbar/tests/browser/page_action_menu_add_search_engine_many.html
rename : browser/base/content/test/urlbar/page_action_menu_add_search_engine_one.html => browser/components/urlbar/tests/browser/page_action_menu_add_search_engine_one.html
rename : browser/base/content/test/urlbar/page_action_menu_add_search_engine_same_names.html => browser/components/urlbar/tests/browser/page_action_menu_add_search_engine_same_names.html
rename : browser/base/content/test/urlbar/print_postdata.sjs => browser/components/urlbar/tests/browser/print_postdata.sjs
rename : browser/base/content/test/urlbar/redirect_bug623155.sjs => browser/components/urlbar/tests/browser/redirect_bug623155.sjs
rename : browser/base/content/test/urlbar/searchSuggestionEngine.sjs => browser/components/urlbar/tests/browser/searchSuggestionEngine.sjs
rename : browser/base/content/test/urlbar/searchSuggestionEngine.xml => browser/components/urlbar/tests/browser/searchSuggestionEngine.xml
rename : browser/base/content/test/urlbar/searchSuggestionEngine2.xml => browser/components/urlbar/tests/browser/searchSuggestionEngine2.xml
rename : browser/base/content/test/urlbar/searchSuggestionEngineSlow.xml => browser/components/urlbar/tests/browser/searchSuggestionEngineSlow.xml
rename : browser/base/content/test/urlbar/slow-page.sjs => browser/components/urlbar/tests/browser/slow-page.sjs
rename : browser/base/content/test/urlbar/test_wyciwyg_copying.html => browser/components/urlbar/tests/browser/test_wyciwyg_copying.html
rename : browser/base/content/test/urlbar/urlbarAddonIframe.js => browser/components/urlbar/tests/browser/urlbarAddonIframe.js
rename : browser/base/content/test/urlbar/urlbarAddonIframeContentScript.js => browser/components/urlbar/tests/browser/urlbarAddonIframeContentScript.js
rename : browser/base/content/test/urlbar/.eslintrc.js => browser/components/urlbar/tests/legacy/.eslintrc.js
rename : browser/base/content/test/urlbar/browser_action_keyword.js => browser/components/urlbar/tests/legacy/browser_action_keyword.js
rename : browser/base/content/test/urlbar/browser_action_keyword_override.js => browser/components/urlbar/tests/legacy/browser_action_keyword_override.js
rename : browser/base/content/test/urlbar/browser_action_searchengine.js => browser/components/urlbar/tests/legacy/browser_action_searchengine.js
rename : browser/base/content/test/urlbar/browser_action_searchengine_alias.js => browser/components/urlbar/tests/legacy/browser_action_searchengine_alias.js
rename : browser/base/content/test/urlbar/browser_autocomplete_a11y_label.js => browser/components/urlbar/tests/legacy/browser_autocomplete_a11y_label.js
rename : browser/base/content/test/urlbar/browser_autocomplete_autoselect.js => browser/components/urlbar/tests/legacy/browser_autocomplete_autoselect.js
rename : browser/base/content/test/urlbar/browser_autocomplete_cursor.js => browser/components/urlbar/tests/legacy/browser_autocomplete_cursor.js
rename : browser/base/content/test/urlbar/browser_autocomplete_edit_completed.js => browser/components/urlbar/tests/legacy/browser_autocomplete_edit_completed.js
rename : browser/base/content/test/urlbar/browser_autocomplete_enter_race.js => browser/components/urlbar/tests/legacy/browser_autocomplete_enter_race.js
rename : browser/base/content/test/urlbar/browser_autocomplete_no_title.js => browser/components/urlbar/tests/legacy/browser_autocomplete_no_title.js
rename : browser/base/content/test/urlbar/browser_autocomplete_readline_navigation.js => browser/components/urlbar/tests/legacy/browser_autocomplete_readline_navigation.js
rename : browser/base/content/test/urlbar/browser_autocomplete_tag_star_visibility.js => browser/components/urlbar/tests/legacy/browser_autocomplete_tag_star_visibility.js
rename : browser/base/content/test/urlbar/browser_bug1003461-switchtab-override.js => browser/components/urlbar/tests/legacy/browser_bug1003461-switchtab-override.js
rename : browser/base/content/test/urlbar/browser_bug1024133-switchtab-override-keynav.js => browser/components/urlbar/tests/legacy/browser_bug1024133-switchtab-override-keynav.js
rename : browser/base/content/test/urlbar/browser_bug1070778.js => browser/components/urlbar/tests/legacy/browser_bug1070778.js
rename : browser/base/content/test/urlbar/browser_bug1104165-switchtab-decodeuri.js => browser/components/urlbar/tests/legacy/browser_bug1104165-switchtab-decodeuri.js
rename : browser/base/content/test/urlbar/browser_bug1225194-remotetab.js => browser/components/urlbar/tests/legacy/browser_bug1225194-remotetab.js
rename : browser/base/content/test/urlbar/browser_bug304198.js => browser/components/urlbar/tests/legacy/browser_bug304198.js
rename : browser/base/content/test/urlbar/browser_bug556061.js => browser/components/urlbar/tests/legacy/browser_bug556061.js
rename : browser/base/content/test/urlbar/browser_canonizeURL.js => browser/components/urlbar/tests/legacy/browser_canonizeURL.js
rename : browser/base/content/test/urlbar/browser_dragdropURL.js => browser/components/urlbar/tests/legacy/browser_dragdropURL.js
rename : browser/base/content/test/urlbar/browser_locationBarCommand.js => browser/components/urlbar/tests/legacy/browser_locationBarCommand.js
rename : browser/base/content/test/urlbar/browser_new_tab_urlbar_reset.js => browser/components/urlbar/tests/legacy/browser_new_tab_urlbar_reset.js
rename : browser/base/content/test/urlbar/browser_page_action_menu.js => browser/components/urlbar/tests/legacy/browser_page_action_menu.js
rename : browser/base/content/test/urlbar/browser_pasteAndGo.js => browser/components/urlbar/tests/legacy/browser_pasteAndGo.js
rename : browser/base/content/test/urlbar/browser_removeUnsafeProtocolsFromURLBarPaste.js => browser/components/urlbar/tests/legacy/browser_removeUnsafeProtocolsFromURLBarPaste.js
rename : browser/base/content/test/urlbar/browser_search_favicon.js => browser/components/urlbar/tests/legacy/browser_search_favicon.js
rename : browser/base/content/test/urlbar/browser_tabMatchesInAwesomebar.js => browser/components/urlbar/tests/legacy/browser_tabMatchesInAwesomebar.js
rename : browser/base/content/test/urlbar/browser_tabMatchesInAwesomebar_perwindowpb.js => browser/components/urlbar/tests/legacy/browser_tabMatchesInAwesomebar_perwindowpb.js
rename : browser/base/content/test/urlbar/browser_urlbarAboutHomeLoading.js => browser/components/urlbar/tests/legacy/browser_urlbarAboutHomeLoading.js
rename : browser/base/content/test/urlbar/browser_urlbarAddonIframe.js => browser/components/urlbar/tests/legacy/browser_urlbarAddonIframe.js
rename : browser/base/content/test/urlbar/browser_urlbarAutoFillTrimURLs.js => browser/components/urlbar/tests/legacy/browser_urlbarAutoFillTrimURLs.js
rename : browser/base/content/test/urlbar/browser_urlbarAutofillPreserveCase.js => browser/components/urlbar/tests/legacy/browser_urlbarAutofillPreserveCase.js
rename : browser/base/content/test/urlbar/browser_urlbarDecode.js => browser/components/urlbar/tests/legacy/browser_urlbarDecode.js
rename : browser/base/content/test/urlbar/browser_urlbarDelete.js => browser/components/urlbar/tests/legacy/browser_urlbarDelete.js
rename : browser/base/content/test/urlbar/browser_urlbarEnterAfterMouseOver.js => browser/components/urlbar/tests/legacy/browser_urlbarEnterAfterMouseOver.js
rename : browser/base/content/test/urlbar/browser_urlbarKeepStateAcrossTabSwitches.js => browser/components/urlbar/tests/legacy/browser_urlbarKeepStateAcrossTabSwitches.js
rename : browser/base/content/test/urlbar/browser_urlbarOneOffs.js => browser/components/urlbar/tests/legacy/browser_urlbarOneOffs.js
rename : browser/base/content/test/urlbar/browser_urlbarOneOffs_searchSuggestions.js => browser/components/urlbar/tests/legacy/browser_urlbarOneOffs_searchSuggestions.js
rename : browser/base/content/test/urlbar/browser_urlbarOneOffs_settings.js => browser/components/urlbar/tests/legacy/browser_urlbarOneOffs_settings.js
rename : browser/base/content/test/urlbar/browser_urlbarPrivateBrowsingWindowChange.js => browser/components/urlbar/tests/legacy/browser_urlbarPrivateBrowsingWindowChange.js
rename : browser/base/content/test/urlbar/browser_urlbarRaceWithTabs.js => browser/components/urlbar/tests/legacy/browser_urlbarRaceWithTabs.js
rename : browser/base/content/test/urlbar/browser_urlbarSearchFunction.js => browser/components/urlbar/tests/legacy/browser_urlbarSearchFunction.js
rename : browser/base/content/test/urlbar/browser_urlbarSearchSuggestions.js => browser/components/urlbar/tests/legacy/browser_urlbarSearchSuggestions.js
rename : browser/base/content/test/urlbar/browser_urlbarSearchSuggestions_opt-out.js => browser/components/urlbar/tests/legacy/browser_urlbarSearchSuggestions_opt-out.js
rename : browser/base/content/test/urlbar/browser_urlbarSearchTelemetry.js => browser/components/urlbar/tests/legacy/browser_urlbarSearchTelemetry.js
rename : browser/base/content/test/urlbar/browser_urlbarStop.js => browser/components/urlbar/tests/legacy/browser_urlbarStop.js
rename : browser/base/content/test/urlbar/browser_urlbarStopSearchOnSelection.js => browser/components/urlbar/tests/legacy/browser_urlbarStopSearchOnSelection.js
rename : browser/base/content/test/urlbar/browser_urlbarTokenAlias.js => browser/components/urlbar/tests/legacy/browser_urlbarTokenAlias.js
rename : browser/base/content/test/urlbar/browser_urlbar_autoFill_backspaced.js => browser/components/urlbar/tests/legacy/browser_urlbar_autoFill_backspaced.js
rename : browser/base/content/test/urlbar/browser_urlbar_canonize_on_autofill.js => browser/components/urlbar/tests/legacy/browser_urlbar_canonize_on_autofill.js
rename : browser/base/content/test/urlbar/browser_urlbar_remove_match.js => browser/components/urlbar/tests/legacy/browser_urlbar_remove_match.js
rename : browser/base/content/test/urlbar/browser_urlbar_search_no_speculative_connect_with_client_cert.js => browser/components/urlbar/tests/legacy/browser_urlbar_search_no_speculative_connect_with_client_cert.js
rename : browser/base/content/test/urlbar/browser_urlbar_search_speculative_connect.js => browser/components/urlbar/tests/legacy/browser_urlbar_search_speculative_connect.js
rename : browser/base/content/test/urlbar/browser_urlbar_search_speculative_connect_engine.js => browser/components/urlbar/tests/legacy/browser_urlbar_search_speculative_connect_engine.js
rename : browser/base/content/test/urlbar/browser_urlbar_search_speculative_connect_mousedown.js => browser/components/urlbar/tests/legacy/browser_urlbar_search_speculative_connect_mousedown.js
rename : browser/base/content/test/urlbar/browser_urlbar_stop_pending.js => browser/components/urlbar/tests/legacy/browser_urlbar_stop_pending.js
extra : rebase_source : fbf080c3d6caf9e4e501aebc4c085fe8babc3e27
2019-01-22 06:01:16 +02:00
Jeff Muizelaar 98ad049f2d Bug 1494924. Set the visible area of the blob to GetBuildingRect. r=mattwoodrow
This lets us get some of the advantages of clipped blobs by drawing less of the
fallback blob while still not needing to rerecord and redraw the blob
completely during scrolling because of the changing clip rect. It drops
the number of tiles requested on a reduced test case reduced from the Googled
doc from 60 to a much more reasonable number.

Differential Revision: https://phabricator.services.mozilla.com/D17180
2019-01-21 23:00:28 -05:00
Jeff Muizelaar 4760725faa Bug 1494924. SetPaintRect to GetBuildingRect(). r=mattwoodrow
Instead of setting the item PaintRect to paintBounds we intersect it with the
BuildingRect. This properly reduces the size based on clips and gives a big
performance improvement for clipped nsDisplayFilter items because we call
CreateSimiliar surface for the size of building rect instead of the bounds of
the item.

Differential Revision: https://phabricator.services.mozilla.com/D17179
2019-01-21 22:59:47 -05:00
Jeff Muizelaar da754b61b0 Bug 1494924. Redo the calculation of paintRect. r=mattwoodrow
This changes the calculation to match what we do for SVG blobs.
Notably, it takes the residual into account when computing the area
we want to paint into. This makes a difference if the fallback
is happening at a fractional offset.

Differential Revision: https://phabricator.services.mozilla.com/D17178
2019-01-21 22:59:06 -05:00
Sylvestre Ledru 755a1a7c2f Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-01-21 14:49:22 +00:00
Matt Woodrow 371c7f7819 Bug 1477366 - Always make SVG/CSS filters active within blobs when possible. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D16146

--HG--
extra : moz-landing-system : lando
2019-01-21 20:05:20 +00:00
Jeff Muizelaar 3d84f91365 Bug 1521354. Reorganize intro of DoGroupingForDisplayList a bit to make more readable. 2019-01-19 22:48:34 -05:00
Cosmin Sabou 7ccc9d8b0b Merge mozilla-inbound to mozilla-central. a=merge 2019-01-19 11:57:49 +02:00
Andrew Osmond fde57ca333 Bug 1520158 - Avoid scene rebuilding for image frame updates if possible. r=jrmuizel
We already avoid scene rebuilding for animated image frame updates, but
we can easily apply this to still images. If the decoding is happening
slowly and in chunks for some reason (really large image, slow network),
then we may save some work.
2019-01-18 22:21:30 -05:00
Greg Tatum 7042c8f1c3 Bug 1520526 - Add categories to all profiler markers; r=mstange
This commit adds categories to all markers. This way the profiler's
marker categories and frame label categories agree. There are a few
duplicate category properties on some of the marker payloads, but
this could be cleaned up in a follow-up if needed.

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

--HG--
extra : moz-landing-system : lando
2019-01-18 15:40:15 +00:00
Emilio Cobos Álvarez 4a8ff157a5 Bug 1520664 - Cleanup ReferenceFrame so that each of them has a single matrix. r=kvark
The only thing using both was perspective, but that's not really needed with the current setup.

This more closely matches Gecko, too.

Differential Revision: https://phabricator.services.mozilla.com/D16764
2019-01-17 21:13:07 +01:00
Brindusan Cristian ac9bb930c9 Backed out changeset bbc57e229df6 (bug 1520664) for webrender bustages. CLOSED TREE 2019-01-17 19:20:00 +02:00
Emilio Cobos Álvarez 3fe4fef309 Bug 1520664 - Bug 1498639 - Cleanup ReferenceFrame so that each of them has a single matrix. r=kvark
The only thing using both was perspective, but that's not really needed with the current setup.

This more closely matches Gecko, too.

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

--HG--
extra : moz-landing-system : lando
2019-01-17 16:08:35 +00:00
Sylvestre Ledru 47a5dd1fb8 Bug 1519636 - Reformat everything to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-01-16 08:50:07 +00:00
Daniel Varga 55006aaaec Merge mozilla-inbound to mozilla-central. a=merge 2019-01-16 06:49:11 +02:00
Jeff Muizelaar 079ff97c76 Bug 1519499. Only use a nsRegion when needing during ComputeGeometryChange clippedBounds. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D16597

--HG--
extra : moz-landing-system : lando
2019-01-15 21:15:32 +00:00
Botond Ballo d5f06efae5 Bug 1509575 - Expose the isFirstPaint flag on LayerManager. r=kats
So that it's easily available during painting.

The flag is set based on nsIPresShell::mIsFirstPaint, but the pres shell
flag is cleared at the beginning of the paint, so we can't query it from
the pres shell during the paint.

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

--HG--
extra : moz-landing-system : lando
2019-01-15 01:29:38 +00:00
Andrew Osmond 271a497cab Bug 1516011 - Part 1. Ensure wrapped shared surfaces are retained for blob rasterization. r=jrmuizel
References to shared surfaces are already kept alive for the blob in the
content process, and it also ensures an image key is created to ensure
any release of the surface is delayed until the next epoch. Wrapped
shared surfaces (when used in an animation which is recycling its
surfaces) did not get an image key created which this patch corrects.

Differential Revision: https://phabricator.services.mozilla.com/D16191
2019-01-14 13:21:57 -05:00
Andrew Osmond 42e20bac8f Bug 1494062 - Part 2. Ensure blob image dirty rects are not clipped too small by containers. r=jrmuizel
If an item in a blob image gets a new parent container which clips it to
a smaller area than it was previously, we need to ensure the dirty rect
does not take into account the new clip when determining the old
intersection area. Instead now all old rects for an image are clipped to
the image bounds, rather than the image bounds clipped to the aggregate
of the ancestor containers.

Differential Revision: https://phabricator.services.mozilla.com/D16855
2019-01-18 07:59:56 -05:00
Margareta Eliza Balazs 9dda825205 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-01-18 12:31:59 +02:00
Ehsan Akhgari e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Ehsan Akhgari 06c3d29113 Bug 1521000 - Part 1: Reformat the tree to ensure everything is formatted correctly with clang-format r=sylvestre
Summary: # ignore-this-changeset

Reviewers: sylvestre

Reviewed By: sylvestre

Subscribers: reviewbot, emilio, jandem, bbouvier, karlt, jya

Bug #: 1521000

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

--HG--
extra : histedit_source : 4add583bfa729ccc1aef934629ed45ff095189b0
2019-01-18 10:12:56 +01:00
Andrew Osmond 6d9401a9e6 Bug 1453747 - Use rounded dest rect in simplified image decode size calculations for WebRender. r=mstange
We are using the unrounded dest rect to calculate the image decode size
in ComputeImageContainerDrawingParameters, while passing the rounded
dest rect to WebRender. This mismatch causes images to be decoded to one
size and display at another, cause some visual distortions. Using the
correct rect seems to allow us to remove the extra snapping logic added
to work around this.

At this time, how we snap is different between WebRender and
non-WebRender in general. This patch will likely morph again once we
bring the two models closer together.

Differential Revision: https://phabricator.services.mozilla.com/D15739
2019-01-15 16:36:42 -05:00
Gurzau Raul 90dd635403 Backed out 2 changesets (bug 1494062) for failing at /tests/gfx/tests/crashtests/1494062.html on a CLOSED TREE
Backed out changeset 50f859a24037 (bug 1494062)
Backed out changeset 23b890a3fc78 (bug 1494062)
2019-01-17 23:07:36 +02:00
Andrew Osmond 3be4c71d8e Bug 1494062 - Part 2. Ensure blob image dirty rects are not clipped too small by containers. r=jrmuizel
If an item in a blob image gets a new parent container which clips it to
a smaller area than it was previously, we need to ensure the dirty rect
does not take into account the new clip when determining the old
intersection area. Instead now all old rects for an image are clipped to
the image bounds, rather than the image bounds clipped to the aggregate
of the ancestor containers.

Differential Revision: https://phabricator.services.mozilla.com/D16855
2019-01-17 14:29:41 -05:00
Narcis Beleuzu 7d7aca6a93 Merge inbound to mozilla-central. a=merge 2019-01-12 11:40:44 +02:00
Jeff Muizelaar 22baed2b58 Bug 1519444. Don't enforce a minimum size for blobs. r=mstange
WebRender can handle small image without much overhead. Allowing
small images will give us more predictable behaviour because
we don't end up merging things unneccessarily.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 19:43:32 +00:00
Andreea Pavel 2a44f0abe0 Backed out 2 changesets (bug 1509575) for failing wpt at css/cssom-view/scroll-behavior-main-frame-root.html on a CLOSED TREE
Backed out changeset 245d6855cd3b (bug 1509575)
Backed out changeset 7dcfa876f76c (bug 1509575)
2019-01-11 09:08:19 +02:00
Botond Ballo e98d64e015 Bug 1509575 - Expose the isFirstPaint flag on LayerManager. r=kats
So that it's easily available during painting.

The flag is set based on nsIPresShell::mIsFirstPaint, but the pres shell
flag is cleared at the beginning of the paint, so we can't query it from
the pres shell during the paint.

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

--HG--
extra : moz-landing-system : lando
2019-01-11 04:21:20 +00:00
Dorel Luca 0988563908 Backed out 2 changesets (bug 1516011) for build bustge in /build/build/src/gfx/layers/wr/WebRenderCommandBuilder.cpp
Backed out changeset 3c5fcd8a2f4a (bug 1516011)
Backed out changeset c74c81fe8dcb (bug 1516011)
2019-01-12 00:06:20 +02:00
Andrew Osmond f1fda3c992 Bug 1516011 - Part 1. Ensure wrapped shared surfaces are retained for blob rasterization. r=jrmuizel
References to shared surfaces are already kept alive for the blob in the
content process, and it also ensures an image key is created to ensure
any release of the surface is delayed until the next epoch. Wrapped
shared surfaces (when used in an animation which is recycling its
surfaces) did not get an image key created which this patch corrects.

Differential Revision: https://phabricator.services.mozilla.com/D16191
2019-01-11 16:21:17 -05:00
Emilio Cobos Álvarez b7102def68 Bug 1514384 - Pass the current clip chain id instead of clipping to the filter bounds. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D16206
2019-01-11 22:19:19 +01:00
Jeff Muizelaar 17b5ec3dd2 Bug 1509182. Switch from using WrFilterOp to using FilterOp directly. r=nical
This avoids code duplication and simplifies push_stacking_context

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

--HG--
extra : moz-landing-system : lando
2019-01-10 19:41:08 +00:00
Cosmin Sabou 88993e172c Backed out changeset 10dedfde1015 (bug 1509182) for causing build bustages.
--HG--
extra : rebase_source : 4389819cbb88af16724480f571b0abcd027015ba
2019-01-10 20:52:49 +02:00
Jeff Muizelaar ef9bb810f0 Bug 1509182. Switch from using WrFilterOp to using FilterOp directly. r=nical
This avoids code duplication and simplifies push_stacking_context

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

--HG--
extra : moz-landing-system : lando
2019-01-10 18:40:56 +00:00
Csoregi Natalia ae6fde5883 Backed out changeset 8e078c86db82 (bug 1509182) for bustage on WebRenderTypes.h:789. CLOSED TREE 2019-01-10 18:15:42 +02:00
Jeff Muizelaar a0468b94c6 Bug 1509182. Switch from using WrFilterOp to using FilterOp directly. r=nical
This avoids code duplication and simplifies push_stacking_context

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

--HG--
extra : moz-landing-system : lando
2019-01-10 14:20:21 +00:00
WR Updater Bot e70e863f16 Bug 1518605 - Some follow-up fixes to make the different builds green. r=kats
Depends on D16006

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

--HG--
extra : moz-landing-system : lando
2019-01-09 03:27:48 +00:00
Dzmitry Malyshau cddd33e700 Bug 1518605 - New WebRender ClipId/SpatialId API. r=kats
Port to separate SpatialId from ClipId in Webrender API (WR PR #3251).
Patch was originally written and reviewed on bug 1503447.

Depends on D16005

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

--HG--
extra : moz-landing-system : lando
2019-01-09 03:27:07 +00:00
Matt Woodrow 1e5ba15a36 Bug 1518582 - Only record CONTENT_FULL_PAINT_TIME for content process paints when using WebRender. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D15969

--HG--
extra : moz-landing-system : lando
2019-01-08 19:35:46 +00:00
Oana Pop Rus aec8de62bb Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-01-08 12:37:02 +02:00
Oana Pop Rus 3adbeba770 Merge mozilla-inbound to mozilla-central. a=merge 2019-01-08 12:13:02 +02:00
Doug Thayer a848222b53 Bug 1441308 - Split out document pieces of WebRenderLayerManager r=jrmuizel
Per our discussion, this patch splits out the state management bits of
WebRenderLayerManager, allowing for them to be maintained per-document.

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

--HG--
extra : moz-landing-system : lando
2019-01-07 21:33:10 +00:00
sotaro e87dc7e00e Bug 1505363 - Call DiscardCompositorAnimations() after calling WrBridge()->EndTransaction() r=kats
Discard animations after calling WrBridge()->EndTransaction(). It updates mWrEpoch in WebRenderBridgeParent. The updated mWrEpoch is necessary for deleting animations at the correct time.

Differential Revision: https://phabricator.services.mozilla.com/D15799
2019-01-08 08:57:03 +09:00
Bas Schouten 93c70bd2f6 Bug 1501442 - Part 1: Add CompositionPayload type and allow submitting it as part of a transaction. r=mstange
--HG--
extra : rebase_source : 20a6ac6929bc99b8ddbf5500e7edbaa514c7ebe2
2018-12-13 15:59:22 +01:00
Matt Woodrow 33ed402279 Bug 1518044 - Move CONTENT_FRAME_TIME calculation code into CompositorBridgeParent. r=jrmuizel
This shouldn't change any behaviour, just puts the code into a separate function so that it's easier to follow.

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

--HG--
extra : moz-landing-system : lando
2019-01-07 03:14:28 +00:00
Jeff Muizelaar e63391c56c Bug 1517980. Have CONTENT_FRAME_TIME_REASON correspond to CONTENT_FRAME_TIME_VSYNC. r=mattwoodrow
CONTENT_FRAME_TIME_VSYNC is more meaningful metric because it actually
starts at the beginning of the vsync making it easier to reason about
missing frames. It makes more sense for CONTENT_FRAME_TIME_REASON wants
to use this same starting point.

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

--HG--
extra : moz-landing-system : lando
2019-01-05 23:10:20 +00:00
Lee Salzman 0e6b660c95 Bug 1515793 - pop blob image transform clips. r=mattwoodrow 2019-01-04 15:58:10 -05:00
Matt Woodrow 54f9f12d39 Bug 1517355 - Add CONTENT_FRAME_TIME variant that records from the vsync time. data-review=rrayborn, r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D15603

--HG--
extra : moz-landing-system : lando
2019-01-03 19:43:04 +00:00
Lee Salzman 0a64cd8214 Bug 1455848 - output useful information about font file attributes with error. r=me 2018-12-29 22:07:02 -05:00
Sylvestre Ledru cccdda3c2a Bug 1516555 - Reformat everything to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2018-12-28 15:48:06 +00:00
Jeff Muizelaar 41fa579404 Bug 1516061. Split MissedComposite telemetry more.
This adds one more category called MissedCompositeLow.

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

--HG--
extra : moz-landing-system : lando
2018-12-24 16:01:10 +00:00
Jeff Muizelaar 2c917c374f Bug 1516061. Split MissedComposite telemetry. r=mattwoodrow
We're seeing a substantial amount of paint misses caused by
MissedComposite. This splits MissedComposite into subcategories
based on the full paint time.

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

--HG--
extra : moz-landing-system : lando
2018-12-23 14:46:43 +00:00
Cosmin Sabou e2cefba569 Backed out changeset d5966d00f836 (bug 1516061) for qr assertion failures on dist/include/mozilla/TimeStamp.h. 2018-12-22 20:13:16 +02:00
Jeff Muizelaar 1f6e956e50 Bug 1516061. Split MissedComposite telemetry. r=mattwoodrow
We're seeing a substantial amount of paint misses caused by
MissedComposite. This splits MissedComposite into subcategories
based on the full paint time.

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

--HG--
extra : moz-landing-system : lando
2018-12-22 15:38:22 +00:00
Razvan Maries 83351481a9 Backed out changeset 99f425b3e45c (bug 1516061) for causing build bustages. CLOSED TREE 2018-12-22 17:01:52 +02:00
Jeff Muizelaar 5f544003da Bug 1516061. Split MissedComposite telemetry. r=mattwoodrow
We're seeing a substantial amount of paint misses caused by
MissedComposite. This splits MissedComposite into subcategories
based on the full paint time..

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

--HG--
extra : moz-landing-system : lando
2018-12-22 14:41:08 +00:00
Jeff Muizelaar cbfbd7cf97 Bug 1516033. Make CONTENT_FRAME_TIME_REASON use the same timing as CONTENT_FRAME_TIME. r=mattwoodrow
It perhaps makes more sense to use the start of refresh but I'd like to switch
to the start of the paint so that we get more consistent results between the
two probes.

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

--HG--
extra : moz-landing-system : lando
2018-12-22 05:00:51 +00:00
Coroiu Cristina 52c4a6e3ad Merge inbound to mozilla-central a=merge 2018-12-22 06:12:53 +02:00
Timothy Nikkel b5a536d9ae Bug 1415987. Use ChooseScale to choose a scale in WebRender. r=jrmuizel 2018-12-21 16:07:21 -06:00
Jeff Muizelaar 017c78e2f9 Bug 1513772. Split out blob mask handling. r=mstange
Currently we use the regular fallback path for the mask images used by blobs.
This isn't really the best fit and is causing test failures with the current
blob re-coordination patches.

This changes the code to be more FrameLayerBuilder and handles
invalidation of the mask without using FrameLayerBuilder.

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

--HG--
extra : moz-landing-system : lando
2018-12-21 18:21:40 +00:00
Matt Woodrow b61f4640e6 Bug 1514640 - Only allow late compositing if the content phase didn't happen in the same vsync. r=jrmuizel
Depends on D15020

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

--HG--
extra : moz-landing-system : lando
2018-12-20 22:52:07 +00:00
Matt Woodrow 7c5f3c78d8 Bug 1514640 - Allow slow scene building to start a composite a bit late. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D15020

--HG--
extra : moz-landing-system : lando
2018-12-20 22:43:01 +00:00
Matt Woodrow 47621b964c Bug 1514640 - Use the vsync id of the skipped composite when we do a catch-up composite. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D15019

--HG--
extra : moz-landing-system : lando
2018-12-20 19:33:21 +00:00
Matt Woodrow cd30ae3517 Bug 1510900 - Include URL in GPU process crash reports. r=jrmuizel,gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D14912

--HG--
extra : moz-landing-system : lando
2018-12-19 09:03:27 +00:00
sotaro 757062cdf2 Bug 1513308 - Lazily initialize DirectX devices for WebRender r=mattwoodrow 2018-12-18 14:54:28 +09:00
Kartikaya Gupta e8565762a1 Bug 1508647 - Don't treat mSeparateLeaf as an output. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D14473

--HG--
extra : moz-landing-system : lando
2018-12-17 17:41:48 +00:00
Matt Woodrow 56891ff038 Bug 1513657 - Record CONTENT_FRAME_TIME_REASON after CONTENT_FRAME_TIME so that we don't clobber the calculations. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D14298

--HG--
extra : moz-landing-system : lando
2018-12-12 20:27:06 +00:00
Matt Woodrow 2482792e98 Bug 1501382 - Cull items within an opacity:0 container when using WebRender. r=kats
Depends on D14230

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

--HG--
extra : moz-landing-system : lando
2018-12-12 17:02:13 +00:00
Timothy Nikkel 711a491f84 Bug 1345388. Save using one extra clip. r=aosmond 2018-12-11 20:48:32 -06:00
Kartikaya Gupta ee2016670c Bug 1519636 - Follow-up to properly turn off clang formatting for debug logging code. r=me 2019-01-30 15:11:20 -05:00
Lee Salzman f7066e0fb7 Bug 1455848 - validate access to DWrite font files in WR and output helpful log messages on failure. r=jrmuizel 2018-12-11 15:58:02 -05:00
sotaro 196354f4fd Bug 1512919 - Remove Grouper::mItemStack r=jrmuizel
Grouper::mItemStack is not used anymore.

Differential Revision: https://phabricator.services.mozilla.com/D14049
2018-12-11 17:06:19 +09:00
Matt Woodrow 9abd7f512c Bug 1510853 - Add CONTENT_FRAME_TIME_REASON. r=jrmuizel, data-review=chutten
MozReview-Commit-ID: 9RV9ZkHXZTR

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

--HG--
extra : moz-landing-system : lando
2018-12-07 23:28:41 +00:00
Matt Woodrow 011bd0697f Bug 1510853 - Make VsyncId available to compositor. r=jrmuizel
MozReview-Commit-ID: 8wBDg39R4nZ

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

--HG--
extra : moz-landing-system : lando
2018-12-07 23:28:03 +00:00
Ciure Andrei 22c96f2cb4 Backed out 4 changesets (bug 1510853) for TelemetryHistogramEnums.h build bustages CLOSED TREE
Backed out changeset 80baa7b09930 (bug 1510853)
Backed out changeset d1ef6db7fc28 (bug 1510853)
Backed out changeset ae190948ad73 (bug 1510853)
Backed out changeset 0ade0aa77b2f (bug 1510853)
2018-12-07 19:38:47 +02:00
Matt Woodrow c90b5f66d6 Bug 1510853 - Add CONTENT_FRAME_TIME_REASON. r=jrmuizel, data-review=chutten
MozReview-Commit-ID: 9RV9ZkHXZTR

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

--HG--
extra : moz-landing-system : lando
2018-12-07 17:02:58 +00:00
Matt Woodrow e553ae49ac Bug 1510853 - Make VsyncId available to compositor. r=jrmuizel
MozReview-Commit-ID: 8wBDg39R4nZ

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

--HG--
extra : moz-landing-system : lando
2018-12-07 17:06:09 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Razvan Maries 77d87d9972 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-11-30 05:13:14 +02:00
Kartikaya Gupta cd40821489 Bug 1511042 - Back out some commits from bug 1503447 for introducing correctness and perf regressions. r=backout
This backs out hg commits 1e214baf8fc1, 7d4adeee5236, and f5ffebdcc014.
2018-11-29 14:24:25 -05:00
Nicolas Silva 9f96be2f26 bug 1510447 - Fix a blob image key leak. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D13262

--HG--
extra : source : a58f38fb47f3f436584a816ccbbc192ae9684d02
extra : intermediate-source : 6cca1b66a9dd1951abd51f6c3bf588a2ae46934c
2018-11-28 16:55:10 +01:00
Bogdan Tara fd7ba25ff9 Backed out changeset 848f4907fb07 (bug 1510447) for failures on 136/289480.html CLOSED TREE 2018-11-28 23:21:16 +02:00
Nicolas Silva 36ee7b97d0 bug 1510447 - Fix a blob image key leak. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D13262

--HG--
extra : moz-landing-system : lando
2018-11-28 16:16:29 +00:00
Dzmitry Malyshau 54ba2010c1 Bug 1503447 - Always use zero origin for WR reference frames and stacking contexts r=kats
Previously, WebRender was getting a rectangle for reference frames
and stacking contexts, and it had to carefully treat the origin of this rectange:
  - by offseting all the items in a stacking context
  - by negatively compensating the sticky frame scroll port according to the
parent reference frame origin

With this change, we stop providing any non-zero origins. Instead we accomplish
the same behavior using existing API primitives, such as reference frames:
  1. when a stacking context has an origin, we push another reference frame for it
  2. when computing the sticky frame scroll port, we take this origin into account

This slightly simplifies Gecko-WR API, but more importantly it would allow WR to
get rid of this logic (of handling origins), which in turn would allow to switch
the reference frames from push()/pop() model to just define(), like we do for
scroll/sticky frames already.

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

--HG--
extra : moz-landing-system : lando
2018-11-28 15:32:41 +00:00
Ehsan Akhgari ca162bee20 Bug 1508472 - Part 4: Fourth batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal.  I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-28 09:16:55 +00:00
Jonathan Watt 4c1b207664 Bug 1510116. Fix some unified build issues in layout code. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D13039

--HG--
extra : rebase_source : f0b6516484ed97ed52b92e04617f89e4ee8189ff
2018-11-12 22:20:52 +00:00
Matt Woodrow 2b373f4019 Bug 1510899 - Try catch up composites with WR. r=jrmuizel,sotaro
MozReview-Commit-ID: LXIpsvZZ96U

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

--HG--
extra : moz-landing-system : lando
2018-11-29 18:30:06 +00:00
Csoregi Natalia d35199ef15 Merge inbound to mozilla-central. a=merge 2018-11-26 11:47:15 +02:00
sotaro 8fb8522b22 Bug 1490117 - Rollback WrEpoch if TransactionBuilder does not have ResourceUpdates in RecvEmptyTransaction() r=mattwoodrow 2018-11-26 16:08:49 +09:00
Matt Woodrow 43bc692c89 Bug 1509226 - Avoid allocations to serialize clips. r=jrmuizel
MozReview-Commit-ID: CetmS5cZCMP

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

--HG--
extra : moz-landing-system : lando
2018-11-26 02:32:15 +00:00
Nicolas Silva 2fa6078f12 Bug 1494403 - Separate the Blob related apis. r=jrmuizel
This commit contains the Gecko-side changes from WebRender PR#3277:
 - Dedicated DirtyRect type.
 - Separate the blob image APIs from regular image ones.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 23:33:49 +00:00
Jeff Muizelaar b376bd0e9c Bug 1509554. Define WrClipId in bindings.rs. r=kats
This lets us avoid having to put usize in the exported signatures from bindings.rs
It also avoids a heap allocation when defining a clip chain.

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

--HG--
extra : moz-landing-system : lando
2018-11-23 19:49:56 +00:00
sotaro 8b972d1dc6 Bug 1508526 - Remove unnecessary ScheduleGenerateFrame() call in WebRenderBridgeParent::RecvUpdateResources() r=aosmond 2018-11-22 17:24:50 +09:00
Coroiu Cristina b27585482c Merge inbound to mozilla-central a=merge 2018-11-21 23:43:13 +02:00
Jeff Muizelaar c80ead4e70 Bug 1508908. Remove mEventRegions from WebRenderLayerScrollData. r=kats
It's unused.

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

--HG--
extra : moz-landing-system : lando
2018-11-21 11:55:46 +00:00
Matt Woodrow 3e879986fc Bug 1507680 - Record detailed statistics about slow WebRender frames in about:support. r=jrmuizel
MozReview-Commit-ID: 84SjN1RvvAA

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

--HG--
extra : rebase_source : 80e3342280723a2404c6aad7d26b1327906c9e4a
2018-11-16 15:13:56 +13:00
Jeff Muizelaar 3654ccade6 Bug 1507686 - Record LayerManager URL for each paint so that we can correlate it with slow paints. r=mattwoodrow
MozReview-Commit-ID: 2RUWkboAOJz

--HG--
extra : rebase_source : 397fd432b4e9cba37a1ebca9dcc5a949f290c9d0
2018-11-19 20:55:28 +13:00
Andrew Osmond 25360a73c4 Bug 1504699 - Part 6. Add lifetime management for recycled frames with WebRender. r=nical
Here we make use of the parts added in parts 1 and 2 to hold onto
recycled surfaces for as long as necessary to prevent the animated image
decoder from reusing them until WebRender is done with them.

Differential Revision: https://phabricator.services.mozilla.com/D10902
2018-11-21 06:47:24 -05:00
Andrew Osmond 8c7a309965 Bug 1504699 - Part 2. Add plumbing to WebRenderLayerManager to pass on frame released messages. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D10898
2018-11-21 06:47:06 -05:00
Andrew Osmond c15ceec38e Bug 1504699 - Part 1. Add signalling for WebRender to let owning process that surface may be recycled. r=nical
When we replace the external image ID an image key points to, the
previous external image ID may still be used by WebRender. We currently
wait until the frame has been rendered to release our hold on said
surface. With this patch, we will communicate the image key and previous
external image ID pairing to the owning process when releasing to let it
know that it can reuse it (e.g. for an animated image). Additionally we
now use the new textures updated checkpoint which should happen sooner
than the frame rendered checkpoint, but guarantee that WebRender is no
longer using the old external image ID.

Differential Revision: https://phabricator.services.mozilla.com/D10897
2018-11-21 06:47:06 -05:00
sotaro a06eae528e Bug 1508117 - Fix mAsyncImageManager->AddPipeline() calls in WebRenderBridgeParent::UpdateWebRender() r=mattwoodrow 2018-11-19 12:15:55 +09:00
Dzmitry Malyshau f076ce43c0 Bug 1503447 - Remove the clip->ASR == item->ASR hacky code path r=kats
Previously, WebRender ignored clip_node_id on the clip/scroll stack
when pushing clips or reference frames. This got fixed to be more consistent in:
https://github.com/servo/webrender/pull/3315

Now Gecko can use the clip chains generated for display items naturally,
instead of smuggling the last clip through the scroll_node_id, which is what
was happening in this hacky code branch being removed.

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

--HG--
extra : moz-landing-system : lando
2018-11-17 15:44:40 +00:00
Andreea Pavel 72b0594cb8 Merge mozilla-inbound to mozilla-central. a=merge 2018-11-17 13:27:24 +02:00
sotaro e339c43bdb Bug 1506767 - Remove redundant iteration in CompositorBridgeParent::NotifyPipelineRendered() r=mattwoodrow 2018-11-17 12:27:54 +09:00
Gurzau Raul 6d17917258 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-11-16 19:54:35 +02:00
Nicolas Silva eef47a1b87 Bug 1507140 - Gecko changes for WebRender PR #3291. r=kats
Move wr::DeviceUint* to wr::DeviceInt*.

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

--HG--
extra : moz-landing-system : lando
2018-11-16 17:13:26 +00:00
Gurzau Raul 0e822b012b Merge inbound to mozilla-central. a=merge 2018-11-16 19:08:39 +02:00
sotaro 068f2dd418 Bug 1506762 - Store wr::WebRenderPipelineInfo directly in AsyncImagePipelineManager::PipelineUpdates r=mattwoodrow 2018-11-16 22:01:01 +09:00
Jeff Muizelaar 702974b3d8 Bug 1505858. Record full paint time before waiting for composite in telemetry. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D11953

--HG--
extra : moz-landing-system : lando
2018-11-16 05:26:10 +00:00
Matt Woodrow f1ac2eb3c8 Bug 1503405 - Add telemetry for CONTENT_FRAME_WITH with texture upload excluded. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D11971

--HG--
extra : moz-landing-system : lando
2018-11-15 23:09:05 +00:00
Narcis Beleuzu 944d8914d9 Backed out changeset 17d1440b76b1 (bug 1505858) for bustages on WebRenderBridgeParent.cpp 2018-11-16 01:29:00 +02:00
Jeff Muizelaar 7a069dd660 Bug 1505858. Record full paint time before waiting for composite in telemetry. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D11953

--HG--
extra : moz-landing-system : lando
2018-11-15 16:43:55 +00:00
Matt Woodrow 2ce22ca25d Bug 1506748 - Record profiler markers for scene building and blob rasterization. r=mstange
MozReview-Commit-ID: IA2ooFX5jtA

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

--HG--
extra : moz-landing-system : lando
2018-11-14 23:21:23 +00:00
Dzmitry Malyshau aa76de2aae Bug 1503447 - Remove Nothing() semantic from ASR overrides r=kats
Previously, the ASR overrides contained Maybe<ClipId>, where Nothing() corresponded to taking the top of the clip/scroll stack instead of overriding. This change removes the associated complexity by ensuring that we always provide the ClipId.

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

--HG--
extra : moz-landing-system : lando
2018-11-14 14:15:16 +00:00
sotaro f4472684a5 Bug 1503498 - Simplify ForwardingExternalImage handling in AsyncImagePipelineManager r=aosmond 2018-11-14 11:40:31 +09:00
Hiroyuki Ikezoe c592937db4 Bug 1504929 - Further optimizations for RestyleManager::AddLayerChangesForAnimations.. r=birtles,sotaro
This change eliminates
 - nsLayoutUtils::LastContinuationOrIBSplitSibling calls for each CSS
   properties on WebRender
 - iterating over each display item for each compositor runnable CSS properties
 - a bunch of stuff in the case where the layer manager has not yet created,
   i.e. the compositor thread is not ready to receive animations

Depends on D11425

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

--HG--
extra : moz-landing-system : lando
2018-11-13 10:23:20 +00:00
Jeff Muizelaar fd702be66b Bug 1506676. blob-inval: handle the parent item being removed. r=mattwoodrow
If the parent item is removed our assertions will be wrong because
the parent item's bounds will not be added to the invalid rect until
after we've traversed all of the items. Further, the new unbounded rect
for the child item won't be added to the invalid rect unless we do it
ourselves. This makes sure we add the old and new rects to the invalid
rect.

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

--HG--
extra : moz-landing-system : lando
2018-11-13 02:23:41 +00:00
Razvan Maries 7f7c353e96 Merge mozilla-inbound to mozilla-central a=merge 2018-11-12 11:58:52 +02:00
Jeff Muizelaar 8aa00debf2 Bug 1496843. Make sure we update mRect when mImageBounds changes. r=mattwoodrow
This makes sure we don't end up with stale entries with geometry clipped
to the previous mImageBounds on the receiving side.

The update code is duplicated for now but will hopefully be cleaned up
after the blob re-coordination work is done.

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

--HG--
extra : moz-landing-system : lando
2018-11-11 22:49:38 +00:00
Kartikaya Gupta 9a0b69bfb3 Bug 1503616 - Propagate the zoom animation id over to the APZ code. r=botond
Depends on D11180

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

--HG--
extra : moz-landing-system : lando
2018-11-09 21:13:10 +00:00
Kartikaya Gupta 1b737d162d Bug 1503616 - Set a animatable transform property on the root content WR stacking context. r=mstange
This sets a placeholder transform on the root stacking context for the
content display list, and allows us to modify that transform directly in
the compositor. This is similar to what
nsDisplayOwnLayer::CreateWebRenderCommands does for scroll thumb layers,
which are similarly manipulated by APZ for async scrolling.

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

--HG--
extra : moz-landing-system : lando
2018-11-09 21:14:27 +00:00
sotaro 8013630c8b Bug 1506091 - Wait for GPU after posting NotifyDidRender r=mattwoodrow 2018-11-12 10:36:13 +09:00
Jeff Muizelaar 2ec0586f2c Bug 1505606. Add profiler markers for CONTENT_FRAME_TIME. r=mstange 2018-11-08 22:18:40 -05:00
Csoregi Natalia 6e0e603f48 Merge inbound to mozilla-central. a=merge 2018-11-07 11:52:57 +02:00
Ryan Hunt d46a2d5c71 Bug 1503655 part 10 - Remove unneeded includes for RenderFrameParent. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D11112

--HG--
extra : rebase_source : 769261eb74f6b01a48f3a20ccb62c5f2f1c33f32
extra : histedit_source : 027cf9d45b82a32d0b73cb468bf9931003a62a02
2018-11-06 15:34:59 -06:00
Hiroyuki Ikezoe 051215da7b Bug 1504884 - Drop AnimationInfo::mLayerManager. r=birtles
It's not used at all.

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

--HG--
extra : moz-landing-system : lando
2018-11-07 03:09:05 +00:00
Matt Woodrow eb76e7c060 Bug 1456555 - Deal with clipped containers being smaller than their contents during blob building. r=Gankro
MozReview-Commit-ID: I0tc6l84NRa

Depends on D10041

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

--HG--
extra : moz-landing-system : lando
2018-11-06 21:05:41 +00:00
sotaro 3b545f56f3 Bug 1500017 - Use triple buffer with DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL SwapChain r=mattwoodrow 2018-11-05 18:58:37 +09:00
Matt Woodrow 394f747fb0 Bug 1503730 - Add visual indicator for when WebRender frames record a CONTENT_FRAME_TIME of >200. r=sotaro
MozReview-Commit-ID: KdRf3WClD6M

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

--HG--
extra : moz-landing-system : lando
2018-11-04 20:35:36 +00:00
Ryan Hunt 2226bcc8a3 Bug 1504220 - Move ScrollableLayerGuid, ViewID, ZoomConstraints from FrameMetrics.h r=botond
This commit attempts to lower the pain of modifying FrameMetrics.h.

It looks like most includes really only want ViewID or
ScrollableLayerGuid, so this commit factors them out into a separate
header. In the process FrameMetrics::ViewID is changed to
ScrollableLayerGuid::ViewID, which personally seems like a better
place for it now that we have RepaintRequest. Unfortunately that
requires a lot of places to be updated.

After this commit there are still a couple of major places that
FrameMetrics is included.
 * nsDisplayList.h
 * nsIScrollableFrame.h
 * Layers.h

Those are going to be more tricky or impossible to fix so they're
not in this commit.

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

--HG--
rename : gfx/layers/FrameMetrics.h => gfx/layers/ScrollableLayerGuid.h
rename : gfx/layers/FrameMetrics.h => gfx/layers/ZoomConstraints.h
extra : rebase_source : 29ac79f91460a181bf7437af5c371207e22858e2
extra : source : c2e70e531075493fc6e374dcec862827f0bc6e77
2018-11-01 15:15:46 -05:00
Andrew Osmond fb274b0684 Bug 1502454 - Ensure we are consistent in how we define and use scroll IDs with WebRender. r=kats
In ClipManager::DefineScrollLayers, we don't always create a scroll ID
for each ASR. We may fail to get the scroll metadata, or it may not be
scrollable, in which case we should use the scroll ID of its ancestor
(or the root scroll ID if there is no ancestor). This should fix a crash
where we simply assumed the leaf of an ASR tree will always have a valid
scroll ID.

Differential Revision: https://phabricator.services.mozilla.com/D10708
2018-11-02 13:08:58 -04:00
Ciure Andrei 83010e5db0 Merge inbound to mozilla-central. a=merge 2018-11-02 18:44:43 +02:00
Andrew Osmond 016a11ff73 Bug 1428558 - Part 7. Suppress display list regeneration for animated image updates. r=nical
This patch allows us to intercept invalidation requests for display
items, and avoid regenerating the display list for animated images which
are using SharedSurfacesAnimation.

Differential Revision: https://phabricator.services.mozilla.com/D7504
2018-11-02 09:09:52 -04:00
Andrew Osmond 39a21e7b4b Bug 1428558 - Part 3. Release our reference to an external image ID as soon as possible. r=nical
Animated images will work by changing the external image ID that an
ImageKey points to. We cannot allow the old external image to be
released and potentially unmapped until we have produced a new frame
with the new external image ID. We currently wait until the epoch has
advanced, but in the future when we don't rebuild the scene to animate
an image, the epoch will remain the same. This could cause us to hold
onto no longer used surfaces for much longer than expected. As such, in
this patch we switch to waiting for a FrameRendered notification from
WebRender, which works even if the scene rebuild was avoided.

Differential Revision: https://phabricator.services.mozilla.com/D7500
2018-11-02 09:09:52 -04:00
Andrew Osmond 74a32dcaab Bug 1428558 - Part 2. Improve plumbing to sending resource updates to WebRender. r=nical
Animated images will require scheduling a composite of the frame in
addition to updating the ImageKey/external image ID bindings. It would
be good if this could be done as part of the same IPDL message.
Additionally a page may have many animated images that we update the
frame for at the same time, so these updates should be batched together.
In the event that we needed to regenerate the display list, or produce
an empty transaction, ideally we would just throw these resource updates
in with the rest of the changes. This patch allows us to do all of that
without unnecessarily burdening the caller with tracking extra state.

Differential Revision: https://phabricator.services.mozilla.com/D7499
2018-11-02 09:09:52 -04:00
Andrew Osmond 83a52f66de Bug 1428558 - Part 1. Streamline mappings between an ImageKey and an ExternalImageId for shared surfaces. r=nical
Async animated images need a single ImageKey which can point to any
frame represented by its own external image ID. Additionally a frame
could be referenced again directly (e.g. something shows/uses the first
frame of the animated image).

Before this patch, the ownership between an ImageKey and an external
image ID for a shared surface was not clearly expressed. This resulted
in a special command to release the reference to the external image
separately from deleting the image key.

This patch makes the strong reference to an external image ID and an
ImageKey directly related. Not only does this facilitate multiple
ImageKeys owning the same surface, it also simplifies the ownership
semantics.

Differential Revision: https://phabricator.services.mozilla.com/D7520
2018-11-02 09:09:52 -04:00
Kartikaya Gupta b6030f993c Bug 1490393 - Flush a deferred transform before picking up another if the ASR changes. r=mstange
The implementation of deferred transforms did not handle the case where
we ended up deferring multiple transform items in a row with different
ASRs. In this case, when we encounter the nested transform item that we
want to defer, we need to flush the previously-deferred transform item
into a WebRenderLayerScrollData item. This patch accomplishes that, and
includes a mochitest that exercises the relevant behaviour.

Depends on D8110

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

--HG--
extra : moz-landing-system : lando
2018-11-01 21:14:50 +00:00
Kartikaya Gupta 1523c9bf61 Bug 1490393 - Accumulate the deferred transform down the StackingContextHelper chain if the ASR matches. r=mstange
The implementation of deferred transforms did not handle the case where
we ended up deferring multiple transform items before encountering the
APZ-relevant display item. In this case we need to somehow accumulate
all the deferred transforms. This patch accomplishes that, and includes
a mochitest that exercises the relevant behaviour.

Depends on D8109

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

--HG--
extra : moz-landing-system : lando
2018-11-01 21:14:31 +00:00
Kartikaya Gupta 12f8d1ed88 Bug 1490393 - Extract a helper method on StackingContextHelper to get the deferred transform matrix. r=mstange
Depends on D8108

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

--HG--
extra : moz-landing-system : lando
2018-11-01 21:12:29 +00:00
Kartikaya Gupta 2db495b01c Bug 1490393 - Improve documentation regarding the deferred transforms. r=mstange
This code will be expanded a bit in the next few patches, so hopefully
the comments here provide a reasonable explanation of what this code is
about.

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

--HG--
extra : moz-landing-system : lando
2018-11-01 21:12:06 +00:00
Jamie Nicol 9aa1aa7578 Bug 1503877 - Handle PauseComposition correctly with webrender enabled. r=kats
On android with webrender enabled, minimising the app results in an
assertion failure: CompositorBridgeParent::DidComposite asserts that
it should not be called with a webrender compositor.

This makes it so that that in CompositorBridgeParent::PauseComposition
we call NotifyPipelineRendered instead of DidComposite for webrender
compositors.

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

--HG--
extra : moz-landing-system : lando
2018-11-02 09:00:45 +00:00
sotaro 683db7acd5 Bug 1502789 - Fix Texture release timing of AsyncImagePipelineManager::ProcessPipelineUpdates() r=nical 2018-10-31 14:19:41 +09:00
Kartikaya Gupta c277149ab9 Bug 1501062 - Set the visible region on scrollthumb WebRenderLayerScrollData items. r=botond
This field is used by APZ to implement the feature where the scrollbar snaps
back to the starting position if the mouse gets too far away.
2018-10-29 15:40:09 -04:00
Andrew Osmond f608cada7d Bug 1405814 - Avoid crash with WebRender when the scroll metadata is unavailable. r=kats
Similar to bug 1471671, we are seeing missing scroll metadata in cases
we do not expect that, and have been observing low volume crashes in the
wild as a result. It appears that in the non-WR path, it skips such items,
so we should probably do the same thing with WebRender. If it is a real
problem, we will hopefully get a reproducible test case from a user if
scrolling fails for them.

Differential Revision: https://phabricator.services.mozilla.com/D9815
2018-10-25 20:00:35 -04:00
Andrew Osmond 3370375e1c Bug 1471671 - Avoid crash with WebRender when the scroll metadata is unavailable. r=kats
We are seeing crash reports in the wild where there is no scroll
metadata available for an ASR for a display item and its clip. It
appears that in the non-WR path, it skips such items, so we should
probably do the same thing with WebRender. If the scrolling ends up
being wrong, hopefully a reproducible use case will make its way to use
to further debug, as the crash reports have not yielded anything to date.

Differential Revision: https://phabricator.services.mozilla.com/D9699
2018-10-25 13:39:28 -04:00
Ryan Hunt 1601a8bb80 Bug 1453425 - Add relative scroll offset updates using nsGkAtoms::relative. r=botond
This commit adds a scroll origin, nsGkAtoms::relative, which can be used to
mark main thread scrolling that can be combined with a concurrent APZ scroll.

The behavior of this is controlled by a pref, apz.relative-update. This pref
is initially activated and is intended as an aid to narrowing down causes
of regressions for users in bug reports.

Relative scroll updates work by tracking the last sent or accepted APZ
scroll offset. This is sent along with every FrameMetrics. Additionally,
a flag is added to FrameMetrics, mIsRelative, indicating whether the
scroll offset can be combined with a potential APZ scroll. When this
flag is set, AsyncPanZoomController will apply the delta between the sent
base scroll offset, and sent new scroll offset.

This flag is controlled by the last scroll origin on nsGfxScrollFrame. The
new origin, `relative`, is marked as being able to clobber APZ updates,
but can only be set if all scrolls since the last repaint request or
layers transaction have been relative.

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

--HG--
extra : rebase_source : 51351a84c9cda228a0975e22eda3fd3bd8d261c4
extra : histedit_source : 4b564c19b16fe2bd26adc671b62b7cb6106e8163
2018-10-09 23:24:28 -05:00
Kartikaya Gupta 2c29b10d55 Bug 1469403 - Skip DL dumps when the DL builder is from an inactive docshell. r=mattwoodrow
Depends on D9141

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

--HG--
extra : moz-landing-system : lando
2018-10-22 23:42:05 +00:00
Emilio Cobos Álvarez ba7599486e Bug 1498221 - Don't apply layer scaling to fallback filters. r=mattwoodrow
Using layer scaling confuses the filter code (see bug 1497239).

Right now we're sort-of double-scaling. Looks like what the filter code expects
is just getting the scaling passed down, see bug 1224207.

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

--HG--
extra : moz-landing-system : lando
2018-10-22 23:41:30 +00:00
Jamie Nicol 9498be51e6 Bug 1479754 - Hook up the force-first-paint codepath with webrender r=kats
When a CompositorBridgeParent receives a force first paint message, it
sets the flag on the AsyncCompositionManager, which notifies the
widget code at the next composite via
UiCompositorControllerParent::NotifyFirstPaint().

With webrender, this is crashing as there is no
AsyncCompositionManager. And even if it weren't crashing, the widget
will never receive the first paint message, so it never uncovers its
content.

This change ensures the widget receives the first message when
webrender is enabled. CompositorBridgeParent will set the flag on its
WebRenderBridgeParent, which will set the flag on the next received
display list. When the WebRenderBridgeParent flushes the corresponding
transaction, it calls UiCompositorcontrollerParent::NotifyFirstPaint,
to ensure the widget code gets the message.

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

--HG--
extra : moz-landing-system : lando
2018-10-19 13:48:04 +00:00
Kartikaya Gupta a971a37e5f Bug 1485834 - Allow recomputing the cumulative resolution in ComputeScrollMetadata. r=botond
We need to correctly populate the cumulative resolution field in the
ScrollMetadata in order to support zooming. Without this, the cumulative
resolution doesn't include the presShell resolution, and that results in
APZ getting into an inconsistent state.

Currently, the cumulative resolution is populated from the
ContainerLayerParameters object's scale, but in the case of WebRender,
we call ComputeScrollMetadata with an empty ContainerLayerParameters
since don't actually do layer building or rasterization in Gecko.
This patch makes this more explicit by changing the argument to a
Maybe<ContainerLayerParameters> and passing Nothing() from the WebRender
call sites.

In this scenario, we just use the cumulative presShell resolution as
the cumulative resolution, which should be correct for WebRender as
we won't have an "extra" CSS-derived resolution applied on the Gecko
side.

Depends on D9120

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

--HG--
extra : moz-landing-system : lando
2018-10-19 14:24:50 +00:00
sotaro fe52320e8b Bug 1497910 - Call wr_renderer_readback() before calling RenderCompositor::EndFrame() r=nical 2018-10-17 07:54:01 +09:00
Kartikaya Gupta 51d0eb31fa Bug 1484173 - Expose the vsync interval via the CompositorVsyncSchedulerOwner interface. r=sotaro
We need this for the next patch.

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

--HG--
extra : moz-landing-system : lando
2018-10-16 00:33:51 +00:00
sotaro 2dae3826d6 Bug 1498092 - Add necessary forced frame rendering r=nical 2018-10-15 20:28:01 +09:00
Nicolas Silva cd2c34aaa5 Bug 1479912 - Clear WebRender resources asynchronously. r=sotaro
Differential Revision: https://phabricator.services.mozilla.com/D7280

--HG--
extra : moz-landing-system : lando
2018-10-12 06:47:29 +00:00
Ryan VanderMeulen 44c10c107a Merge m-c to autoland. a=merge 2018-10-10 12:32:05 -04:00
Emilio Cobos Álvarez c1e1ca5fbd Bug 1497239 - Properly apply inherited scale to filters. r=jrmuizel
I'll file a followup bug to deal with the fallback transition going wrong.

I don't know why it'd be fine to not apply the scale to SVG wrappers, but on my
quick testing I didn't manage to break it, so I'll spend a bit more time trying
to do that...

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

--HG--
extra : moz-landing-system : lando
2018-10-10 14:49:15 +00:00
Daniel Varga 2ad5744e7f Merge mozilla-central to mozilla-inbound. a=merge 2018-10-10 13:56:40 +03:00
Jeff Muizelaar d0ab08d503 Bug 1493616. Make sure we invalidate the entire area of the item r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D8125

--HG--
extra : moz-landing-system : lando
2018-10-10 01:16:39 +00:00
Emilio Cobos Álvarez ddbbaf6156 Bug 1497059 - Bail out on empty dtRect. r=mstange
I thought it was going to be trivial to add a test-case for this with a scale
transform and such, but I haven't been able to.

This restores the wallpaper that there was before my change.

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

--HG--
extra : moz-landing-system : lando
2018-10-09 23:09:39 +00:00
Andrew Osmond 75ee4d6a42 Bug 1496726 - Fix how some display item containers were missing from the clip optimization exclusion list. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D7966
2018-10-09 13:09:08 -04:00
Gurzau Raul fdf7e4364c Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-10-10 07:43:59 +03:00
Sotaro Ikeda 848aa7ecc5 Bug 1461239 - Use InvalidateRenderedFrame() when necessary r=nical 2018-10-09 23:20:23 -04:00
Jeff Muizelaar 8f95a3627c Bug 1493616. blob-inval: Log the some more data about the broken situation. 2018-10-07 13:15:01 -04:00
shindli 9dc23d90a5 Merge inbound to mozilla-central. a=merge 2018-10-07 00:11:08 +03:00
Jeff Muizelaar 20d9bc4191 Bug 1493616. Add some data gathering to try to figure out the crash. 2018-10-06 12:41:00 -04:00
Emilio Cobos Álvarez 9aeb8183fd Bug 1444185 - More consistently round around fallback data. r=mstange
To avoid trimming pixels at the top / left.

This makes it closer to non-WR[1], and fixes both the checkboxes getting
cut off and the master password field.

[1]: non-WR at least at 124 scaling on a hiDPI display is still perfect, though I saw nin symmetric borders at other resolutions, so we might be able to improve here further.

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

--HG--
extra : moz-landing-system : lando
2018-10-06 10:34:36 +00:00
Jeff Muizelaar e8874566d6 Bug 1493616. Clear mInvalid more agressively so that we don't reuse it across paints r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D7948

--HG--
extra : moz-landing-system : lando
2018-10-06 02:42:22 +00:00
Ciure Andrei 19cad53fba Backed out changeset f936a4baa698 (bug 1493616) for build bustages WebRenderCommandBuilder.cpp CLOSED TREE 2018-10-06 05:17:41 +03:00