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

528 Коммитов

Автор SHA1 Сообщение Дата
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
Kartikaya Gupta f910c3f66e 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: BU7p4WNocXa

--HG--
extra : rebase_source : 0cf69ca0a7b716bd9ad5c3cef114a3b99ec00e1b
2017-06-15 09:41:46 -04:00
peter chang c09bd44dec Bug 1371114 - Add gecko profiler labels for WebRender, r=kats
MozReview-Commit-ID: 4TRZgV8X1Ml

--HG--
extra : rebase_source : 1152c3a1d3444ebf91d55b2e2de4f123e1139a7f
2017-06-09 11:56:13 +08:00
Kartikaya Gupta 1bcefeafef Bug 1368496 - Expose the push_clip_and_scroll_info API in WR via WebRenderAPI. r=jrmuizel
MozReview-Commit-ID: f8gIDoUDC1

--HG--
extra : rebase_source : 12a7c8b9d466157ec63f3e57f77ab50b30f9b4fe
2017-06-08 11:34:01 -04:00
Kartikaya Gupta 25de5f333c Bug 1368496 - Track the pushed clip and scroll IDs. r=jrmuizel
Tracking the active clips and scroll layers is helpful for implementing
fixed-position type stuff, because we will need to answer questions like
"what is the ancestor scroll layer of this other scroll layer that is
somewhere on the stack" and "what is the currently active stack of
non-scrolling clips". This patch also adds a couple of methods to
WebRenderAPI that answers questions like these.

MozReview-Commit-ID: 9bgOW3Z8Tbp

--HG--
extra : rebase_source : 382f1d476217739d9e023e05d8b3886f268c6b72
2017-06-08 11:34:00 -04:00
JerryShih b28ccb02ff Bug 1366502 - Update the thread model for RegisterExternalImage(), UnregisterExternalImage() and GetRenderTexture() call. v2. r=sotaro
If we call UnregisterExternalImage() at non-render-thread and decrease the RenderTextureHost's ref-count to zero, the RenderTextureHost will be released in non-render-thread.
That will cause some problems if we use some thread-specific functions in ~RenderTextureHost().
This patch uses a message loop in UnregisterExternalImage() to resolve this problem.

MozReview-Commit-ID: CDazxGkE1cK
2017-06-07 23:44:05 +08:00
JerryShih e76df89dc3 Bug 1366502 - Make sure the RenderTextureHost is released in render thread. r=sotaro.
The RenderTextureHost might calls some thread-specific functions(e.g. OpenGL calls) in ~RenderTextureHost(). Add a checking here to prevent this problem.

MozReview-Commit-ID: 62QlavmXOig
2017-06-07 23:44:05 +08:00
JerryShih 77ea08e890 Bug 1366502 - Update BufferTextureHost and RenderBufferTextureHost for video pipeline. r=sotaro
WR supports the planar-ycbcr image format. We turn to use the planar-ycbcr image to get rid of the software-ycbcr-to-rgb color format conversion(using libyuv) in gecko.

The BufferTextureHost will use 3 image keys for SurfaceFormat::YUV format.
The RenderBufferTextureHost will also use 3 DataSourceSurfaces to represent the 3 channel data in planar-ycbcr format.

MozReview-Commit-ID: 3mMreSzKnMv
2017-06-07 23:44:04 +08:00
JerryShih 57f874da91 Bug 1366502 - Update the thread checking for WR image functions. r=sotaro
With the video pipeline, we could call the WR image functions in compositor thread.

MozReview-Commit-ID: LtaihkLnbL3
2017-06-07 23:44:03 +08:00
Ryan VanderMeulen 6cb217315a Backed out 12 changesets (bug 1366502) for causing intermittent QuantumRender debug crashtest crashes on a CLOSED TREE.
Backed out changeset 42350bacb0bc (bug 1366502)
Backed out changeset 7f98b7f60e58 (bug 1366502)
Backed out changeset 265e39153027 (bug 1366502)
Backed out changeset cf598918bb1b (bug 1366502)
Backed out changeset e2f21ee861e5 (bug 1366502)
Backed out changeset f7fcc15d8f90 (bug 1366502)
Backed out changeset 22408b6a1ad1 (bug 1366502)
Backed out changeset 8846dac9ee35 (bug 1366502)
Backed out changeset d5225d81b832 (bug 1366502)
Backed out changeset 82f5a21b53a6 (bug 1366502)
Backed out changeset 2b20aebef47d (bug 1366502)
Backed out changeset 95f4d82e3d79 (bug 1366502)
2017-06-06 18:06:42 -04:00
Martin Robinson 7d937678f4 Bug 1365972 - Add initial WebRender support for nsDisplayFilter. r=rhunt, r=mattwoodrow 2017-06-06 06:28:00 -04:00
JerryShih 719611f82b Bug 1366502 - Update the thread model for RegisterExternalImage(), UnregisterExternalImage() and GetRenderTexture() call. v2. r=sotaro
If we call UnregisterExternalImage() at non-render-thread and decrease the RenderTextureHost's ref-count to zero, the RenderTextureHost will be released in non-render-thread.
That will cause some problems if we use some thread-specific functions in ~RenderTextureHost().
This patch uses a message loop in UnregisterExternalImage() to resolve this problem.

