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

528 Коммитов

Автор SHA1 Сообщение Дата
Kartikaya Gupta f1c3046b7d Bug 1401244 - Update webrender to commit 2a005f156b9f25862a2dc8443b57be37168233f2. r=jrmuizel
MozReview-Commit-ID: IJ9TXtRw8j3

--HG--
extra : rebase_source : fc0f28ef5535aad1b33548ee4f6825cb3bbea0a3
2017-09-22 08:52:50 -04:00
Ethan Lin fb32d577e9 Bug 1398706 - Always create new clip ids in ScrollingLayersHelper if it's inside a mask. r=kats
MozReview-Commit-ID: Hhsbgpqddo1

--HG--
extra : rebase_source : 40507644148da5bfe6ca3dd5f1f438ac9e7e10ff
2017-09-19 17:05:22 +08:00
Kartikaya Gupta 59ea9aa15f Bug 1399505 - Expose the API to add sticky frames to the WR display list. r=mstange
MozReview-Commit-ID: 1SEz6bqMoME

--HG--
extra : rebase_source : 133853e09f8bc5b1e7d725a53ef3d6a0ab1fdc00
2017-09-21 10:11:39 -04:00
Morris Tseng d17dfbe119 Bug 1392200 - Update interfaces for backface-visibility support. r=kats
MozReview-Commit-ID: 6ctGRSUI3pB
2017-09-21 14:41:38 +08:00
Jeff Muizelaar d1f3804a22 Bug 1401606 - Change a bunch of asserts! to debug_asserts! r=kats
I saw these show up a bit in profiles and we have a better idea which
threads to call things on now.
2017-09-20 23:11:20 -04:00
Martin Robinson 8069c9b013 Bug 1400216 - Update bindings.rs for interfaces changed in WR cset aabd0936. r=kats
MozReview-Commit-ID: HMNal0zNJZi

--HG--
extra : rebase_source : 23a4a40af6dbb035ae3c7a7a82133629dd7c9da5
2017-09-19 12:16:33 -04:00
Sebastian Hengst 09dd8ba13f merge mozilla-central to mozilla-inbound. r=merge a=merge on a CLOSED TREE
--HG--
extra : amend_source : ee605ac050c0532521f96bdeda5ef20fb0099519
2017-09-15 00:18:43 +02:00
Morris Tseng d4f068b487 Bug 1398241 - Update bindings.rs for interfaces changed in WR cset 02e21a58. r=kats
MozReview-Commit-ID: Aq6jP4tcuoU

--HG--
extra : rebase_source : eb5c3ada835582c8c18b8821fff5829d869933b1
2017-09-14 08:18:21 -04:00
Kartikaya Gupta 8ad7a18daf Bug 1398241 - Update webrender to commit 7d9444a24fb98bcc41afdca2a5bf145d514500f1. r=jrmuizel
MozReview-Commit-ID: 7faAn2asOOw

--HG--
extra : rebase_source : 9203005b5edf5a846aceb16f8f8d6f7c9082898d
2017-09-14 08:14:53 -04:00
Jeff Muizelaar 23df55f0ef Bug 1397922. Correctly set the opacity of blob images. r=Gankro
Currently we're always marking them opaque even when they're not.
2017-09-09 17:43:45 -04:00
Nicolas Silva 59e80c8f7e Bug 1393031 - Use shared memory to pass resource update data. r=jrmuizel 2017-09-14 18:48:55 +02:00
Sotaro Ikeda 354fb7d239 Bug 1390138 - Add render() error handling to gecko. r=jrmuizel 2017-09-05 15:18:15 -04:00
Nicolas Silva 38b33aa593 Bug 1393031 - Separate WebRenderAPI and ResourceUpdateQueue. r=sotaro 2017-09-04 13:59:42 +02:00
Nicolas Silva 4b7b1e5992 Bug 1393031 - Use the ResourceUpdateQueue API on the content side. r=jrmuizel 2017-09-04 13:59:36 +02:00
Nicolas Silva 09e43ac029 Bug 1393031 - Expose webrender transactions at the ipc boundary. r=jrmuizel, r=kanru 2017-09-04 13:59:26 +02:00
Nicolas Silva 2830bb5952 Bug 1393031 - Make ResourceUpdateQueue move-only. r=sotaro 2017-09-04 13:59:17 +02:00
Nicolas Silva b067cea354 Bug 1393031 - Expose webrender resource updates in the C++ wrapper. r=sotaro 2017-09-04 13:59:12 +02:00
Sebastian Hengst 43bc951ac7 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: ES9rKhiQo10
2017-09-01 10:38:51 +02:00
Wes Kocher 6472928439 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 77Uz3uceUmk
2017-08-31 16:56:23 -07:00
Lee Salzman 251cd46deb Bug 1393055 - map ScaledFonts to WebRender FontInstanceKeys. r=jrmuizel
MozReview-Commit-ID: AadEI5CnTZ1
2017-08-30 13:45:11 -04:00
Kartikaya Gupta 4abab82626 Bug 1395237 - Fix for change in WR cset da0b2138. r=jrmuizel
MozReview-Commit-ID: LC6rp1Vysdp
2017-08-31 14:09:26 -04:00
Kartikaya Gupta 9a69b9b3c6 Bug 1395237 - Update webrender to commit 81cba6b139c4c1061cab6a1c38acf2ae7f50445d. r=jrmuizel
Includes Cargo.lock updates.

MozReview-Commit-ID: GsEbblWnzT3
2017-08-31 14:09:26 -04:00
Kartikaya Gupta 21ac463b1b Bug 1395212 - Avoid computing the entire ScrollMetadata for cases where we just need the scroll id. r=mstange
MozReview-Commit-ID: BEYfq2EqIel

--HG--
extra : rebase_source : 7315123162b80758be347c243375e28462352e06
2017-08-30 14:51:19 -04:00
Kartikaya Gupta 543988e106 Bug 1395212 - Update wr::DisplayListBuilder to expose separate APIs for defining and pushing scroll layers. r=mstange
This makes the DisplayListBuilder scrolling API more consistent with the
clipping API, and allows for more optimization at the call site (in the next
patch).

MozReview-Commit-ID: LdCA7wkXDwF

