Commit graph

20674 commits

Author SHA1 Message Date
Hiroyuki Ikezoe
48e4433ab8 style: Drop layout.css.scroll-behavior.property-enabled pref.
It was enabled by default in bug 1041833 (for desktops) and
bug 1087562 (for Fennec).

Differential Revision: https://phabricator.services.mozilla.com/D15707
2019-01-07 00:32:53 +01:00
Hiroyuki Ikezoe
a0d1a038a2 style: Drop layout.css.mix-blend-mode.enabled pref.
It was enabled by default in bug 952643.

Differential Revision: https://phabricator.services.mozilla.com/D15706
2019-01-07 00:32:53 +01:00
Hiroyuki Ikezoe
0488f81dac style: Drop layout.css.isolation.enabled pref.
It was enabled by default in bug 1091885.

Differential Revision: https://phabricator.services.mozilla.com/D15705
2019-01-07 00:32:52 +01:00
Hiroyuki Ikezoe
d862daeee6 style: Drop layout.css.image-orientation.enabled pref.
It was enabled by default in bug 825771.

Differential Revision: https://phabricator.services.mozilla.com/D15704
2019-01-07 00:32:52 +01:00
Hiroyuki Ikezoe
529ff36bb6 style: Drop layout.css.color-adjust.enabled pref.
It was enabled by default in bug 1209273.

Depends on D15702

Differential Revision: https://phabricator.services.mozilla.com/D15703
2019-01-07 00:32:52 +01:00
Hiroyuki Ikezoe
d5bee572d7 style: Drop layout.css.box-decoration-break.enabled pref.
It was enabled by default in bug 1006326.

Differential Revision: https://phabricator.services.mozilla.com/D15702
2019-01-07 00:32:52 +01:00
Emilio Cobos Álvarez
a454f6233d Rename nsIDocument to mozilla::dom::Document.
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.

Bug: 1517241
Reviewed-by: smaug
2019-01-07 00:32:51 +01:00
quasicomputational
274845fc14 style: Implement the 'overflow-inline' media query.
Bug: 1422235
Reviewed-by: emilio
2019-01-07 00:32:51 +01:00
quasicomputational
81a07b4351 style: Implement the 'overflow-block' media query.
Bug: 1422235
Reviewed-by: emilio
2019-01-07 00:32:51 +01:00
Emilio Cobos Álvarez
8929087d83 style: Update the Rust target version for bindgen.
This brings us alignas support and also associated constants for bitfield enums.

Differential Revision: https://phabricator.services.mozilla.com/D15334
2019-01-07 00:32:50 +01:00
sharath
8a6230e5a2 style: changes to implement enum class for #define NS_STYLE_COLOR_ADJUST.
Differential Revision: https://phabricator.services.mozilla.com/D15284
2019-01-07 00:32:50 +01:00
Cameron McCormack
7b444182fe style: Bump smallvec and smallbitvec.
Differential Revision: https://phabricator.services.mozilla.com/D15052
2019-01-07 00:32:50 +01:00
Boris Chiou
f0f3eb3194 style: Clamp to non-negative value after doing interpolation for circle(), ellipse(), and inset().
Replace LengthOrPercentage with NonNegativeLengthOrPercentage on
ShapeRadius, Circle, Ellipse. And derive ToAnimatedValue for ShapeSource and
its related types, so we clamp its interpolated results into non-negative
values. (i.e. The radius of circle()/ellipse() and the border-radius of
inset().)

Note: We may get negative values when using a negative easing function, so the
clamp is necessary to avoid the incorrect result or any undefined behavior.

Differential Revision: https://phabricator.services.mozilla.com/D14654
2019-01-07 00:32:49 +01:00
Boris Chiou
627559546d style: Let logical height, block-size, accept keywords.
We should let block-size/min-block-size/max-block-size accept keywords as the
initial value, just like width in vertical writing mode or height in horizontal
writing mode.

Differential Revision: https://phabricator.services.mozilla.com/D14320
2019-01-07 00:32:49 +01:00
Boris Chiou
b7e728abd0 style: Support unprefixed min-content and max-content.
Support unprefixed min-content and max-content and treat the prefixed
version as aliases for
1. width, min-width, max-width if inline-axis is horizontal, and
2. height, min-height, max-height if inline-axis is vertical, and
3. inline-size, min-inline-size, max-inline-size, and
4. flex-basis.