MozReview-Commit-ID: CDazxGkE1cK
2017-06-06 19:18:40 +08:00
JerryShih 3c7cfd03af Bug 1366502 - Make sure the RenderTextureHost is released in render thread. r=sotaro.
The RenderTextureHost might calls some thread-specific functions(e.g. OpenGL calls) in ~RenderTextureHost(). Add a checking here to prevent this problem.

MozReview-Commit-ID: 62QlavmXOig
2017-06-06 19:18:40 +08:00
JerryShih 620a1df76e Bug 1366502 - Update BufferTextureHost and RenderBufferTextureHost for video pipeline. r=sotaro
WR supports the planar-ycbcr image format. We turn to use the planar-ycbcr image to get rid of the software-ycbcr-to-rgb color format conversion(using libyuv) in gecko.

The BufferTextureHost will use 3 image keys for SurfaceFormat::YUV format.
The RenderBufferTextureHost will also use 3 DataSourceSurfaces to represent the 3 channel data in planar-ycbcr format.

MozReview-Commit-ID: 3mMreSzKnMv
2017-06-06 19:18:39 +08:00
JerryShih c23ae2a1b2 Bug 1366502 - Update the thread checking for WR image functions. r=sotaro
With the video pipeline, we could call the WR image functions in compositor thread.

MozReview-Commit-ID: LtaihkLnbL3
2017-06-06 19:18:38 +08:00
sotaro 807999b9d6 Bug 1345054 part 1 - Allocate pipleline for each video r=nical 2017-06-02 16:11:34 +09:00
sotaro e155c862e7 Bug 1363958 - Fix WebRenderLayerManager::FlushRendering() r=nical 2017-06-02 08:07:59 +09:00
Kartikaya Gupta 0b60039322 Bug 1368551 - Don't send transforms to WR in push_stacking_context if they are identity. r=pchang
If we set a transform in push_stacking_context, it changes the internal
WebRender behaviour to make that stacking context a reference frame, and
things inside it are positioned differently. This is true even if the
transform is an identity transform.

In most cases we are hitting this and sending an identity transform
through, when in fact we want to be sending a None value to WebRender so
that it doesn't create reference frames. This is a partial fix, a proper
fix will be done in bug 1345577 by separating the CSS transform from the
other transforms that FrameLayerBuilder invents.

MozReview-Commit-ID: ElSs3hFMD2D
2017-06-01 09:17:17 -04:00
Kartikaya Gupta c054f05ef3 Bug 1368551 - Remove unneccessary overload of PushStackingContext. r=pchang
This overload is only called in one place, so we can just inline it. It
makes the API a little simpler.

MozReview-Commit-ID: H55IUduUSiJ
2017-06-01 09:17:16 -04:00
Kartikaya Gupta 1c8776063e Bug 1367734 - Tone down webrender's memory usage to avoid OOMing during media mochitests. r=kvark
MozReview-Commit-ID: 9RIR37ZOSFR
2017-06-01 08:57:32 -04:00
Kartikaya Gupta cab614e181 Bug 1367734 - Update webrender to cset a54cc729259588dd1ff52c86d0c62cb2a1767137. r=jrmuizel,jerry
In addition to updating webrender and webrender_traits, this patch:
- bumps the euclid dependency in webrender_bindings to match webrender
- updates the Cargo.lock files and re-vendors third-party rust packages
- updates the push_yuv_image callers due to an API change in WR cset a4b9e25.
2017-06-01 08:57:10 -04:00
sotaro 2e1b9ac498 Bug 1368483 - Pass WrColor in wr_api_set_root_display_list() r=nical 2017-06-01 09:53:58 +09:00
Kartikaya Gupta 2c6ff0ad8b Bug 1368487 - Add some default-disabled logging functionality to WebRenderAPI.cpp r=jrmuizel
MozReview-Commit-ID: DAqeAEyjCTm
2017-05-29 11:40:49 -04:00
Kartikaya Gupta 87a0d25e76 Bug 1365934 - Update webrender to 76a3213080ca5c2e2a612c3023c50c81a111fd55. r=jrmuizel,kvark
This includes a change to bindings.rs for an API change to the readback function
in webrender cset 052b0a7.