--HG--
extra : rebase_source : 1fe934e778c597f6a639ad2ecbda46995f8fd09e
2017-08-30 14:51:19 -04:00
Kartikaya Gupta b8355b02c7 Bug 1395212 - Hoist the scroll layer deduplication code out of bindings.rs into wr::DisplayListBuilder. r=mstange
This also splits the wr_dp_push_scroll_layer function in bindings.rs into two
separate functions. This makes the API consistent with clipping, and also allows
for optimizations in the upcoming patches.

MozReview-Commit-ID: IXnOZK0dZm

--HG--
extra : rebase_source : aa28875433a03ee9d6c388750f022958958d05e9
2017-08-30 14:51:19 -04:00
sotaro ac34705d9c Bug 1395110 - Remove ScopedBindTextureUnit from RenderDXGITextureHostOGL::EnsureLockable() r=nical 2017-08-30 21:29:48 +09:00
sotaro 11c145a7c1 Bug 1394338 - Add WebRender error handling to RendererOGL r=nical 2017-08-30 09:10:22 +09:00
Kartikaya Gupta 8933bc1c63 Bug 1394518 - Log the mWrState pointer in WRDL_LOG so we can distinguish the output from different pipelines. r=jrmuizel
MozReview-Commit-ID: A3KDJyBmSCX

--HG--
extra : rebase_source : e5f8f4a3e6e16ed88bb8c8acf28f97fd45f02850
2017-08-28 14:20:25 -04:00
Dzmitry Malyshau 0f699bc3ed Bug 1393468 - Fix for changes in WR cset 460a1ae9. r=jrmuizel
MozReview-Commit-ID: FOc07gJbfZY

--HG--
extra : rebase_source : 794c0bcc23091920ea35af76f9efb1997a963521
2017-08-28 09:27:48 -04:00
Kartikaya Gupta 2b2a05eaba Bug 1393468 - Regenerate FFI bindings header. r=jrmuizel
MozReview-Commit-ID: Kjy5LKXpicj

--HG--
extra : rebase_source : 690032246d0bdba4c5ee1439edb5551ffd9f60ba
2017-08-28 09:27:05 -04:00
Jeff Muizelaar 1dcc5366ff Bug 1387550 - Support tiled drawing of blob images in Gecko.
Tiling will be used when we need an image that's larger than
the max texture size.
2017-08-26 17:31:25 -04:00
Sebastian Hengst 4814ba9f4f Backed out changeset 326d1e6cf7b1 (bug 1393031) for bustage at gfx/layers/opengl/MacIOSurfaceTextureHostOGL.cpp:178: no member named 'AddExternalImage' in 'mozilla::wr::WebRenderAPI' on OS X and also bustage on Windows. r=backout on a CLOSED TREE 2017-08-25 12:42:01 +02:00
Sebastian Hengst 82246334ad Backed out changeset 663105088e1e (bug 1393031) 2017-08-25 12:40:37 +02:00
Nicolas Silva abdcea3c3b Bug 1393031 - Make ResourceUpdateQueue move-only. r=sotaro 2017-08-25 11:58:05 +02:00
Nicolas Silva d415c1134b Bug 1393031 - Expose WebRender's ResourceUpdates to C++. r=sotaro 2017-08-25 11:58:00 +02:00
Kartikaya Gupta 20b72b068b Bug 1393461 - Regenerate webrender_ffi_generated with cbindgen:0.1.23. r=jrmuizel
MozReview-Commit-ID: 7SX5isYVTl0

--HG--
extra : rebase_source : 2ee4ed248b7012268a596974b2e468f01cd419c9
2017-08-24 10:33:24 -04:00
Kartikaya Gupta 93e44f9dee Bug 1393461 - Update cbindgen.toml to note that cbindgen needs nightly. r=jrmuizel
MozReview-Commit-ID: Fs8VvriGOnA

--HG--
extra : rebase_source : d1838920e02a797bd4f85bec25f545294ee10576
2017-08-24 10:17:12 -04:00
Ethan Lin 376639c99a Bug 1392921 - In TopmostScrollId(), return FrameMetrics::NULL_SCROLL_ID when the scroll id stack is empty. r=kats
MozReview-Commit-ID: 3kmgsisMhW5

--HG--
extra : rebase_source : d9e20940fcc5c1790dbf4f3b6b2769b1fd054121
2017-08-23 14:46:38 +08:00
Nicolas Silva 9f6f1a7d88 Bug 1390840 - Add prefs to display the debugging view of webrender's texture cache and intermediate targets. r=jrmuizel 2017-08-23 12:00:37 +02:00
Sebastian Hengst 029f702dfd Backed out changeset 483991689217 (bug 1390840) for bustage at dist/include/mozilla/webrender/webrender_ffi_generated.h:1199: expected ',' before ')' token. r=backout 2017-08-21 18:39:59 +02:00
Sebastian Hengst 441fc1a176 Backed out changeset b9c53ad8893b (bug 1390840) 2017-08-21 18:38:22 +02:00
Nicolas Silva 55bbef54aa Bug 1390840 - Add prefs to display the debugging view of webrender's texture cache and intermediate targets. r=jrmuizel 2017-08-21 18:22:56 +02:00
Nicolas Silva 27126ac4d3 Bug 1390840 - Use cbindgen 0.1.21 in webrender's binding. r=jrmuizel 2017-08-21 18:22:45 +02:00
Kartikaya Gupta 4d8c254efc Bug 1389497 - Re-generate FFI header for change in WR cset 615bbe8. r=jrmuizel
MozReview-Commit-ID: 1rgTEUYOW1j

--HG--
extra : rebase_source : b5e016bf6428564c0815fcdd1eac0c8fbfc7cd0b
2017-08-18 09:13:15 -04:00
Kartikaya Gupta 36bcefa513 Bug 1389497 - Update bindings for API change in WR cset 63ec62c. r=kvark
MozReview-Commit-ID: 7vCZWSfb9Hh

--HG--
extra : rebase_source : 2be5ec3723c10d10fd912abe776c7a993e3ac57c
2017-08-18 08:57:09 -04:00
Kartikaya Gupta 83c2515b8a Bug 1389497 - Update webrender to commit 1007a65c6dd1fdfb8b39d57d7faff3cae7b32e0c. r=jrmuizel
MozReview-Commit-ID: LLg2tnX9LYu