Besides, update the test cases to use unprefixed max-content and
min-content.

Differential Revision: https://phabricator.services.mozilla.com/D7536
2019-01-07 00:32:39 +01:00
Boris Chiou
3ed525f6c9 style: Use cbindgen for ExtremumLength.
ExtremumLength is the keyword type for css sizing properties, so we
could use cbindgen.

In Gecko, we use nsStyleCoord to store the sizing properties, and use
integer values to check the enum values, so I keep the macros in nsStyleConsts.
Even though we need to convert the enum type into integer, we still have
benefits to reduce the complexity of converting Rust into C++, and leave
the simplified mappings in C++ for better readability.

Differential Revision: https://phabricator.services.mozilla.com/D7535
2019-01-07 00:03:52 +01:00
Emilio Cobos Álvarez
ca1ad003bd style: Use NonNegative more in the border code.
This ended up not being so small of a patch as I'd have thought, since it
propagated a bit. But most of it is mechanical. Interesting part is
NonNegativeNumberOrPercentage and the actual uses of the NonNegative stuff and
during parsing.

This looks like it'd fix a few correctness issues during interpolation for all
the types except for BorderRadius and co (which handled it manually).

I should write tests for those in a different patch.

Differential Revision: https://phabricator.services.mozilla.com/D14673
2019-01-07 00:03:41 +01:00
Emilio Cobos Álvarez
19035590ce style: Cleanup some conversion code dealing with NonNegative.
I'm about to introduce another use of it and I don't want to repeat the same
copy-pasta again.

Differential Revision: https://phabricator.services.mozilla.com/D14672
2019-01-07 00:03:31 +01:00
Emilio Cobos Álvarez
b59ec2e699 style: Make <use> shadow trees lookup keyframe rules in the containing tree.
The same thing we do for rule matching.

Differential Revision: https://phabricator.services.mozilla.com/D14548
2019-01-07 00:03:23 +01:00
Emilio Cobos Álvarez
31838b1e6f style: The 'all' property is not animatable.
Since it allows to animate display, which is not good.

This is a regression from:

  https://hg.mozilla.org/mozilla-central/rev/6884ba750aa3

Actually I wonder if the logic shouldn't be the other way around, i.e., a
shorthand is animatable if all the longhands are, not if just one.

In any case this rolls back to the previous behavior, should we do that, it
should be another bug.

Differential Revision: https://phabricator.services.mozilla.com/D14632
2019-01-07 00:03:15 +01:00
Daniel Holbert
4799e83e3c style: Enable CSS containment for frontend code.
Differential Revision: https://phabricator.services.mozilla.com/D9963
2019-01-07 00:03:04 +01:00
Manish Goregaokar
4328fc23a7 Clean up HTMLMediaElement::Play 2019-01-04 15:05:07 -08:00
Manish Goregaokar
611dc4bc70 Remove now-unnecessary must_root and allow(unrooted_must_root) annotations 2019-01-04 15:05:07 -08:00
Manish Goregaokar
6df1c6d7e7 Explain unrooted_must_root on ServiceWorkerContainer::Register 2019-01-04 09:34:04 -08:00
Manish Goregaokar
e28e73c81f Exempt Rc<Promise> from unrooted_must_root
fixes #22504
2019-01-04 09:34:04 -08:00
Simon Sapin
cf05e37c0b Fix new warnings 2019-01-04 15:27:23 +01:00
Simon Sapin
5f422b6161 Upgrade to rustc 1.33.0-nightly (c0bbc3927 2019-01-03)
CC https://github.com/rust-lang/rust/issues/56105#issuecomment-451457706
2019-01-04 15:27:12 +01:00
bors-servo
c4a6dcfe4b
Auto merge of #22528 - Manishearth:webxr, r=jdm,MortimerGoro
Preliminary WebXR support

This implements just enough WebXR to display to 3DOF devices in
immersive mode only.

Couple missing things:

 - [ ] Handling reference spaces (even if just supporting eye-level spaces)
 - [x] Spec links
 - [ ] We enter immersive mode when baseLayer is set, but it seems like