MozReview-Commit-ID: K9eMrF3O6OX
2017-05-25 13:27:55 -04:00
Nicolas Silva 4000bfa859 Bug 1370879 - Share the thread pool between webrender instances. r=jrmuizel 2017-06-13 17:57:16 +02:00
Nicolas Silva fa4995fa8f Bug 1370891 - Render blob images in webrender's thread pool. r=jrmuizel 2017-06-13 17:57:11 +02:00
Nicholas Nethercote 0be77baa96 Bug 1370329 (part 1) - Clean up the profiler's RAII classes. r=mstange.
This patch does the following renamings, which increase consistency.

- GeckoProfilerInitRAII -> AutoProfilerInit
- GeckoProfilerThread{Sleep,Wake}RAII -> AutoProfilerThread{Sleep,Wake}
- GeckoProfilerTracingRAII -> AutoProfilerTracing
- AutoProfilerRegister -> AutoProfilerRegisterThread
- ProfilerStackFrameRAII -> AutoProfilerLabel
- nsJSUtils::mProfilerRAII -> nsJSUtils::mAutoProfilerLabel

Plus a few other minor ones (e.g. local variables).

The patch also add MOZ_GUARD_OBJECT macros to all the profiler RAII classes
that lack them, and does some minor whitespace reformatting.

--HG--
extra : rebase_source : 47e298fdd6f6b4af70e3357ec0b7b0580c0d0f50
2017-06-07 12:33:19 +10:00
Kartikaya Gupta 7691215e03 Bug 1364525 - Produce scrollbar thumb transforms. r=botond
This updates PushStateToWR to actually produce the scrollbar thumb transforms
and append them into the provided transform array.

MozReview-Commit-ID: 14xlpRQXhhq
2017-05-23 10:50:42 -04:00
Kartikaya Gupta 00e2b11a13 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
extra : rebase_source : fbe93df33f5614d61536f090a69fe1588d34a34c
2017-06-13 11:10:14 -04:00
Kartikaya Gupta 5d656fab0f Merge m-c to graphics
MozReview-Commit-ID: HvsAeMjJAIA
2017-05-19 09:30:48 -04:00
sotaro cbec0e500e Bug 1365196 - Throttle GenerateFrame() r=kats,nical 2017-05-19 09:21:38 +09:00
JerryShih b4f6e9c835 Bug 1362049 - Handle multiple-channel format for RenderMacIOSurfaceTextureHostOGL. v4. r=mattwoodrow
We could use NV12 or YCbCr-planar format for video playback. There will be up to 3 channels in the MacIOSurface.

MozReview-Commit-ID: 77RYntphjYy
2017-05-18 22:59:08 +08:00
JerryShih 006c192621 Bug 1362049 - Use channel_index to get the correct channel data info from RenderTextureHost. r=nical
MozReview-Commit-ID: 3LaWdfglobe
2017-05-18 22:59:07 +08:00
JerryShih dbcaf29eae Bug 1362049 - Update the ext-image interface in WR binding. v2. r=nical
Use wr_api_add_external_image() to replace all types of ext-image adding functions.
Add a new interface wr_dp_push_yuv_interleaved_image() to put a single channel yuv_interleaved image in WR display list.

MozReview-Commit-ID: 1kDerOGwUuE
2017-05-18 22:59:07 +08:00
JerryShih 3774d02876 Bug 1362049 - Add R8G8 type in SurfaceFormat. r=bas.schouten
This R8G8 format will be used in NV12 image format.

MozReview-Commit-ID: KNJFwOasVts
2017-05-18 22:59:06 +08:00
Kartikaya Gupta aca076b94b Merge m-c to graphics
MozReview-Commit-ID: DFNbcj14mg9

