Commit graph

268 commits

Author SHA1 Message Date
Kartikaya Gupta
3faf3e38d9 Bug 1478016 - Add a strongly-typed LayersObserverEpoch type. r=mattwoodrow
MozReview-Commit-ID: 6fELexXRYeV

--HG--
extra : rebase_source : 0eb028ee9b98199d18421f7ff28433189940fdca
2018-07-30 09:24:50 -04:00
sotaro
8b12e2f10c Bug 1476876 - Make FlushRendering async if DComp is used on Windows with WebRender r=nical 2018-07-20 22:58:40 +09:00
Kartikaya Gupta
e750c8c1b4 Bug 1475637 - Add a mechanism for dumping an interleaved display list. r=jrmuizel
The prefs, when enabled, will dump the gecko DL items followed by the
WR DL items that were generated from that gecko item. This allows us to
easily go from a DOM element with known id/class attributes to e.g. an
ImageKey of an image that was generated for that element.

Also, this logging can be enabled in CI builds just like gecko display-list
dumping, instead of the ifdef that we previously had in WebRenderLayerManager.

MozReview-Commit-ID: Eeo4iO62YY1

--HG--
extra : rebase_source : b4a348b2e8bced976489257b966f70b29c56df25
2018-07-19 15:30:30 -04:00
Ryan Hunt
f8b04d075b Bug 1470528 - Implement CONTENT_FRAME_TIME for the webrender codepath. r=sotaro
This commit implements the CONTENT_FRAME_TIME metric for the webrender code
path. It follows the same structure as the previous commit implementing it for
the non-webrender code path.

MozReview-Commit-ID: 6aI5uISjgge

--HG--
extra : rebase_source : 973253589d6c27138bd49f4d81b3e74c3fcf5022
extra : histedit_source : 5b126b0285b674d59d8bd4b7bda09a01804dc043
2018-06-26 13:43:14 -05:00
Narcis Beleuzu
04b4925170 Backed out 3 changesets (bug 1470528) for build bustages on WebRenderBridgeParent. CLOSED TREE
Backed out changeset 90513daef576 (bug 1470528)
Backed out changeset e438548991db (bug 1470528)
Backed out changeset f859daf8d8d9 (bug 1470528)
2018-07-04 00:41:14 +03:00
Ryan Hunt
c284332e41 Bug 1470528 - Implement CONTENT_FRAME_TIME for the webrender codepath. r=sotaro
This commit implements the CONTENT_FRAME_TIME metric for the webrender code
path. It follows the same structure as the previous commit implementing it for
the non-webrender code path.

MozReview-Commit-ID: 6aI5uISjgge

--HG--
extra : rebase_source : acbf83d0071e8932b5e96016e6e39e27a7b4da8c
extra : histedit_source : a0f93f80441e5f45c0113244d15400d0f53d9c92
2018-06-26 13:43:14 -05:00
sotaro
58705ea969 Bug 1405465 - Handle WR paint codepath with no frame r=kats 2018-06-29 08:32:26 +09:00
Kartikaya Gupta
b564a1c166 Bug 1471220 - Record the WR display list build time in the flb phase of content paint telemetry. r=mattwoodrow
MozReview-Commit-ID: 3nZxztEdXef

--HG--
extra : rebase_source : fe889adca13d21d857881e19fbffb3387afc18f4
2018-06-26 09:53:25 -04:00
Kartikaya Gupta
327db9db3c Bug 1462961 - Dump the WebRenderScrollData as well when DUMP_LISTS is defined. r=jrmuizel
MozReview-Commit-ID: 181OoWNkWBs

--HG--
extra : rebase_source : 67bbf53060a042bc45f0292c10700cbff0608196
2018-05-23 16:08:18 -04:00
Kartikaya Gupta
56f43bc35b Bug 1437036 - Implement GetLastTransactionId in WebRenderLayerManager. r=hiro
MozReview-Commit-ID: CLymsb5w3pk

--HG--
extra : rebase_source : e2c5ee70c637305d6057953bf5fb135d1ccf3831
2018-05-14 08:53:52 -04:00
Kartikaya Gupta
d067a7cdae Bug 1452390 - Implement paint-skipping support in WebRender. r=botond
The majority of this patch is just plumbing. The interesting parts are
in WebRenderLayerManager and APZUpdater/WebRenderScrollData. Unlike
ClientLayerManager, which updates the FrameMetrics on the client side
and sends the modified version over to the compositor, this WR version
just sends the update info over to the compositor, which then applies
the update to the metrics saved in APZUpdater before triggering the
hit-testing tree rebuild.

