Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

style: Sync changes from mozilla-central. #22036

Merged
merged 14 commits into from Oct 29, 2018
Merged

Conversation

@emilio
Copy link
Member

emilio commented Oct 28, 2018

See each individual commit.

This syncs everything except a bindgen update which is blocked on servo/mozjs#159.


This change is Reviewable

birtles and others added 13 commits Oct 19, 2018
…sform lists.

As discussed in:

  w3c/csswg-drafts#927

with tentative spec text:

  w3c/csswg-drafts#3215

Differential Revision: https://phabricator.services.mozilla.com/D9185
Searchfox has better blame.

Differential Revision: https://phabricator.services.mozilla.com/D9375
…imationPlayState.

This change removes directives NS_STYLE_ANIMATION_PLAY_STATE_* and replaces the
values with those from a scoped enum called StyleAnimationPlayState.

Differential Revision: https://phabricator.services.mozilla.com/D9382
…ions.

See the extended commit message for the following spec change:

  w3c/csswg-drafts@6b36d41

Basically, by failing to take the absolute value, for certain content we can end
up doing division by zero which will mean that the test included in this patch
will cause an assertion to fail in debug builds and return
"matrix(NaN, NaN....)" in release builds.

Differential Revision: https://phabricator.services.mozilla.com/D9618
frames() timing function was removed from the spec, so we drop it.
Besides, some devtool tests are removed because they use frame(). I will
add them back by using new step function later.

Differential Revision: https://phabricator.services.mozilla.com/D9309
TimingFunction is defined in a separate spec (i.e. css-easing), instead
of transform, so we move it into a different file.

Depends on D9310

Differential Revision: https://phabricator.services.mozilla.com/D9311
We make sure the step number is always positive, so using
computed::Integer is safe and can derive ToComputedValue.

Depends on D9311

Differential Revision: https://phabricator.services.mozilla.com/D9845
First, we generate StyleComputedTimingFunction by cbindgen from Rust, and use
it in nsTimingFunction, so we could copy it directly without handling
the different memory layout. However, we have to rewrite the
nsTimingFunction and mozilla::ComputedTimingFunction for this.

Second, the rust-bindgen seems cannot generate the correct generic members
from complex C++ templates, especially for the nested template struct,
(rust-lang/rust-bindgen#1429)
So we have to hide StyleTimingFunction to avoid the compilation errors.

Differential Revision: https://phabricator.services.mozilla.com/D9313
1. Add a new preference, layout.css.step-position-jump.enabled, for
   step(_, jump-*) timing functions.
2. We still keep JumpEnd and End tags, even though there is no difference
   between them. Therefore, we could disable the preference if needed.
3. Update the calculation of StepTiming to match the algorithm in the spec.
4. For servo, we implement the correct step function algorithm except
   for the handling of before_flag. This could be fixed later.

Depends on D9313

Differential Revision: https://phabricator.services.mozilla.com/D9314
The selectors that crash seem just corrupted data structures, none of the
selectors from crash dumps make sense, and the ones for which I could trace the
source found no issue.
…oid a warning.

Need to do the gecko_inexhaustive thing because those animation properties have
an EndGuard_ generated by IPDL I suspect.
… other UAs.

Bug: 1501908
Reviewed-by: emilio
@highfive
Copy link

highfive commented Oct 28, 2018

warning Warning warning

  • These commits modify unsafe code. Please review it carefully!
  • These commits modify style code, but no tests are modified. Please consider adding a test!
@emilio
Copy link
Member Author

emilio commented Oct 28, 2018

@bors-servo
Copy link
Contributor

bors-servo commented Oct 28, 2018

📌 Commit 214434d has been approved by emilio

@highfive highfive assigned emilio and unassigned nox Oct 28, 2018
@bors-servo
Copy link
Contributor

bors-servo commented Oct 28, 2018

Testing commit 214434d with merge 75efc44...

bors-servo added a commit that referenced this pull request Oct 28, 2018
style: Sync changes from mozilla-central.

See each individual commit.

This syncs everything except a bindgen update which is blocked on servo/mozjs#159.
@emilio
Copy link
Member Author

emilio commented Oct 28, 2018

@emilio emilio force-pushed the emilio:gecko-sync branch from 214434d to 05f9f10 Oct 28, 2018
@emilio
Copy link
Member Author

emilio commented Oct 28, 2018

@bors-servo r+

  • Unit tests.
@bors-servo
Copy link
Contributor

bors-servo commented Oct 28, 2018

📌 Commit 05f9f10 has been approved by emilio

@bors-servo
Copy link
Contributor

bors-servo commented Oct 28, 2018

Testing commit 05f9f10 with merge 1628bd5...

bors-servo added a commit that referenced this pull request Oct 28, 2018
style: Sync changes from mozilla-central.

See each individual commit.

This syncs everything except a bindgen update which is blocked on servo/mozjs#159.

<!-- 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/22036)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Oct 28, 2018

💔 Test failed - linux-rel-wpt

@emilio
Copy link
Member Author

emilio commented Oct 28, 2018

@bors-servo retry

  • Looks like a flake.
@bors-servo
Copy link
Contributor

bors-servo commented Oct 28, 2018

@bors-servo
Copy link
Contributor

bors-servo commented Oct 29, 2018

💔 Test failed - mac-rel-wpt4

@emilio
Copy link
Member Author

emilio commented Oct 29, 2018

@bors-servo retry

@bors-servo
Copy link
Contributor

bors-servo commented Oct 29, 2018

@bors-servo bors-servo merged commit 05f9f10 into servo:master Oct 29, 2018
3 checks passed
3 checks passed
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
homu Test successful
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

7 participants
You can’t perform that action at this time.