--HG--
rename : memory/mozjemalloc/jemalloc.c => memory/mozjemalloc/mozjemalloc.cpp
rename : memory/mozjemalloc/jemalloc_types.h => memory/mozjemalloc/mozjemalloc_types.h
2017-05-18 08:34:15 -04:00
sotaro 12f8ed1f22 Bug 1360701 - Remove sync wait during removing pipeline r=nical 2017-05-16 17:28:20 -07:00
Kartikaya Gupta fc0b73bcdf Bug 1363683 - Update webrender to cset 7f37799d63ed80a07675ad599526290843394c99. r=jrmuizel
In addition to updating gfx/webrender and gfx/webrender_traits, this patch:
- Updates the webrender_bindings Cargo.toml file for version bumps
- Updates the Cargo.lock files and revendors the third-party rust dependecies
- Updates the webrender bindings for a change in the display list construction
  and finalization API in WR csets 425155a and 1eb84eb.
  We now have to pass around a content size parameter to construct a display list,
  and we get back a content size from finalizing the display list. Since we pass
  the finalization results over IPC to WebRenderBridgeParent, we need to update
  the IPDL as well to pass this around.
- Updates the webrender bindings for a change to scroll_node_with_id in WR cset
  48a098f.
- Updates the webrender bindings for a change to push_text in WR cset 3287c15.
2017-05-15 15:13:31 -04:00
Kartikaya Gupta 779cfe70bd Bug 1361497 - Add a mechanism to push the async scroll data from APZ to WR. r=jrmuizel,botond
This is the WR equivalent (but stripped down to the basics) of the code
in AsyncCompositionManager that advances APZ animations and applies the
async transform to the layer's shadow transform. Currently this doesn't
do anything fancy with the extra scrolling clips, or moving scrollbars,
etc.

MozReview-Commit-ID: BwbNRNHAc6G
2017-05-12 13:58:20 -04:00
Kartikaya Gupta 25fc029efd Bug 1361497 - Clean up the WR APIs for pushing scrolling clips vs non-scrolling clips. r=jrmuizel
The clips in WR do double-duty - they can be either scrolling clips or
non-scrolling clips. From gecko's point of view we want to treat them
separately so this updates the WebRenderAPI wrapper to expose two
different APIs for the two types of clips.

MozReview-Commit-ID: 3SLWkAq7Uxd
2017-05-12 13:58:09 -04:00
Kartikaya Gupta 5068b9bf11 Bug 1364214 - Convert some tabs to spaces. r=me and DONTBUILD
MozReview-Commit-ID: IWn11Ev1j4J
2017-05-11 17:21:11 -04:00
Alexis Beingessner 6ece5add60 Bug 1361751 - Update gecko bindings to webrender to reflect changes in PR 1181. r=kats
MozReview-Commit-ID: Fxt4sNm4vxa
2017-05-08 13:52:16 -04:00
Kartikaya Gupta 7818effada Bug 1361751 - Update webrender to 964df2f. r=jrmuizel
This includes the Cargo.lock file changes and regenerated bindings.
2017-05-10 10:28:39 -04:00
Alexis Beingessner 27c2836b77 Bug 1363201 - fix the impl of WrVecU8, r=jrmuizel
Two bugs:

* We were failing to (re)initialize the length to 0, leading to segfaults on Rust processing "empty" lists.

* We were setting the pointer of empty Vec's to null, which is technically UB in Rust because Vec tells Rust its pointer is non-null (this is why Option<Vec<T>> has the same size as Vec<T>). align_of::<T> is what it uses to as a non-null junk pointer, which in this case is 1.

MozReview-Commit-ID: Gzy1NtKlSV7
2017-05-08 17:24:39 -04:00
Ryan Hunt 05ee8df788 Bug 1362925 - Update webrender_bindings for cbindgen:0.1.7 r=kats
MozReview-Commit-ID: AwlqUWWEWfz

--HG--
extra : rebase_source : deace018f5d25f3eeecd5d4d683bb4f9a782a05c
extra : amend_source : 051d621e7b35e5389627b0946e7f87f0f8b9fa14
2017-05-08 01:31:20 -04:00
Lee Salzman b138a8ec44 Bug 1365935 - add Moz2D Factory methods for making an FT_Library. r=jrmuizel
MozReview-Commit-ID: 7gQuVrl38aT
2017-05-18 13:16:06 -04:00
Kartikaya Gupta 989470c342 Bug 1360246 - Update code to use StackingContextHelper::ToRelativeWr* instead of RelativeToParent. r=nical
This updates more code that was using RelativeToParent() to use the
stacking context helper's ToRelativeWr* functions instead. This get us
closer to breaking the assumption that the WR stacking context order maps
1:1 to the layer tree structure.