MozReview-Commit-ID: 4latUMa8RFw

--HG--
extra : rebase_source : d0aeaf5a9c8107bbcaf8b0da6d68a0f47f455be5
2018-05-11 21:18:22 -04:00
Hiroyuki Ikezoe
7c632c2fbc Bug 1458414 - Call DiscardCompositorAnimations() after BuildWebRenderCommands(). r=kats
Since bug 1457448 we can clear discarded animations on the same transaction where we send
animations to the compositor.

MozReview-Commit-ID: 4BYsCgA98S0

--HG--
extra : rebase_source : 95087b06037466ecf70a65e18561e48418376763
2018-05-02 12:14:59 +09:00
Kartikaya Gupta
697a7719d0 Bug 1455691 - Make the transaction id a struct instead of a uint64_t. r=mattwoodrow
MozReview-Commit-ID: 9yZknygQvFr

--HG--
extra : rebase_source : 8b7a2398bdabf52f2de1c5dbd30b6868c1e0bed0
2018-04-20 15:13:06 -04:00
Miko Mynttinen
497d73ffdc Bug 1452791 - Update WebRenderLayerManager mAnimationReadyTime in empty transactions r=kats
MozReview-Commit-ID: 898pemO7YxO

--HG--
extra : rebase_source : d9f51ae6455bb633374d0752b0c73f6ef960ba9a
2018-04-10 16:07:48 +02:00
Nicolas Silva
b9c3c7eeb7 Bug 1449242 - Don't delay image key deletions by an extra transaction. r=sotaro 2018-03-28 15:33:21 +02:00
Lee Salzman
0cd370450a Bug 1447910 - move WR font key deletion to the end of a transaction. r=jrmuizel
MozReview-Commit-ID: LL94sMCvNyK
2018-03-27 18:06:31 -04:00
Ryan Hunt
e34eeaaa86 Remove DisplayItemLayer and corresponding layers.advanced prefs. (bug 1439960, r=mstange)
MozReview-Commit-ID: FAWTC1Llu31

--HG--
extra : rebase_source : 05bda872389db5cc61e805c3eb48e70eb5d95cbe
2018-02-21 09:29:49 -06:00
Cosmin Sabou
e997286c08 Backed out 3 changesets (bug 1439960) for build bustages on APZInputBridgeChild.cpp and FrameBuilder.cpp. CLOSED TREE
Backed out changeset b8057c06fc4c (bug 1439960)
Backed out changeset c8d6b0fa1447 (bug 1439960)
Backed out changeset e6bd6ebc8597 (bug 1439960)
2018-03-20 23:18:44 +02:00
Ryan Hunt
1fe1a843f9 Remove DisplayItemLayer and corresponding layers.advanced prefs. (bug 1439960, r=mstange)
MozReview-Commit-ID: FAWTC1Llu31

--HG--
extra : rebase_source : 447e835dc664549a8bdbd4097d42773acf523f08
extra : histedit_source : d98b0f0654c2214a368313de84f11160a3fa7030
2018-02-21 09:29:49 -06:00
Ryan Hunt
691f20afd2 Remove ReadLockHandle and ReadLockInit code (bug 1445008, r=aosmond)
This code is unused now that ReadLockDescriptors are not sent in layer transactions.

--HG--
extra : rebase_source : 8cd25541b22c3151e2dbd2f8ea6d1119e2f26c94
extra : source : 99a2d26d1ba82ad34a6c27641500a424cda015c3
2018-03-13 17:00:18 -05:00
Andrew Osmond
4986917db0 Bug 1435291 - Part 2. Make background SVGs use WebRender instead of fallback. r=jrmuizel 2018-03-14 14:19:13 -04:00
Andrew Osmond
c887fd120c Backed out changeset 7f0409a405f2 (bug 1435291). 2018-03-13 16:03:59 -04:00
Andrew Osmond
785d1f4d18 Bug 1435291 - Part 2. Make background SVGs use WebRender instead of fallback. r=jrmuizel 2018-03-13 15:59:05 -04:00
Eitan Isaacson
a250cd0f4e Bug 1438017 - Update wr bindings with ColorMatrix filter and add filters to command builder. r=kats 2018-02-23 15:29:04 -08:00
Kartikaya Gupta
3df53735f9 Bug 1434996 - Update WebRenderLayerManager::SetTransactionIdAllocator to match ClientLayerManager. r=sotaro
Changing the transaction id allocator is now handled better in
ClientLayerManager than before in that it resets the transaction id on
the new allocator to match the old allocator and avoid discontinuities
in the transaction ids. We should apply this behaviour to
WebRenderLayerManager as well, because WebRenderLayerManager was
assuming that any time the allocator changed it would automatically
start the transaction id at 1, which is not the case. In particular,
when navigating to something in the bfcache, we can reuse a pre-existing
refresh driver which might have a transaction id already greater than 1.

