Commit graph

83 commits

Author SHA1 Message Date
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
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
Martin Robinson
7d937678f4 Bug 1365972 - Add initial WebRender support for nsDisplayFilter. r=rhunt, r=mattwoodrow 2017-06-06 06:28:00 -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
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
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
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
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
Lee Salzman
ea130e2494 Bug 1357952 - update WebRenderAPI to allow index in add_raw_font. r=jrmuizel 2017-04-21 11:50:21 -04: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
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
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
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
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
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
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
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
Sotaro Ikeda
fe30e9db69 Bug 1323612 (Part 2) - Add runtime fixups for WebRender on Android. r=kats
MozReview-Commit-ID: 2fWRPkRM52e
2017-04-05 10:12:11 -04:00
Ryan Hunt
7ab0cb366b Bug 1351480 - Update bindings for gradients. r=jrmuizel
MozReview-Commit-ID: 48bjXH4ZCBi
2017-03-31 19:18:44 -04:00
JerryShih
9e90247f7f Bug 1347062 - P2: use WrImageDescriptor for wr_api_add_external_image_handle(). r=nical,sotaro
MozReview-Commit-ID: 1dNQRZGeKaA
2017-03-31 22:29:14 +08:00
Sotaro Ikeda
d4d0425579 Bug 1323316 - Use ANGLE for WebRender on Windows. r=jrmuizel,kats
MozReview-Commit-ID: Fg5GEWNRtIu
2017-03-29 10:14:19 -04:00
Wes Kocher
ed79d988f0 Merge autoland to central, a=merge
MozReview-Commit-ID: 4DDSNU4ABBB
2017-03-27 17:03:30 -07:00
Nicolas Silva
4a5a35a9a2 Bug 1347641 - Implement the BlobImageRenderer binding glue. r=jrmuizel 2017-03-27 13:44:52 +02:00
Nicolas Silva
c95461e37f Bug 1347641 - Add ByteSlice to pass constant u8 slices across ffi. r=jrmuizel 2017-03-27 13:44:22 +02:00
Sotaro Ikeda
ece294bef8 Bug 1325911 - Update Gleam to v0.4. r=kats
MozReview-Commit-ID: 6QghwNrEC9V
2017-03-20 12:10:40 -04:00
Kartikaya Gupta
3a0ad46db3 Bug 1350986 - Add some gfxCriticalNote messages for WebRender startup failure codepaths. r=jrmuizel
MozReview-Commit-ID: 7VHA8QBMvJ8

--HG--
extra : rebase_source : e90a2a9f5d89e417e02b1a6cc67fcc3e6973c115
2017-03-27 14:32:39 -04:00
Morris Tseng
11f13fedeb Bug 1341156 - Modify webrender_ffi and add OpDPPushBorderImage. r=kats r=ethlin
MozReview-Commit-ID: Ct63gy6nk3q
2017-03-13 11:46:03 +08:00
Ryan Hunt
4450cd3bae Bug 1345907 - Use clip region instead of clip rect r=kats
--HG--
extra : rebase_source : 23506430d8aa7b2097de208a3415d8597a1e13cd
2017-03-09 11:57:06 -05:00
Ryan Hunt
f940d903d8 Bug 1345907 - Add bindings for ClipRegion r=kats
--HG--
extra : rebase_source : ef7e188eee29e2d2abc069940c84e4e3769948ed
2017-03-09 11:54:16 -05:00
sotaro
6a06e56c91 Bug 1345344 - Pass stride for ExternalImageBuffer r=nical 2017-03-09 11:10:09 +09:00
sotaro
1d710a54ef Bug 1343764 - Add ExternalBuffer handling r=nical 2017-03-07 19:37:28 +09:00
Jeff Muizelaar
900393a0dc Bug 1344396. Build the display lists directly. r=kats
This is a largely uninteresting patch that just uses the DisplayListBuilder
directly. A wonderful cleanup patch will come after this. One of the more
interesting pieces is the use of PushBuiltDisplayList. This is needed for
handling empty transactions. See https://github.com/servo/webrender/pull/934
for more info.
2017-03-06 23:16:30 -05:00
Jeff Muizelaar
724ef940ac Bug 1343019 - Call set_window_parameters as appropriate. r=kats
MozReview-Commit-ID: 14f4vetRM98
2017-03-06 17:41:51 -05:00
Kartikaya Gupta
cc2056e901 Bug 1343019 - Update webrender to cset 178a65d098afcda7de0298d80d423bc80c6426ba. r=jrmuizel
In addition to updating webrender and the third-party deps, this includes:
- Marking some more reftests as passing with the new version of webrender.
- Updating webrender bindings code to go with changes to push_stacking_context.
- Passing the window dimensions to the Renderer::new function.