MozReview-Commit-ID: HQrbvCgPOW4
2017-05-03 08:48:08 -04:00
Jeff Muizelaar 8c32ac0090 Bug 1360001. Add WebRenderPaintedLayerBlob for painting with BlobImages. r=kats
This is a bit of a rough implementation but it works
enough to start.
2017-05-01 21:58:52 -04:00
Lee Salzman 6648f1fbf8 Bug 1364628 - give each webrender blob image renderer thread its own thread-local FT_Library to work around unsafe FT_Face rasterization/metrics calls. r=jrmuizel
MozReview-Commit-ID: 5sJznRRV3bq
2017-05-17 21:56:58 -04:00
JerryShih b4ebe36472 Bug 1360435 - Update WR bindings for b9f7e2926731f0ed831108456c219cae30a7e4c8. r=kats
Update for blob image and yuv image interface changes.
The implementation of the blob image renderer is empty now. It will need to be
updated in another commit. This also adds wr_dp_push_yuv_*_image() functions in
WebRenderAPI.

There is no change for |./mach vendor rust|.

MozReview-Commit-ID: Kk2rPAmt3vF
2017-04-28 17:00:57 -04:00
JerryShih ed60edae0c Bug 1351189 - update WR external image callback interface. r=sotaro
The new parameter "channel index" is used to select the specific channel data from a multiple channel textureHost(e.g. yuv format textureHost).

MozReview-Commit-ID: Ey1cA25Z6WH
2017-04-28 14:16:26 +08:00
JerryShih 51510de95b Bug 1359738 - Add push_yuv_image() in WR binding.
Please check [1] for webrender_ffi_generated.h updates.

[1]
https://dxr.mozilla.org/mozilla-central/rev/f229b7e5d91eb70d23d3e31db7caff9d69a2ef04/gfx/webrender_bindings/webrender_ffi_generated.h#7

MozReview-Commit-ID: 3PolFzfQB0l
2017-04-27 15:08:20 +08:00
Kartikaya Gupta 86403106c8 Bug 1358156 - Update webrender to 1437cc124696ecc95b726dffa17f918bb6ea5af1. r=jrmuizel
In addition to updating the Cargo.toml/Cargo.lock files and generated FFI header,
this patch also:
- Updates a couple of field names in the IPC serialization code as a result
  of webrender cset 8ca10a8
- Removes z-index related goop, since it's no longer needed as of webrender
  cset c872232
2017-04-26 10:33:14 -04:00
Kartikaya Gupta 5490a9c0ff Bug 1359462 - Ensure we don't pass a nullptr to slice::from_raw_parts. r=rhunt
Apparently passing a nullptr to slice::from_raw_parts is unsafe. So we
wrap those calls into a helper function that returns an empty slice
instead.

MozReview-Commit-ID: EAp90FKb8cQ
2017-04-25 15:17:01 -04:00
Sotaro Ikeda cbe34ab9f7 Bug 1359295 - Call MakeCurrent() before destroying webrender renderer r=nical 2017-04-25 08:39:33 -07:00
Lee Salzman ea130e2494 Bug 1357952 - update WebRenderAPI to allow index in add_raw_font. r=jrmuizel 2017-04-21 11:50:21 -04:00
Kartikaya Gupta b3a7bb5ca2 Bug 1357392 - Update webrender to f3fa3481aac63ac93c6ccbe805379875e24e5b77. r=jrmuizel,jerry,lsalzman
In addition to regenerating the FFI header and re-vendoring third-party rust
dependencies, this includes the following changes to webrender_bindings code:
- removal of release callback function as a result of changes in 86d4255
- update callback functions for new parameter added in d733af2
- update calls to add_raw_font for API change in 21f2946
2017-04-21 09:58:56 -04:00
Kartikaya Gupta 47ca6562cc Merge m-c to graphics
MozReview-Commit-ID: 3l2zmVoMgdl
2017-04-20 08:47:24 -04:00
sotaro e39bdc681a Bug 1356944 - Fix external image id allocation of WebRenderTextureHost r=nical 2017-04-20 10:24:13 +09:00
sotaro d85c0f08e4 Bug 1357644 - Use wr::ExternalImageId instead of uint64_t for external image id r=nical 2017-04-19 18:59:53 +09:00
Ryan Hunt 6eca7a5745 Bug 1357543 - Add rustfmt.toml and run rustfmt on webrender_bindings r=kats
The new rustfmt.toml is based off servo/rustfmt.toml with some
tweaks to match the existing code in webrender_bindings

MozReview-Commit-ID: 7LbXC6qyjan