--HG--
extra : rebase_source : 9fbbd518af8a3e2727edfe92ebf6171f272e9d65
2017-08-18 08:51:39 -04:00
Kartikaya Gupta 7017055b92 Bug 1390804 - When pushing a mask clip, don't record it in DisplayListBuilder's clip stack. r=ethlin
Recording mask clips in the clip stack changes the value of TopmostClipId()
which confuses the code in ScrollingLayersHelper. The mask clip can be
thought of as an "out-of-band" clip that ScrollingLayersHelper doesn't
need to know about. This patch adds a mechanism for pushing such
"out-of-band" clips without touching the clip stack.

MozReview-Commit-ID: 8Zeqtigk0cj

--HG--
extra : rebase_source : 35176f3c9d98d186f78d7a0ff44845c7c3c9f67e
2017-08-17 13:54:25 -04:00
Alexis Beingessner 9c4535798f Bug 1357545 - handle text-shadows/decorations with webrender (layers-free) r=jrmuizel
This replaces our DrawTargetCapture hack with a similar but more powerful TextDrawTarget
hack. The old design had several limitations:

* It couldn't handle shadows
* It couldn't handle selections
* It couldn't handle font/color changes in a single text-run
* It couldn't handle decorations (underline, overline, line-through)

Mostly this was a consequence of the fact that it only modified the start and end
of the rendering algorithm, and therefore couldn't distinguish draw calls for different
parts of the text.

This new design is based on a similar principle as DrawTargetCapture, but also passes
down the TextDrawTarget in the drawing arguments, so that the drawing algorithm can
notify us of changes in phase (e.g. "now we're doing underlines"). This also lets us
directly pass data to TextDrawTarget when possible (as is done for shadows and selections).

In doing this, I also improved the logic copied from ContainsOnlyColoredGlyphs to handle
changes in font/color mid-text-run (which can happen because of font fallback).

The end result is:

* We handle all shadows natively
* We handle all selections natively
* We handle all decorations natively
* We handle font/color changes in a single text-run
    * Although we still hackily intercept draw calls
    * But we don't need to buffer commands, reducing total memcopies

In addition, this change integrates webrender's PushTextShadow and PushLine APIs,
which were designed for this use case. This is only done in the layerless path;
WebrenderTextLayer continues to be semantically limited, as we aren't actively
maintaining non-layers-free webrender anymore.

This also doesn't modify TextLayers, to minimize churn. In theory they can be
augmented to support the richer semantics that TextDrawTarget has, but there's
little motivation since the API is largely unused with this change.

MozReview-Commit-ID: 4IjTsSW335h

--HG--
extra : rebase_source : d69f69648ade5c7a8e6bb756f4b8ab9e2543e576
2017-06-19 10:58:28 -04:00
Kartikaya Gupta 24d7292dde Bug 1389138 - Add helper to track the topmost scroll id on the WR stack. r=mstange
Note that when PushClipAndScrollInfo is called, we are pushing an
already-defined scrolling clip onto the stack, and anything that gets
pushed inside it is going to be defined as being inside that scrolling
clip. So we need to make sure to update the scroll id stack for those
calls as well. This was an oversight previously but it never mattered.

MozReview-Commit-ID: D40Gk00HYrq

--HG--
extra : rebase_source : 677a92f918481a73877f551b9ac32975e0110be9
2017-08-17 11:06:51 -04:00
Kartikaya Gupta 1155831470 Bug 1389138 - Introduce a variant type to allow unifying the clip and scroll ids. r=mstange
This allows us to keep a single stack where we track both clip ids and
scroll ids with the correct interleaving order that they were pushed in.

MozReview-Commit-ID: DHHfR8JnnBw

--HG--
extra : rebase_source : f2f80e89a400d5b9982d138b29e534701b247072
2017-08-17 11:06:31 -04:00
Sebastian Hengst 953d244299 Backed out changeset 442b037713d6 (bug 1389138) 2017-08-17 21:08:20 +02:00
Sebastian Hengst 6c9b12dc58 Backed out changeset d45e64ac4452 (bug 1389138) 2017-08-17 21:08:14 +02:00
Kartikaya Gupta 0f4e894586 Bug 1389138 - Add helper to track the topmost scroll id on the WR stack. r=mstange
Note that when PushClipAndScrollInfo is called, we are pushing an
already-defined scrolling clip onto the stack, and anything that gets
pushed inside it is going to be defined as being inside that scrolling
clip. So we need to make sure to update the scroll id stack for those
calls as well. This was an oversight previously but it never mattered.

MozReview-Commit-ID: D40Gk00HYrq

--HG--
extra : rebase_source : beee11f8694489183dbeb4edcd95d89f55656486
2017-08-17 11:06:51 -04:00
Kartikaya Gupta b3f900ac81 Bug 1389138 - Introduce a variant type to allow unifying the clip and scroll ids. r=mstange
This allows us to keep a single stack where we track both clip ids and
scroll ids with the correct interleaving order that they were pushed in.

MozReview-Commit-ID: DHHfR8JnnBw

--HG--
extra : rebase_source : 1eff7698ecc724b5457bdf67a6c4a70605038184
2017-08-17 11:06:31 -04:00
Wes Kocher 7a772df5bf Merge m-c to inbound, a=merge
MozReview-Commit-ID: BYZASFIrXxp
2017-08-14 17:58:17 -07:00
Wes Kocher 214677ea41 Merge autoland to central, a=merge
MozReview-Commit-ID: 9BfFPDy1vO7