we're supposed to do this when requestSession is called (https://github.com/immersive-web/webxr/issues/453)
 - [ ] VR/XR should block less (https://github.com/servo/servo/issues/22505)
 - [x] More pref-gating
 - [x] `views` is a method instead of an attribute because we don't support FrozenArray

<s>Once I add spec links and pref gating</s> this can be landed as-is for further experimentation.

r? @jdm @MortimerGoro

<!-- 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/22528)
<!-- Reviewable:end -->
2019-01-04 02:54:16 -05:00
Manish Goregaokar
e544462b6c Remove unrooted_must_root 2019-01-03 23:53:50 -08:00
Manish Goregaokar
4d73eac27c NonNull::new() 2019-01-03 23:53:50 -08:00
Manish Goregaokar
cfa539751c Link to relevant issues 2019-01-03 23:53:50 -08:00
Manish Goregaokar
309bd63c70 Remove Cell in XRSpace 2019-01-03 23:53:50 -08:00
Manish Goregaokar
c3b93a967d Silence unused warnings 2019-01-03 23:53:50 -08:00
George Roman
a2d5d4f3da Serialize the children of void html elements as empty strings 2019-01-03 07:49:13 +02:00
bors-servo
e68585a26f
Auto merge of #22576 - Eijebong:itertools, r=Manishearth
Update itertools to 0.8

<!-- 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/22576)
<!-- Reviewable:end -->
2019-01-02 13:05:04 -05:00
bors-servo
8de1b8d3f4
Auto merge of #22385 - servo:rustup, r=SimonSapin
Upgrade to rustc 1.33.0-nightly (fb86d604b 2018-12-27)

<!-- 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/22385)
<!-- Reviewable:end -->
2018-12-31 13:09:35 -05:00
Simon Sapin
d114376a8c Publish selectors 0.21.0 on crates.io 2018-12-31 01:01:49 +01:00
Bastien Orivel
b3fd2233b3 Update itertools to 0.8 2018-12-30 16:09:34 +01:00
Bastien Orivel
c3df9b594b Update bindgen to 0.46 2018-12-29 19:30:23 +01:00
Simon Sapin
be2218a134 Fix some warnings 2018-12-28 15:31:08 +01:00
Simon Sapin
be69f9c3e6 Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
Simon Sapin
82fc6d9f49 Upgrade to rustc 1.33.0-nightly (fb86d604b 2018-12-27) 2018-12-28 13:16:55 +01:00
George Roman
deb02ab6d7 Implement HTMLMediaElement defaultPlaybackRate and playbackRate attributes 2018-12-26 22:20:51 +02:00
bors-servo
7bc6c8d18f
Auto merge of #22555 - CYBAI:new-urlsearchparams, r=jdm
Construct URLSearchParams from array or object

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #22554, fix #22556 and also fix #22557
- [x] There are tests in `url/urlsearchparams-constructor.any.js` for these changes

<!-- 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/22555)
<!-- Reviewable:end -->
2018-12-26 08:36:00 -05:00
CYBAI
115b73f636 Use IndexMap for WebIDL Record 2018-12-26 18:05:43 +08:00
CYBAI
4ba0ab7bd0 Construct URLSearchParams from array or object 2018-12-26 18:05:42 +08:00
bors-servo
66223ee105
Auto merge of #22121 - gterzian:remove_constellation_block_in_navigation, r=paulrouget
Remove sync constellation -> embedder communication

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #22042 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- 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/22121)
<!-- Reviewable:end -->
2018-12-26 01:53:20 -05:00
CYBAI
9de8e7adc0 Remove leading question mark when constructing URLSearchParams 2018-12-25 12:23:05 +08:00
CYBAI
66e3d545eb Implement URL's toJSON() 2018-12-24 20:45:43 +08:00
bors-servo
6840c18389
Auto merge of #22540 - CYBAI:update-sw-webidl, r=jdm
Update ServiceWorker webidl

About the `void postMessage`, I found the spec doesn't have `[Throws]`; however, as the implementation for `postMessage` in spec, we should have `[Throws]` for it because it will throw errors. Then, I realized that `[Throws]` is not part of standard webidl. Btw, there's a issue discussing about if `[Throws]` should be standardized or not at heycam/webidl#603.

Also, per the spec, `ServiceWorker` will `includes` `AbstractWorker` instead of `implements` so I filed #22539 for it. We can update it after the issue is fixed.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix part of #19302
- [x] These changes do not require tests because it just updates the webidl and the changes should have no impact to current implementation.

<!-- 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/22540)
<!-- Reviewable:end -->
2018-12-23 15:21:08 -05:00