--HG--
extra : amend_source : 436e49dbd3d3fd72aab0f1791cf6e0d3fcc348b4
2017-04-18 16:20:53 -04:00
Ryan Hunt 2d446d69ea Bug 1357335 - Use Into<T> for webrender bindings conversions r=kats
Types also implement Copy, Clone now to make this easier.

MozReview-Commit-ID: GEVsCEw2o6K

--HG--
extra : rebase_source : b42ddaab3b7ab0a31006e78aff45ddb6e4160845
extra : amend_source : 82a7e1d272b397c8ab1d0346fd5a708117b897a3
2017-04-18 04:18:35 -04:00
Kartikaya Gupta 76ded9a0bf Bug 1355475 - Update webrender to 07b6c6a1f93b5d8af1dd9ae825906dcf5c310810. r=jrmuizel
This also includes changes to webrender_bindings:
- push_scroll_layer was renamed to push_clip_node in eb4a04b
- Update call to push_text for API change in f040e81.

MozReview-Commit-ID: ILHylvSkco2
2017-04-18 11:18:02 -04:00
Kartikaya Gupta e972cba381 Bug 1357065 - Add a PushClip/PopClip API to WebRenderAPI to more easily distinguish between scrolling clips and non-scrolling clips. r=jrmuizel
Note that in upstream WR the push_scroll_layer API has already been
renamed to push_clip_node, so conceptually the same API covers both
"scrolling clips" (aka scroll layers) and non-scrolling clips. So using
the same underlying API for two different WebRenderAPI.h functions makes
sense.

MozReview-Commit-ID: He7jBVqZuLn
2017-04-18 11:09:39 -04:00
Kartikaya Gupta 8a3a856227 Bug 1357065 - Rename the parameters to PushScrollLayer to be more correct. r=jrmuizel
This changes the parameters to be in line with the clipping documentation.

MozReview-Commit-ID: Fg3iviLTL0g
2017-04-18 11:09:29 -04:00
Kartikaya Gupta fc1d59434f Bug 1357643 - Annotate wr_api_delete so that it can be called in a destructor in non-webrender builds. r=me
MozReview-Commit-ID: 4JrLFCRwxxO
2017-04-19 11:42:27 -04:00
Nicolas Silva fb9bd819a5 Bug 1357643 - Annotate wr_state_delete so that it can be called in a destructor in non-webrender builds. r=kats 2017-04-19 15:20:23 +02:00
peter chang e238a80556 Bug 1345017 - Add animation sampling for WR, r=kats
MozReview-Commit-ID: AR2vajUf2o0
2017-04-12 16:40:48 +08:00
peter chang b9d10e90b5 Bug 1345017 - Update WebRenderAPIs to enable OMTA, r=kats
MozReview-Commit-ID: L8HSxvzoEJZ
2017-03-29 17:23:08 +08:00
Ryan Hunt 444067a435 Bug 1356371 - Use cbindgen for WebRender bindings generation r=kats
This commit adds some directives to help cbindgen generate correct
structs and functions, removes some old FFI code that isn't needed
anymore, and regenerates webrender_ffi_generated.h

MozReview-Commit-ID: KZSEZEN671A

--HG--
extra : rebase_source : 23a07dd11037943156983d9facc039bb7af51c95
2017-04-13 15:45:51 -04:00
Ryan Hunt 422ca37abb Bug 1356371 - Create a WrExternalImageId because ExternalImageId is not repr(C) r=kats
This is only temporary as ExternalImageId has been made repr(C) upstream.

MozReview-Commit-ID: 1On7fRbNI4o

--HG--
extra : rebase_source : 91cb93829de5ccf0a6f0a05ed0d2169268b6c18c
2017-04-13 15:31:09 -04:00
Ryan Hunt d2799c4902 Bug 1356371 - Create a WrRenderedEpochs struct r=kats
This helps cbindgen know to generate a opaque struct for WrRenderedEpochs.

MozReview-Commit-ID: 7moOEBjjbOO

--HG--
extra : rebase_source : 49b3887ae21f659ac353b861f3566cc2817103b0
2017-04-13 15:03:44 -04:00
Ryan Hunt 070551c13f Bug 1352657 - Add a comment about webrender binary recording r=jrmuizel 2017-04-13 14:32:04 -04:00
Ryan Hunt 6aa2c5a2aa Bug 1356057 - Add a WrGlyphInstance struct r=kats
MozReview-Commit-ID: ApIOZyS4VV7