MozReview-Commit-ID: 8IUn1Dhnh7c

--HG--
extra : rebase_source : 0e98c96d9636c3a3ee0489ff6b6161bce7677dd7
2018-02-09 13:41:18 -05:00
Ciure Andrei
8dd2a49ca4 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-02-08 00:33:37 +02:00
Lee Salzman
59693fdaf9 Bug 1436265 - update ClearType usage in WebRenderLayerManager. r=jrmuizel
MozReview-Commit-ID: 1m2QQAKaI25
2018-02-07 15:48:25 -05:00
Kartikaya Gupta
50f41ff36b Bug 1435248 - Fix function naming. r=nical
It looks like the call chain is called ScheduleComposite on the client
LayerManager API, but then for some reason the functions in the IPDL
bridges are called ForceComposite, and then they eventually call the
ScheduleComposition function on the CompositorVsyncScheduler. This is
silly, so I renamed the IPDL bridge functions to ScheduleComposite as
well to be consistent.

MozReview-Commit-ID: D7bWpASaEtb

--HG--
extra : rebase_source : ecb0494d9461bd4ada48bfb602e7b518f0601c1b
2018-02-02 08:57:35 -05:00
sotaro
d6f794fcb9 Bug 1431304 - Fix WebRenderLayerManager::ClearCachedResources() as to clear active animation ids r=nical 2018-01-23 10:57:20 +09:00
sotaro
4bd6341225 Bug 1429694 - Fix WebRenderLayerManager::ClearCachedResources r=nical 2018-01-15 16:17:40 +09:00
Nicolas Silva
36aaaf44e8 Bug 1405824 - Use WebRenderBridgeChild instead of IShmemAllocator in IpcResourceUpdateQueue. r=jrmuizel 2018-01-12 15:11:28 +01:00
sotaro
9de30e6422 Bug 1429289 - Remove WebRenderLayerManager::ClearLayer() r=nical 2018-01-11 15:00:16 +09:00
Milan Sreckovic
099cfc4242 Bug 1423570: Use BaseRect access methods instead of member variables in gfx/ r=bas.schouten
MozReview-Commit-ID: ZGySgc9oP3

--HG--
extra : rebase_source : 23aadc10e9885002290155684b2c495780d979ce
2017-12-19 15:48:39 -05:00
Kartikaya Gupta
a722a826b0 Bug 1389146 - Add code to dump the webrender display list, behind a compile guard. r=jrmuizel
MozReview-Commit-ID: 1tWhE4A7PCa

--HG--
extra : rebase_source : 2f161e7c488832055d8811f94751e3623c16b490
2017-11-28 15:28:08 -05:00
sotaro
222b1d574f Bug 1411472 - Add support of PersistentBufferProviderShared r=nical 2017-11-16 14:47:26 +09:00
Kevin Chen
49b2130100 Bug 1415469 - Remove mDeviceResetSequenceNumber from TDR process since we don't need it anymore; r=dvander
MozReview-Commit-ID: 3uQQwW8QOJA

--HG--
extra : rebase_source : ab6090ad51a2a4714f1739a30d854d624d187239
2017-11-08 15:26:43 +08:00
Kartikaya Gupta
d5cf7941e2 Bug 1415225 - Remove dead code. r=jrmuizel
This code has been unused since the removal of layers-full WR codepaths.

MozReview-Commit-ID: JQn55Kbz5rr

--HG--
extra : rebase_source : af6995265c02a1ddfccbc37adb633bc2b240ec8b
2017-11-09 09:03:51 -05:00
Sebastian Hengst
8916884b22 Backed out 6 changesets (bug 1415225) for frequently failing own gfx/layers/apz/test/mochitest/test_group_overrides.html on Windows. r=backout
Backed out changeset 27403a9dec13 (bug 1415225)
Backed out changeset 9e6710586531 (bug 1415225)
Backed out changeset 8cfef302b710 (bug 1415225)
Backed out changeset 8ae80d7421d5 (bug 1415225)
Backed out changeset 5f14fc545115 (bug 1415225)
Backed out changeset 4704645d4e81 (bug 1415225)
2017-11-09 11:59:04 +02:00
Kartikaya Gupta
7b31712d93 Bug 1415225 - Remove dead code. r=jrmuizel
This code has been unused since the removal of layers-full WR codepaths.