MozReview-Commit-ID: 6dRHvAmIQ40

--HG--
rename : third_party/rust/servo-dwrote/.gitignore => third_party/rust/dwrote/.gitignore
rename : third_party/rust/servo-dwrote/README.md => third_party/rust/dwrote/README.md
rename : third_party/rust/servo-dwrote/src/bitmap_render_target.rs => third_party/rust/dwrote/src/bitmap_render_target.rs
rename : third_party/rust/servo-dwrote/src/com_helpers.rs => third_party/rust/dwrote/src/com_helpers.rs
rename : third_party/rust/servo-dwrote/src/comptr.rs => third_party/rust/dwrote/src/comptr.rs
rename : third_party/rust/servo-dwrote/src/font.rs => third_party/rust/dwrote/src/font.rs
rename : third_party/rust/servo-dwrote/src/font_collection.rs => third_party/rust/dwrote/src/font_collection.rs
rename : third_party/rust/servo-dwrote/src/font_face.rs => third_party/rust/dwrote/src/font_face.rs
rename : third_party/rust/servo-dwrote/src/font_family.rs => third_party/rust/dwrote/src/font_family.rs
rename : third_party/rust/servo-dwrote/src/font_file.rs => third_party/rust/dwrote/src/font_file.rs
rename : third_party/rust/servo-dwrote/src/font_file_loader_impl.rs => third_party/rust/dwrote/src/font_file_loader_impl.rs
rename : third_party/rust/servo-dwrote/src/gdi_interop.rs => third_party/rust/dwrote/src/gdi_interop.rs
rename : third_party/rust/servo-dwrote/src/glyph_run_analysis.rs => third_party/rust/dwrote/src/glyph_run_analysis.rs
rename : third_party/rust/servo-dwrote/src/helpers.rs => third_party/rust/dwrote/src/helpers.rs
rename : third_party/rust/servo-dwrote/src/rendering_params.rs => third_party/rust/dwrote/src/rendering_params.rs
rename : third_party/rust/servo-dwrote/src/test.rs => third_party/rust/dwrote/src/test.rs
rename : third_party/rust/servo-dwrote/src/types.rs => third_party/rust/dwrote/src/types.rs
2017-03-06 18:46:30 -05:00
sotaro
99e7d5243f Bug 1342833 - WebRenderBridgeParent::ClearResources() does not clear DisplayList r=jrmuizel 2017-03-06 10:42:17 +09:00
sotaro
2fef961bd1 Bug 1343457 - Update external image adding api r=kats 2017-03-02 10:22:40 +09:00
Jeff Muizelaar
f854a142b9 Bug 1342558. Change SetRootDisplayList to consume built display lists. r=nical 2017-03-01 09:10:53 -05:00
JerryShih
cf4e2ef241 Bug 1340997 - add external image callback in RendererOGL. r=sotaro
MozReview-Commit-ID: 8aCSe1iu44C
2017-03-01 17:08:56 +08:00
sotaro
d489fa0451 Bug 1342380 - Enable VsyncScheduler again r=kats 2017-02-27 09:27:04 +09:00