--HG--
extra : rebase_source : cffc119aee9ddf030bc99317667805278295a5ac
extra : histedit_source : 29ce59257222377ffbadf0987ebbe85f1d736a8e
2017-04-12 23:28:40 -04:00
Ryan Hunt 98343720ca Bug 1356057 - Make bindings.rs euclid conversions generic r=kats
MozReview-Commit-ID: 5FLg5UD6IlN

--HG--
extra : rebase_source : d071ed1aaf7bc3a1c40c90c454296b3799e6ad88
extra : histedit_source : ae48b57065eef16dad172cc33fbf2c43026f2dfc
2017-04-12 23:41:02 -04:00
sotaro 79b1971bae Bug 1356088 - Fix ImageKey removals of ExternalImages r=jrmuizel 2017-04-13 20:53:21 +09:00
Ryan Hunt bfa4ee5cb2 Bug 1355570 - Update bindings and WebRender display list building for gradient tiling r=jrmuizel
MozReview-Commit-ID: KwhCBc8XxCN

--HG--
extra : rebase_source : a5608b3388528ae1bd39be5f2fd9b2094193d46c
extra : source : c244293944bc163a742ef1b6f4225a751db5f796
extra : histedit_source : 860c2dc0fd3f8a5f35aea9b1ca15218d64208b65%2C803c9c5d3e85ee73fda2e3ccf504426b4798aecb
2017-04-12 14:20:52 -05:00
Kartikaya Gupta 4ae17c3c9c Bug 1354944 - Plug in the generated FFI header. r=jrmuizel
MozReview-Commit-ID: E6qlCffKH1s
2017-04-11 22:17:18 -04:00
Kartikaya Gupta 851b246da0 Bug 1354950 - Add a destructor_safe doc attribute as a hint to the binding generator. r=rhunt
MozReview-Commit-ID: 3N1JsRsB01g
2017-04-11 22:17:10 -04:00
Kartikaya Gupta 8318f4c805 Bug 1355590 - Fix WrClipRegion/WrRect mismatch in a couple of Rust FFI functions. r=mtseng
MozReview-Commit-ID: 4gUyk4cRTAo
2017-04-11 22:17:02 -04:00
Kartikaya Gupta 23053869fc Bug 1355615 - Update wr_api_finalize_builder to take pointers on the C++ side to match the Rust side. r=jrmuizel
MozReview-Commit-ID: IskZgT17n42
2017-04-11 18:03:59 -04:00
Kartikaya Gupta ee6ed70bc5 Bug 1355614 - Update wr_dp_push_text to take an immutable pointer to match the C++ side. r=jrmuizel
MozReview-Commit-ID: GjHo8RBt3wX
2017-04-11 18:01:04 -04:00
Kartikaya Gupta db665d693b Bug 1355612 - Make WrGlyphInstance hold a Point2D instead of raw x/y to match the Rust side. r=jrmuizel
MozReview-Commit-ID: 7OtctQ4gWyv
2017-04-11 18:00:50 -04:00
Kartikaya Gupta 8050498fed Bug 1355602 - Decouple pushing scroll layers from pushing stacking contexts. r=jrmuizel
This removes the call to push_scroll_layer in wr_push_stacking_context, so that
it's now possible to push a stacking context without necessarily pushing a
scroll layer. There is already a separate function to push a scroll layer so the
call sites can do that. This patch just changes all the call sites that were
pushing a stacking context to also push a scroll layer, so there should be no
functional change. Future patches can remove the spurious scroll layers.

MozReview-Commit-ID: FtCkc9JQd8l
2017-04-11 17:04:59 -04:00
Kartikaya Gupta 728e0fbb28 Bug 1355578 - Update push_scroll_layer's signature on the Rust side to match that on the C++ side. r=jrmuizel
MozReview-Commit-ID: 9ouWihnNkbR
2017-04-11 16:13:58 -04:00
Kartikaya Gupta 1880bd37a5 Bug 1355577 - Make the pointer in WrByteSlice const on the C++ side to match the Rust side. r=jrmuizel
MozReview-Commit-ID: FWCzZt8RAMj
2017-04-11 16:13:44 -04:00
Kartikaya Gupta 59dd9e78bc Bug 1353484 - Update webrender to 3dd68f54e12bd5abf8ef41de4d4ec851620f7e4e. r=jrmuizel,kvark,rhunt
This includes:
- updating calls to push_scroll_layer for API change in 7253e2f.
- updating calls to push_stacking_context for API change in be249f6.
- updating for changes to gradient APIs in 05c4293.
2017-04-11 10:00:41 -04:00
Kartikaya Gupta de71f88ab4 Bug 1354946 - Add an explicit WrMatrix type for passing 4x4 matrices across the FFI boundary. r=rhunt
Right now we just cast from a float* on the C++ side to a LayoutTransform on
the Rust side, except the LayoutTransform isn't a repr(C) storage type, so
there's no guarantee that it will actually have the same layout. Adding an
explicit type and conversion code ensure that we are able to pass the matrix
across the boundary safely.