MozReview-Commit-ID: EAhRrZXLKKr

--HG--
extra : rebase_source : c33f915461c724c61b11804a9cecb960728fd6df
2017-11-08 20:47:18 -05:00
Daniel Holbert
126bd9e1a4 Bug 1412427 part 8: (automated patch) Switch a bunch of C++ files in gfx to use our standard mode lines. r=jrmuizel
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: 77D61xpSmIl

--HG--
extra : rebase_source : c6162fa3cf539a07177a19838324bf368faa162b
2017-10-27 16:10:06 -07:00
Kartikaya Gupta
b7e231bc45 Bug 1410777 - Force a full transaction for WR when the window overlay changes. r=mstange
The window buttons are drawn as part of the AddWindowOverlayWebRenderCommands
function which is invoked in the full-transaction codepath. It should be possible
to have the empty transaction codepath simply update the image (without building
a full WR display list) and do a recomposite. That would be more performant but
it requires some plumbing to build and ship across a IpcResourceUpdateQueue on
empty transactions.

MozReview-Commit-ID: 2Mrb0wELD6E

--HG--
extra : rebase_source : 9a94c32f94403050835bf3445176f4fe2c1579fa
2017-10-26 14:17:19 -04:00
Kartikaya Gupta
75717cb048 Bug 1410777 - Remove unused function and dead code left over from the layers-full WR days. r=mstange
This is functionally unrelated to the bug but I noticed it while fiddling with
the code, and the lines affected are kind of intertwined with the next patch so
I'm just doing the code removal as part of this bug.

MozReview-Commit-ID: CwmluhyCdbR

--HG--
extra : rebase_source : 0a86ba7299f63587b77c44fadc804e34ada5a474
2017-10-26 14:17:18 -04:00
Kartikaya Gupta
746bb09454 Bug 1405359 - Make ScrollingLayersHelper a more stateful class. r=jrmuizel
This makes ScrollingLayersHelper a non-RAII type class, and instead adds
methods to notify it of when we start processing a new transaction or a
new display item within the transaction. This patch has no functional
changes, it's non-obvious refactoring.

MozReview-Commit-ID: GEZzCGbVqB1

--HG--
extra : rebase_source : dd4fab7f34da7c5465ba474db670cf583e8dadf4
2017-10-24 18:46:44 -04:00
Sebastian Hengst
c10fc4a634 Backed out changeset 154c415885b8 (bug 1405359) 2017-10-25 00:16:49 +02:00
Kartikaya Gupta
1ef110fd03 Bug 1405359 - Make ScrollingLayersHelper a more stateful class. r=jrmuizel
This makes ScrollingLayersHelper a non-RAII type class, and instead adds
methods to notify it of when we start processing a new transaction or a
new display item within the transaction. This patch has no functional
changes, it's non-obvious refactoring.

MozReview-Commit-ID: 3yq9sPiHMge

--HG--
extra : rebase_source : 286423f56de59211e320f015cb1004a1e98332b8
2017-10-24 16:15:00 -04:00
sotaro
8d85c3d52b Bug 1405952 - Remove PWebRenderBridge::SetDisplayListSync r=kats,kanru 2017-10-20 19:48:57 +09:00
Kartikaya Gupta
f36ec38554 Bug 1410183 - Replace the useless layers-dump call with a slightly more useful if-0 block. r=jrmuizel
MozReview-Commit-ID: AEqJEiLZjmx

--HG--
extra : rebase_source : 7a503c9e8466d0619544c566709c9ec0e7e3144b
2017-10-19 14:02:48 -04:00
sotaro
1bf385dce6 Bug 1404232 - Add WebRenderCommandBuilder::ClearCachedResources() r=jrmuizel 2017-10-19 13:03:08 +09:00
sotaro
e87aa60cf8 Bug 1404232 - Add WebRenderLayerManager::WrUpdated() r=jrmuizel 2017-10-19 13:02:47 +09:00
sotaro
4c11a8c448 Bug 1409595 - Add pointer check in WebRenderLayerManager::DidComposite() r=kats 2017-10-19 10:26:26 +09:00