Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upWR update: preserve-3d support #16775
Conversation
highfive
commented
May 8, 2017
|
Thanks for the pull request, and welcome! The Servo team is excited to review your changes, and you should hear from @wafflespeanut (or someone else) soon. |
highfive
commented
May 8, 2017
highfive
commented
May 8, 2017
| @@ -2528,14 +2539,15 @@ impl InlineFlowDisplayListBuilding for InlineFlow { | |||
| fragment.stacking_context_id = fragment.stacking_context_id(); | |||
|
|
|||
| let current_stacking_context_id = state.current_stacking_context_id; | |||
| let current_scroll_root_id = state.current_scroll_root_id; | |||
| let stacking_context = fragment.create_stacking_context( | |||
| fragment.stacking_context_id, | |||
This comment has been minimized.
This comment has been minimized.
| !effects.clip.is_auto() { | ||
| effects.mix_blend_mode != mix_blend_mode::T::normal || | ||
| !effects.clip.is_auto() || | ||
| effects.mix_blend_mode != mix_blend_mode::T::normal { | ||
| return transform_style::T::flat; |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
kvark
May 9, 2017
Author
Member
Yeah, the old wording was really confusing. I think the old logic could be rewritten as
if effects.opacity < 1.0 ||
!effects.filter.is_empty() ||
!effects.clip.is_auto() {
if effects.mix_blend_mode == mix_blend_mode::T::normal {
return transform_style::T::flat;
}
}My assumption was that it's just a refactoring bug, where someone mixed the || with { at the end of the lines.
| <div style="height: 100px; width: 50px; background: red; | ||
| transform: translateY(-100px) rotateX(45deg) rotateY(45deg); | ||
| transform-origin: right"></div> |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
emilio
May 8, 2017
Member
Actually, given these tests are in wpt, I don't think we should change them at all. I guess these pass on both Blink and Gecko?
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
glennw
May 8, 2017
Member
If we have tests that differ between gecko/chromium, or fail in WR due to incomplete features - we can disable them in the test metadata, for now.
This comment has been minimized.
This comment has been minimized.
| @@ -182,6 +182,7 @@ impl<Window> Browser<Window> where Window: WindowMethods + 'static { | |||
| enable_aa: opts.enable_text_antialiasing, | |||
| enable_profiler: opts.webrender_stats, | |||
| debug: opts.webrender_debug, | |||
| enable_batcher: false, //TEMP | |||
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
57f8581
to
af21ea2
|
@emilio thanks for taking a look! Everything should be addressed now. |
|
r=me with that. Thanks! |
| @@ -0,0 +1,3 @@ | |||
| [transform3d-sorting-004.htm] | |||
| type: reftest | |||
| disabled: https://bugzilla.mozilla.org/show_bug.cgi?id=1362543 | |||
This comment has been minimized.
This comment has been minimized.
emilio
May 14, 2017
Member
Do we really need to disable these?
We can just mark them as failing with a link to that bug.
This comment has been minimized.
This comment has been minimized.
kvark
May 14, 2017
Author
Member
I tried multiple things, didn't find how to add comments to those ini files
|
@emilio thanks! |
|
|
WR update: preserve-3d support <!-- Please describe your changes on the following line: --> This is WR update to servo/webrender@d335555 having new features: - limited "preserve-3d" support (servo/webrender#1169, servo/webrender#1208) - rayon thread pool (servo/webrender#1202) - further border rendering improvements Edit: the references to bincode serialization and border styles are removed from here, since they are already integrated into Servo. Edit2: this is alternative/similar to #16801, based on @mrobinson code (see first commit). --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [ ] These changes fix #__ (github issue number if applicable). Related to #9087 Note that I'm unlocking a few tests as well as changing some related to `preserve-3d`. The changes come from common sense and comparison to Chromium. I'm ready to discuss them on a individual basis. <!-- Either: --> - [x] There are tests for these changes OR - [ ] These changes do not require tests because _____ There is still an investigation to do with regards to the differences of preserve3d logic between Blink and Gecko. <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16775) <!-- Reviewable:end -->
|
|
|
|
Superseded by #16860 |
kvark commentedMay 8, 2017
•
edited
This is WR update to servo/webrender@d335555 having new features:
Edit: the references to bincode serialization and border styles are removed from here, since they are already integrated into Servo.
Edit2: this is alternative/similar to #16801, based on @mrobinson code (see first commit).
./mach build -ddoes not report any errors./mach test-tidydoes not report any errorsRelated to #9087
Note that I'm unlocking a few tests as well as changing some related to
preserve-3d. The changes come from common sense and comparison to Chromium. I'm ready to discuss them on a individual basis.There is still an investigation to do with regards to the differences of preserve3d logic between Blink and Gecko.
This change is