MozReview-Commit-ID: H3gK3g0K3xz
2017-04-11 08:33:58 -04:00
Kartikaya Gupta 6f05b1f766 Bug 1355187 - Update some of the ExternalImage data types to be more similar in Rust and C++. r=rhunt
The WrExternalImageId is currently a struct wrapping a uint64_t on the C++ side,
which is unnecessary as we can just typedef it directly to a uint64_t. On the
Rust side it's a tuple of (u64).

Also the WrExternalImageIdType enum should be WrExternalImageType for consistency.

MozReview-Commit-ID: DgOf4xfY9h3
2017-04-10 17:38:02 -04:00
Kartikaya Gupta 1358415529 Bug 1355187 - Rename some struct fields so that the Rust/C++ names are the same. r=rhunt
The binding generator just takes the Rust field names and uses that in the
generated C++ structs. So installing the autogenerated bindings is easier if
we make sure the names are the same ahead of time.

MozReview-Commit-ID: 6cuzmtI5Qqw
2017-04-10 17:38:02 -04:00
Kartikaya Gupta 2e1233a137 Bug 1355187 - Add type aliases for instantiations of WrSideOffsets. r=rhunt
The binding generator needs this in order to deal with the generic-ness of the
WrSideOffsets type.

MozReview-Commit-ID: GetmNIpqf7O
2017-04-10 17:38:01 -04:00
Kartikaya Gupta 61b80a8602 Bug 1355187 - Update Rust FFI function signatures to use types with Wr prefix. r=rhunt
This patch:
- adds a type alias for ExternalImageId and updates uses.
- renames WrExternalImageStruct to drop the "Struct" suffix which is redundant
  and not present in the corresponding C++ struct.
- updates the delete-font function to use aliases I added previously.

MozReview-Commit-ID: ILsFihkMlIw
2017-04-10 17:38:01 -04:00
Kartikaya Gupta 48eb1475b5 Bug 1355183 - Mark WrExternalImageType as repr(u32) instead of repr(C). r=rhunt
On the C++ side the enum extends from uint32_t, like all the other enums across
the WR FFI boundary. So the Rust side they should be repr(u32).

MozReview-Commit-ID: JOf44I154ea
2017-04-10 17:38:01 -04:00
Kartikaya Gupta 8c1aeb1cb3 Bug 1354951 - Add some typedefs in bindings.rs to make the rust function signatures better match the signatures in webrender_ffi.h. r=rhunt
MozReview-Commit-ID: 8JZDNMwLDpN
2017-04-10 10:28:45 -04:00
Kartikaya Gupta 18bf4caba2 Merge m-c to graphics
MozReview-Commit-ID: ICVAgHmKVL4
2017-04-10 08:47:20 -04:00
Morris Tseng d4a7aaf673 Bug 1347469 - Add bindings for gradient border. r=kats
MozReview-Commit-ID: H6OwWaeBYWY
2017-04-10 17:27:30 +08:00
Ethan Lin 0834f181db Bug 1351242 - Add webrender support for nsDisplayBackgroundImage image type. r=mchang 2017-04-07 14:53:16 +08:00
Lee Salzman 22fb7629b8 Bug 1348980 - use UnscaledFont to track WebRender font keys. r=jrmuizel 2017-04-06 17:41:24 -04:00
Kartikaya Gupta dc8c89efa4 Bug 1353735 - Fix repr(C) on enums to repr(u32). r=jrmuizel
MozReview-Commit-ID: FQ6U48xMiRe
2017-04-05 11:19:00 -04:00
Kartikaya Gupta 452cd0c0a2 Bug 1353735 - Fix return value of binding function. r=jrmuizel
MozReview-Commit-ID: 3COc4L4J5Y2
2017-04-05 11:18:52 -04:00
Kartikaya Gupta ebd34c8deb Bug 1353735 - Fix missing ABI declaration. r=jrmuizel
MozReview-Commit-ID: IZkitQliVma
2017-04-05 11:18:43 -04:00