--HG--
rename : browser/extensions/onboarding/content/img/icons_search-colored.svg => browser/extensions/onboarding/content/img/icons_singlesearch-colored.svg
rename : browser/extensions/onboarding/content/img/icons_search.svg => browser/extensions/onboarding/content/img/icons_singlesearch.svg
2017-08-14 17:28:19 -07:00
Morris Tseng 6391dec171 Bug 1389027 - Support nsDisplayPerspective in layers-free mode. r=kats
MozReview-Commit-ID: K0RCuQ8WEE3
2017-08-14 17:31:55 +08:00
Milan Sreckovic f330369b4e Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in .h files in gfx/*. r=botond
MozReview-Commit-ID: 4knfAC1HTI1

--HG--
extra : rebase_source : 6ac939b478d22d429e8643e6ba96e372d8220bfb
2017-08-14 08:28:11 -04:00
Jeff Muizelaar 7d06275014 Bug 1387301 - webrender_bindings: Remove a bunch of now unneeded into()s. r=kats 2017-08-14 15:18:38 -04:00
JerryShih 7b702f3d00 Bug 1352092 - Get the max texture size from WR. r=nical
The gecko side just queries the max texture size from gl context[1]. We
should query that size from WR.

[1]
https://dxr.mozilla.org/mozilla-central/rev/4c5fbf49376351679dcc49f4cff26c3c2e055ccc/gfx/webrender_bindings/WebRenderAPI.cpp#72

MozReview-Commit-ID: 6RQ8ZW9mWSE
2017-08-12 13:41:56 +08:00
Wes Kocher 5a4357c768 Merge inbound to central, a=merge
MozReview-Commit-ID: GArkKmOFIVH
2017-08-11 13:15:33 -07:00
Wes Kocher cff9e9b197 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 2YvHbITn9w3
2017-08-10 18:25:34 -07:00
Sebastian Hengst 51d351f567 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-08-10 17:41:11 +02:00
Kartikaya Gupta b36bbd4e9a Bug 1386483 - Push, push, push the clips, caching all the way. r=jrmuizel,mstange
This patch ensures that we push clips in WR for each display item,
reflecting the display item's clip chain as computed in Gecko. A display
item will often share part or most of its clip chain with other display
items, so we try to reuse the corresponding WR clip ids as much as we
can instead of defining new duplicated clips.

MozReview-Commit-ID: LkBh8LIpQ4J

--HG--
extra : rebase_source : 5af1de0931f1d059e98b5c66b15988961503e114
2017-08-08 15:43:29 -04:00
Kartikaya Gupta f10ce62128 Bug 1386483 - Split the wr_dp_push_clip method into two to allow reusing clips. r=jrmuizel
MozReview-Commit-ID: 90BEJGs8wGg

--HG--
extra : rebase_source : 9ef113bee43391c00912457afc395284899a23cb
2017-08-08 15:43:17 -04:00
Kartikaya Gupta be4742a4fb Bug 1385003 - Add missing call to deinit the renderer before dropping it. r=kvark
MozReview-Commit-ID: 3dmttqFqMJE

--HG--
extra : rebase_source : 7e122d07e086e4ad26255079edf3e1de309b685b
2017-08-09 10:46:53 -04:00
Kartikaya Gupta 01928f3eb3 Bug 1385003 - Update webrender bindings for API change in WR cset c7a5b78d. r=nical
MozReview-Commit-ID: DY5vwlv4JYM

--HG--
extra : rebase_source : 265cce68c927833120dcc55c0a1b230f6e042efc
2017-08-09 08:46:26 -04:00
Kartikaya Gupta 4088068ad0 Bug 1385003 - Update webrender bindings for API changes in WR cset 55acc967. r=nical
MozReview-Commit-ID: 3pW2ssFdb50

--HG--
extra : rebase_source : 22892c92f130ae429cce5c42f27b57068d9f08ee
2017-08-09 08:46:26 -04:00
Kartikaya Gupta bdee759275 Bug 1385003 - Autogenerated changes to go with webrender update. r=jrmuizel
This regenerates the cargo lockfiles and FFI bindings header. It also revendors
the third_party/rust libraries.

MozReview-Commit-ID: ID0YhoIH6cz

--HG--
extra : rebase_source : 7c22828a831eafcf527f2c3baf8d4d012db8f9a4
2017-08-09 08:46:25 -04:00
sotaro 162dcae649 Bug 1385003 - Use a different WebRenderAPI instance for each WebRenderBridgeParent. r=kats
Previously, the WebRenderBridgeParent for each content layer tree would use the
same WebRenderAPI instance as the top-level WebRenderBridgeParent for that window.
However, in order to make the namespacing changes work we now need to use a
separate WebRenderAPI instance for each WebRenderBridgeParent. The content
WebRenderAPIs are cloned from the parent one, so that they all share the same
backend, but can allocate resource IDs in distinct namespaces.

MozReview-Commit-ID: 7VTFL8F09n7

--HG--
extra : rebase_source : 2da1d03abc23bd7852e4b12fe133889bd80cad53
2017-08-09 08:46:25 -04:00
Kartikaya Gupta c18e91b352 Bug 1385003 - Update webrender bindings for API changes in WR cset f6d81d9. r=kvark
In theory the upstream API change should allow us to share the same WR renderer
instance across multiple WebRenderAPI instances. For now however I retain the
existing behaviour of one WR instance for each WebRenderAPI instance, but keep
track of the document id in a new DocumentHandle struct. The C++ side keeps
a pointer to this DocumentHandle struct instead of the raw RenderApi.

MozReview-Commit-ID: I9pCKOY1OYx

--HG--
extra : rebase_source : 7b0ae2ccb2692a76045371ac165468c7f7539b40
2017-08-09 08:46:24 -04:00
Jeff Muizelaar eb11415d0a Bug 1387298. wr: Remove items that we waited for from the table. r=nical
Otherwise we end up hitting assert in request()
2017-08-09 14:53:41 -04:00
Kartikaya Gupta 96b110eb9e Bug 1370682 - Allow passing in LayoutDeviceSize to wr::ToBorderRadius for convenience. r=jrmuizel,mstange
There's no real reason to restrict this to LayerSize, since we use
use Layer and LayoutDevice coordinate spaces interchangeably for
webrender. With the templating of the function the compiler doesn't know
what type to use for {0, 0} so I added a new function to deal with that.

MozReview-Commit-ID: BA83Sy9UjYH

--HG--
extra : rebase_source : 15e5b31d0275628713c5eb584d622d22485dfda9
2017-08-10 14:00:01 -04:00
Sebastian Hengst 015f8de9b5 Backed out changeset e5936d7c91ba (bug 1370682) for bustage: missing return statement at WebRenderTypes.h:361. r=backout on a CLOSED TREE 2017-08-10 18:30:00 +02:00
Kartikaya Gupta 9d778bce61 Bug 1370682 - Allow passing in LayoutDeviceSize to wr::ToBorderRadius for convenience. r=jrmuizel,mstange
There's no real reason to restrict this to LayerSize, since we use
use Layer and LayoutDevice coordinate spaces interchangeably for
webrender. With the templating of the function the compiler doesn't know
what type to use for {0, 0} so I added a new function to deal with that.

MozReview-Commit-ID: KyabB6P6LiA

--HG--
extra : rebase_source : d5fff8f21a17c433d3c8c580fdd3153140d61545
2017-08-09 19:19:03 -04:00
JerryShih 5d101602fb Bug 1357299 - P12: Add SyncObject in RendererOGL. v2. r=nical
With DXVA2 hardware-video-decoding, the RendererOGL should have a
synchronization mechanism to prevent the flickering of video texture.
Create a SyncObject in RendererOGL to do the texture synchronization.

The WebRenderAPI also exposes the RendererOGL's SyncHandle to
WebRenderBridgeParent. Then, the WebRenderBridgeParent could pass this SyncHandle
to the video decoding module for texture synchronization.

MozReview-Commit-ID: toQ2mO5fzG
2017-08-07 18:15:25 +08:00
JerryShih 54c85f4bbb Bug 1357299 - P4: Get the gl handle from d3d shared texture handle. v2. r=jgilbert
MozReview-Commit-ID: F4mPCALj1OY
2017-08-07 18:15:22 +08:00
JerryShih f488575a07 Bug 1357299 - P3: Support DXGI texture type for WR. v2. r=nical
Create the corresponding RenderTextureHost type and WR commands for DXGI texture type.

The DXGITextureHostD3D11 will use 1 or 2 image keys for non-nv12 and nv12 texture format.

The DXGIYCbCrTextureHostD3D11 is a special case. The WR uses ANGLE in windows platform,
but the ANGLE doesn't support A8 format directx texture directly. So, we use libyuv to
convert the DXGIYCbCrTextureHostD3D11 texture buffer into RGBA format buffer and use
WR::AddImage() for that image. This is a slow code path. We will refine this case later.

The whole RenderD3D11TextureHostOGL implementation is in the next patch.

MozReview-Commit-ID: F4mPCALj1OY
2017-08-07 18:15:22 +08:00
Kartikaya Gupta f852cfa561 Bug 1386020 - Use wr::IdNamespace instead of uint32_t for the WR namespace. r=sotaro
MozReview-Commit-ID: JbQNgNQHobO

--HG--
extra : rebase_source : c16f17e37e94a41127410daed01f32ec4b06cb91
2017-07-31 16:31:10 -04:00
sotaro df51f39768 Bug 1387922 - Add log of start or fwd Transaction to on screen timing r=nical 2017-08-11 10:57:21 +09:00
sotaro b87a43534e Bug 1384403 - Disable render_on_scroll in webrender r=kats 2017-07-31 10:38:26 +09:00
Wes Kocher 40c3480d89 Merge inbound to central, a=merge
MozReview-Commit-ID: JNxfwQh0cac

--HG--
rename : gfx/layers/wr/WebRenderCompositableHolder.h => gfx/layers/wr/AsyncImagePipelineManager.h
2017-07-28 17:40:43 -07:00
Nicolas Silva 230106d30b Bug 1383786 - Changes to the ffi boundary. r=sotaro 2017-07-28 14:08:11 +02:00
sotaro eaf00c953c Bug 1377619 - Add EndTransaction to on screen timing log for WebRender r=nical 2017-07-28 08:05:56 +09:00
Carsten "Tomcat" Book 740c6ff791 Merge mozilla-central to autoland 2017-07-28 15:27:47 +02:00
Kartikaya Gupta f5adf411b0 Bug 1383041 - Update bindings for API change in WR cset 9f66b56. r=mrobinson
MozReview-Commit-ID: BWXPn0b7g6t

--HG--
extra : rebase_source : 6a7157893a0e37f2c04377d8bcfc76ad5da40775
2017-07-28 08:18:54 -04:00
Kartikaya Gupta e3384bdea4 Bug 1383041 - Update bindings for API change in WR cset 9868ef4. r=jrmuizel
MozReview-Commit-ID: 3Jv1HwdfkPr

--HG--
extra : rebase_source : 6260eb1c2c62c23ef1f117943a993dafb4fae00d
2017-07-28 08:18:32 -04:00
Kartikaya Gupta 4c1a0de0df Bug 1383041 - Update bindings for IdNamespace changes in WR cset 6a2662c. r=kvark
MozReview-Commit-ID: 32dsMgqoOvf

--HG--
extra : rebase_source : 9e779e2d78ed9943d596a2b2f5c3f516e13b49a7
2017-07-28 08:18:30 -04:00
Ryan Hunt 11bda66c5d Bug 1383714 - Update to cbindgen 0.1.19. r=kats
MozReview-Commit-ID: FdtZ9Pw0Z2A

--HG--
extra : rebase_source : 1cabc3fcc16ccf20a8d111389ccbbf518c42f32e
2017-07-21 12:39:25 -04:00
sotaro 042b1fc3ec Bug 1382132 - Improving throttling GenerateFrame() r=nical 2017-07-24 09:22:20 +09:00
Jeff Muizelaar 8a6cb1a23e Bug 1381949 - Expose functions for dealing Arc<Vec<u8>> r=rhunt
We'll need this for interacting with the font data from C++
2017-07-20 14:41:23 -04:00
sotaro f6a2bc20d3 Bug 1382141 - Remove generate_frame from wr_api_set_root_pipeline() r=nical 2017-07-20 10:47:00 +09:00
Ryan Hunt 522bc76415 Bug 1382128 part 8 - Remove Wr prefix from some type aliases. r=kats
MozReview-Commit-ID: 5h7QobhcYc1

--HG--
extra : rebase_source : 34d6636b6c3726ccc21b105f05227e27f84e63c9
2017-07-19 03:28:58 -04:00
Ryan Hunt e06d502736 Bug 1382128 part 7 - Organize types in webrender_bindings. r=kats
This commit organizes the structs in bindings.rs to be sorted by similarity.

MozReview-Commit-ID: KIskAwDiJIc

--HG--
extra : rebase_source : 2854f8d7f3a60fee6e2136db6b1a91c9c7dc0e24
2017-07-19 02:54:10 -04:00
Ryan Hunt d9bbfee6e2 Bug 1382128 part 6 - Remove WrBorderSides, WrBorderRadius, WrBorderWidths, WrNinePatchDescriptors. r=kats
MozReview-Commit-ID: 7YkHoNs64T9

--HG--
extra : rebase_source : f6f29cea6753d95857b0d65ae97faed1ed306f10
2017-07-19 01:56:20 -04:00
Ryan Hunt c013220860 Bug 1382128 part 5 - Remove WrGradientStop and WrGradientExtendMode. r=kats
MozReview-Commit-ID: 47Rb5jUpCFX

--HG--
extra : rebase_source : 6b4d3e6193b08bc978751921d12a0bb37a60c927
2017-07-19 01:47:07 -04:00
Ryan Hunt f082c1791e Bug 1382128 part 4 - Remove WrGlyphInstance. r=kats
MozReview-Commit-ID: 2CpW51FKUoK

--HG--
extra : rebase_source : d24e596dbd1a114d660e0b0ec1657f3efc11965d
2017-07-18 18:53:09 -04:00
Ryan Hunt 9b7f455eef Bug 1382128 part 3 - Rename WrByteSlice to ByteSlice. r=kats
MozReview-Commit-ID: 4jOsyvwxKrq

--HG--
extra : rebase_source : b40f6aac20087f805366f2f304fb8d45072b936a
2017-07-18 18:35:52 -04:00
Ryan Hunt 017d292cac Bug 1382128 part 2 - Remove WrPoint, WrSize, WrRect, WrMatrix, and WrColor. r=kats
MozReview-Commit-ID: 9koNScu4CyE

--HG--
extra : rebase_source : 68185e949ddf2ae346a5d597d056a7f2d9ea7a28
2017-07-18 18:32:46 -04:00
Ryan Hunt 3f3cb0a954 Bug 1382128 part 1 - Use a namespace in webrender_bindings. r=kats
MozReview-Commit-ID: 3JTMa9Ix5S7

--HG--
extra : rebase_source : 0bea14d9e395cab260d2db5135b1f64e9f82b2e2
2017-06-27 19:20:36 -04:00
vincentliu 2bf7875f86 Bug 1367689 - Add a preference to make Wrench work with Gecko. r=jrmuize, jerry 2017-07-17 13:38:22 +08:00
Kartikaya Gupta 6027972e8b Bug 1379604 - Update webrender_bindings for API change in WR cset 6824b35. r=mrobinson
MozReview-Commit-ID: KM1kCDK1jvY

--HG--
extra : rebase_source : 1469f0459d2d83882b8d9001c18756f2c23ffe01
2017-07-13 10:28:53 -04:00
Kartikaya Gupta 104c0a782a Bug 1379604 - Update webrender_bindings for API change in WR cset d97598b. r=Gankro
MozReview-Commit-ID: dj0BJvAYXv

--HG--
extra : rebase_source : e9e42c2095e19d611694686a2b44610b5f22e325
2017-07-13 10:28:53 -04:00
Kartikaya Gupta 1faaf0568b Bug 1379604 - Update versions in Cargo.toml/Cargo.lock files. r=jrmuizel
MozReview-Commit-ID: 9PoNmkBFOhF

--HG--
extra : rebase_source : e50e1820e70ef3f4e3c0f8c8854ac45cc202677a
2017-07-13 10:27:44 -04:00
sotaro 3984156c9a Bug 1380578 - Change aHandle of NativeTextureToWrExternalImage() to uint32_t r=nical 2017-07-13 23:28:26 +09:00
JerryShih e3383b4f98 Bug 1369677 - Handle RenderTexture lock() failed. r=nical
MozReview-Commit-ID: Ghez1SJ6ghf
2017-08-31 03:17:00 -04:00
Kartikaya Gupta d17d2bb4c5 Bug 1374730 - Update webrender bindings for API changes in WR cset 5066a13. r=mrobinson
This change preserves the existing semantics of the webrender_bindings code,
although it may result in creating unnecessary clips. A follow-up bug will be
filed to make clip optional in the C++ interface, and avoid passing it in places
where it is not necessary.

MozReview-Commit-ID: KMeBumpgDXL

--HG--
extra : rebase_source : 9ec04e1e8f0b985532908460958f30ed42e220bd
2017-07-10 07:22:39 -04:00
Kartikaya Gupta 1e211e3fc4 Bug 1374730 - Update webrender bindings for API changes in WR cset dfd76c5. r=mrobinson
MozReview-Commit-ID: 4sOJ0ZXG411

--HG--
extra : rebase_source : 1c537ace90587e6ceec8e3d6a3092396be1598aa
2017-07-10 07:22:39 -04:00
Kartikaya Gupta 1c8a416cc1 Bug 1374730 - Update webrender_bindings for API changes in WR cset d8f0040. r=mrobinson
MozReview-Commit-ID: 8Sza9vj5tVg

--HG--
extra : rebase_source : 15e41f3d758a9ae1cdfd0ebbf02cd5e9822054e9
2017-07-10 07:22:39 -04:00
Kartikaya Gupta 3c97dec0f9 Bug 1374730 - Update for webrender_traits getting renamed to webrender_api in cset 5ebe3de. r=nical
MozReview-Commit-ID: 3q0LQyu82wh

--HG--
extra : rebase_source : c946fea386febc0e7ee0ce15cf27232b39fd01bc
2017-07-10 07:22:39 -04:00
Kartikaya Gupta 7fe2c84b1e Bug 1374730 - Update for clip API change in WR cset 0bf6655. r=mrobinson
MozReview-Commit-ID: dEe7yDDZPk

--HG--
extra : rebase_source : 09a1f858a347bdc95baa8015db9fa156b119334a
2017-07-10 07:22:39 -04:00
Kartikaya Gupta ca68cf1d4a Bug 1374730 - Update for ImageBorder API change in WR cset 9b8ee0c. r=kvark
MozReview-Commit-ID: L2xKwd3eu6Q

--HG--
extra : rebase_source : 9af45c8d29fe90c91a171898763b8be9abd38a2d
2017-07-10 07:22:38 -04:00
Kartikaya Gupta 43d050abae Bug 1374730 - Update webrender_bindings Cargo.toml and cbindgen.toml files. r=jrmuizel
MozReview-Commit-ID: 1rOw37FoHo8

--HG--
extra : rebase_source : ec04551e16d44f6157a379c58ad44253d833f657
2017-07-10 07:19:51 -04:00
sotaro be208a7200 Bug 1377688 - Remove RenderThread::NewScrollFrameReady() r=kats
WebRenderBridgeParent::CompositeToTarget() calls WebRenderAPI::GenerateFrame() if it is necessary to trigger UpdateAndRender(). It is not necessary to trigger UpdateAndRender() by new_scroll_frame_ready
2017-07-10 10:46:41 +09:00
Ryan Hunt 81eda4a130 Bug 1378543 - Update webrender_bindings for cbindgen:0.1.13. r=kats
MozReview-Commit-ID: LB1LLzBUWd2

--HG--
extra : rebase_source : 0f4486fc7248a4b4e9a33f9d8a0855c6ac034324
extra : amend_source : e510f9bf238975229fabe15475eb6ed6e9e0a7ab
2017-07-05 18:16:44 -04:00
Jeff Muizelaar 1b3f0224fd Bug 1377362. Make InlineTranslator::TranslateRecording() take data instead of a stream. r=lsalzman
This gives us a big improvement to deserialization speed.
2017-07-06 07:15:45 -04:00
sotaro 983800adec Bug 1376527 - Do not call NotifyDidRender when RendererOGL::Render() returned false r=nical 2017-07-04 19:25:24 +09:00
vincentliu 5eb2117b57 Bug 1371546 - Sync with the render thread when ShutDown() was called in main thread. r=nical, jerry 2017-07-03 20:08:22 +08:00
sotaro 178043d1da Bug 1357734 - Change argument of DisplayListBuilder::PushBorder() to bypass compiler bug r=jrmuizel
Visual Studio 2015 Update 3 has a bug that PGO build generates movaps to unaligned address. The patch just bypasses the compiler bu
2017-06-30 16:22:25 -07:00
Mats Palmgren 20e56bd3a7 Bug 1376464 - Use nsRefPtrHashtable for mRenderTextures then use Remove instead of Get+Remove. Replace Get().get() with GetWeak() in assertions. r=froydnj
MozReview-Commit-ID: 6tKFSrPLAW4
2017-06-28 01:03:16 +02:00
Carsten "Tomcat" Book 4e00eff077 merge mozilla-inbound to mozilla-central a=merge 2017-06-27 10:56:41 +02:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Kartikaya Gupta 34903d0ba6 Bug 1376215 - Stop exposing the WrClipRegionToken in WebRenderAPI.h APIs. r=jrmuizel
No functional changes intended in this patch. It merely simplifies the
additional patch that we'll need to update gecko past WR cset 0bf6655,
and saves some potential manual rebasing work.

MozReview-Commit-ID: Km8dBotP3NQ

--HG--
extra : rebase_source : 77c34ec1cbbc1c0fe4d1971feb131d30c97f0d66
2017-06-26 07:49:52 -04:00
Carsten "Tomcat" Book c2622cfcd0 Backed out changeset 504e5b1de987 (bug 1376215) for bustage 2017-06-26 13:07:09 +02:00
Kartikaya Gupta b459b56298 Bug 1376215 - Stop exposing the WrClipRegionToken in WebRenderAPI.h APIs. r=jrmuizel
No functional changes intended in this patch. It merely simplifies the
additional patch that we'll need to update gecko past WR cset 0bf6655,
and saves some potential manual rebasing work.

MozReview-Commit-ID: AgMyNapY2Og

--HG--
extra : rebase_source : d8522d8e806522a4a0e8b2cd1669db0374bd5e63
2017-06-25 14:45:54 -04:00
Markus Stange 99dd420f6b Bug 1368846 - Display the window buttons when webrender is used. r=kats,mattwoodrow
MozReview-Commit-ID: Ki4ONGxtzyO

--HG--
extra : rebase_source : b4b223ad64a117cee60fc19819833855b871f95a
2017-06-21 18:58:41 -04:00
Jeff Muizelaar 0de540ca2e Bug 1375534 - Add bindings for setting transform style to PushStackingContext. r=kats 2017-06-22 17:30:27 -04:00
Jeff Muizelaar 29a6af3f3d Bug 1375515 - Add the ability to convert RoundedRects to the WebRender form r=kats 2017-06-22 12:34:48 -04:00
Jeff Muizelaar e16b0717ca Bug 1373861. Pass a built display list to PushBuiltDisplayList by reference instead of value. r=Ganrko
Previously we needed to pass by value and that was causing us to clear out our
prebuilt display list when we actually wanted to keep it around.

The rust code ended up doing a bit of a silly dance but that's better than copying the display list around.
2017-06-21 18:40:13 -04:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey 6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Kartikaya Gupta df9b856f24 Bug 1373381 - Update for NestingIndex change in WR cset 229cf3a. r=mrobinson
MozReview-Commit-ID: CK2andK4v6I

--HG--
extra : rebase_source : 44f9511d97fb80a8f5c8928e31199fb02f405977
2017-06-20 09:38:51 -04:00
Kartikaya Gupta aed52fd94e Bug 1373381 - Update RGBA8 to BGRA8 since it was renamed in WR cset 264d53d. r=jrmuizel,kvark
MozReview-Commit-ID: 9iGffjS0sKs

--HG--
extra : rebase_source : b2698c9445a4299324615e76b5f50cff91d48796
2017-06-20 09:38:14 -04:00
Kartikaya Gupta e49c2ac396 Bug 1373381 - Update call to push_built_display_list due to API change in WR cset 4eea6ae. r=jrmuizel,mrobinson
MozReview-Commit-ID: 4WCVnEbf22m

--HG--
extra : rebase_source : 6ad40f37d54d5b461ca02a0c685d86be447bb780
2017-06-20 09:38:05 -04:00
Kartikaya Gupta 40bd0b7997 Bug 1373381 - Update webrender_bindings version numbers and generated header. r=jrmuizel
MozReview-Commit-ID: IVHRPGJedSq

--HG--
extra : rebase_source : 3e03175c117fd1e458e2dfa9a92f0acec267723a
2017-06-20 09:37:08 -04:00
Kartikaya Gupta beb80358ab Bug 1373378 - Do a better job tracking the ancestor scrollids in DisplayListBuilder. r=jrmuizel
In some cases we need to know the ancestor scrollid of a scrollid that we had
previously pushed onto the stack and then subsequently popped off. Since that
scrollid is no longer actually on the stack at the time of the query, we would
return Nothing(). Instead, this patch adds a map to "remember" previously
encountered scrollids and their ancestors, so that these queries can be correctly
handled.

MozReview-Commit-ID: BrtEv88ZysX

--HG--
extra : rebase_source : a14d72cd535c5cf7f57691b7d8be9aaf26303709
2017-06-16 15:12:24 -04:00
Sebastian Hengst d70c8aa98b merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-06-16 09:52:22 +02:00
sotaro 61c0f84377 Bug 1372512 - Fix webrender Key leaks of WebRenderBridgeParent on abnormal shutdown r=kats
This bug handles abnormal client shut down case and Tab move between different windows.

Abnormal client shut down case, WebRenderBridgeParent does not receive IPC messages that are sent during WebRenderLayerManager and WebRenderBridgeChild destruction. In this case, webrender keys except keys of external images are not removed from webrender. Abnormal shut down could happen when content process was crashed or content process was killed by ContentParent if shutdown takes too long time.

In the tab move case, the WebRenderBridgeParent will need to be re-bound to a different CompositorBridgeParent and webrender, and so will need to clear all its related keys from the old webrender. This will happen in a future patch.
2017-06-16 15:31:01 +09:00
Nicolas Silva f209188047 bug 1373135 - Mark wr_thread_pool_delete destructor-safe. r=kats 2017-06-15 14:20:12 +02:00
Sebastian Hengst 1b26da1b2f merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-06-15 11:17:07 +02:00
JerryShih 6175226606 Bug 1372803 - Remove the unnecessary AsMacIOSurfaceTextureHostOGL() interface in RenderTextureHostOGL. r=sotaro
This function is not necessary in our current implementation.

MozReview-Commit-ID: IyfzLTs3uQ6
2017-06-15 17:07:46 +08:00
Bobby Holley edc99fdc0c Bug 1341102 - Cherry-pick 0.8 rayon bump for in-tree webrender. r=kats
MozReview-Commit-ID: HZmoxOQzHrk
2017-06-14 20:21:38 -07:00
Wes Kocher c2afdb09bd Backed out changeset 5df8f9f0a5b9 (bug 1370430) to see if it unbreaks builds a=backout CLOSED TREE
MozReview-Commit-ID: G2snPHLTZg5

--HG--
rename : third_party/rust/euclid-0.13.0/src/matrix2d.rs => third_party/rust/euclid/src/matrix2d.rs
rename : third_party/rust/euclid-0.13.0/src/matrix4d.rs => third_party/rust/euclid/src/matrix4d.rs
extra : amend_source : 796c79ec645c0d1d357d052585ef9da24ec887fe
2017-06-13 19:16:09 -07:00
Wes Kocher 09a205279b Merge m-c to inbound, a=merge
MozReview-Commit-ID: 7AS5EEH6buZ
2017-06-13 18:36:04 -07:00
Wes Kocher 1af6d5cf57 Merge inbound to central, a=merge
UPGRADE_NSS_RELEASE
MozReview-Commit-ID: CBIFPwA5aNp

--HG--
extra : amend_source : 035a5be59d0046a643d0f836a95195e8c4ade4a6
2017-06-13 18:27:10 -07:00
Kartikaya Gupta 594d9df8f5 Bug 1370430 - Update webrender to cset 6752684fcc7402b0a5480e0b9f73152b2f9ed1e5. r=jrmuizel
In addition to update webrender/ and webrender_traits/, this updates
the webrender_bindings dependency on euclid to euclid-0.14.4. It also
updates some webrender_bindings code for this dependency update, and
for the BlobImageRenderer API change in WR cset 36a9117.

MozReview-Commit-ID: JlmTHrFdfUM

--HG--
rename : third_party/rust/euclid/src/matrix2d.rs => third_party/rust/euclid-0.13.0/src/matrix2d.rs
rename : third_party/rust/euclid/src/matrix4d.rs => third_party/rust/euclid-0.13.0/src/matrix4d.rs
2017-06-13 11:10:14 -04:00
Kartikaya Gupta e5fa0b8e06 Bug 1372321 - Log the mask rect when passing a WrImageMask to WR. r=jrmuizel
MozReview-Commit-ID: 3CdjfiwzZiJ

--HG--
extra : rebase_source : d3a6aac4042412d82aa1c3a5f47a40230d5297eb
2017-06-13 08:42:39 -04:00
Kartikaya Gupta 34ddac837f Bug 1372321 - When pushing a clip item, ensure the clip rect and mask rect are relative to the content rect. r=mrobinson+572841
MozReview-Commit-ID: BGnsq9qoinV

--HG--
extra : rebase_source : 1899a2b27e78c7552effc7ac2d4c1703a9ebbe30
2017-06-13 08:42:37 -04:00
Kartikaya Gupta 1e6ddf03d5 Bug 1372912 - Make the clip id more strongly typed. r=jrmuizel,mrobinson
This patch is not really needed, but it avoids accidental conversion
between FrameMetrics::ViewID (which represents a scrolling clip) and a
uint64_t id for a non-scrolling clip.

MozReview-Commit-ID: JriIfpECHe7

--HG--
extra : rebase_source : a7af8465c9c62a60856c190da64667439233f4b0
2017-06-15 17:02:20 -04:00
Sebastian Hengst 8d132d70e6 Backed out changeset 8176859f8b70 (bug 1372912) 2017-06-15 22:58:57 +02:00