Commit graph

7096 commits

Author SHA1 Message Date
Simon Sapin
27239e1123 Make usage of core_intrinsics optional 2017-10-16 20:20:21 +02:00
Simon Sapin
bffec1c1a1 Make usage of unstable feature on_unimplemented optional. 2017-10-16 20:20:18 +02:00
Simon Sapin
5a5b7d7f39 Remove usage of unstable features const_ptr_null and const_ptr_null_mut 2017-10-16 20:20:01 +02:00
Simon Sapin
3bb76a5be5 Don’t rely on unstable 'const fn's in rust-mozjs, so we can remove them. 2017-10-16 20:20:00 +02:00
Simon Sapin
a819cfb0fa Replace uses of libcore with libstd in components/script 2017-10-16 20:19:59 +02:00
Simon Sapin
99b052d3a6 Move remaining uses of NonZero to our nonzero crate 2017-10-16 20:19:59 +02:00
Simon Sapin
e2fafd2dfc Replace NonZero<*mut JSObject> with a wrapper to enable local trait impls. 2017-10-16 20:19:56 +02:00
bors-servo
d3d2b0261a Auto merge of #18890 - glennw:update-wr-clip-text-aa, r=jdm
Update WR (details below):

* Add support for clip masks on text runs.
* Fix atomic ordering of items with multiple shadows.
* Update to bincode + ipc-channel with optimizations.
* Fix some plane splitting precision errors.
* Improve the anti-aliasing quality significantly.
* Add internal ClipChain support.
* Fix diacritic glyphs on Linux.

<!-- 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/18890)
<!-- Reviewable:end -->
2017-10-16 12:54:02 -05:00
Simon Sapin
aa15dc269f Remove use of unstable box syntax.
http://www.robohornet.org gives a score of 101.36 on master,
and 102.68 with this PR. The latter is slightly better,
but probably within noise level.
So it looks like this PR does not affect DOM performance.

This is expected since `Box::new` is defined as:

```rust
impl<T> Box<T> {
    #[inline(always)]
    pub fn new(x: T) -> Box<T> {
        box x
    }
}
```

With inlining, it should compile to the same as box syntax.
2017-10-16 17:16:20 +02:00
Glenn Watson
4469f39f3f Update WR (details below):
* Add support for clip masks on text runs.
* Fix atomic ordering of items with multiple shadows.
* Update to bincode + ipc-channel with optimizations.
* Fix some plane splitting precision errors.
* Improve the anti-aliasing quality significantly.
* Add internal ClipChain support.
* Fix diacritic glyphs on Linux.
2017-10-16 16:33:24 +10:00
bors-servo
adb45eb727 Auto merge of #18888 - tigercosmos:xml, r=jdm
fix  #18776: use XML fragment serialization for innerHTML in XML documents

<!-- Please describe your changes on the following line: -->
I am not sure whether my solution is in the right way.
@jdm Can you give some advises?

---
<!-- 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
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #18776 (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/18888)
<!-- Reviewable:end -->
2017-10-16 01:27:43 -05:00
tigercosmos
c77b61193f use XML fragment serialization for outerHTML in XML documents 2017-10-16 13:28:23 +08:00
tigercosmos
06759fd0fd use XML fragment serialization for innerHTML in XML documents 2017-10-16 00:38:21 +08:00
bors-servo
7e8def9c08 Auto merge of #18886 - servo:urls, r=SimonSapin
Change AttrValue::Url to AttrValue::ResolvedUrl

Things make more sense like this.

<!-- 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/18886)
<!-- Reviewable:end -->
2017-10-15 04:53:29 -05:00
Anthony Ramine
c7b1d3054f Change AttrValue::Url to AttrValue::ResolvedUrl
There is actually only one attribute that can use that, the one for
<body background>.
2017-10-15 11:03:20 +02:00
Emilio Cobos Álvarez
11485edc9e
style: Hide LocalMatchingContext.
This type is a lot of complexity related to a very specific thing such as the
hover and active quirk.

Instead of that, move `nesting_level` to `MatchingContext`, and simplify all
this computing whether the quirk applies upfront, for each complex selector we
test.

This is less error-prone, and also allows simplifying more stuff in a bit.
2017-10-14 17:03:35 +02:00
bors-servo
240c05f13b Auto merge of #18838 - svanburen:remove_cssText, r=emilio
Remove cssText from CSSStyleValue

Removed from associated .rs and .webidl

<!-- Please describe your changes on the following line: -->
Not much more to add - let me know if it needs additional changes.

---
<!-- 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
- [X] These changes fix #17379 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they remove a property that previously had no tests associated with it.

<!-- 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/18838)
<!-- Reviewable:end -->
2017-10-14 06:58:29 -05:00
bors-servo
2be76c5fd7 Auto merge of #18867 - emilio:parse-hack, r=heycam
style: Dishonor display: -moz-box if -webkit-box was specified before

This is a compatibility hack that Gecko supports that is apparently important for android.

I want to remove it, but let's see...

See https://bugzilla.mozilla.org/show_bug.cgi?id=1407701 for reference.

<!-- 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/18867)
<!-- Reviewable:end -->
2017-10-14 05:27:51 -05:00
Emilio Cobos Álvarez
25c303ee62
style: Be clearer about whether a declaration comes from parsing or not.
This introduces DeclarationSource, to see if a declaration has been parsed or
set from CSSOM in a declaration block.

The Servo_DeclarationBlock_SetFoo and similar callers are changed to
DeclarationSource::CssOm because their semantics are more CSSOM-y, but it
shouldn't matter since they should all be checked before hand with
Servo_DeclarationBlock_PropertyIsSet.
2017-10-14 11:30:59 +02:00
Simon Sapin
4c5d6fd834 Remove an unused import, fix a warning. 2017-10-13 21:57:26 +02:00
Emilio Cobos Álvarez
f64f8b8be2
style: Share code for Element::Closest. 2017-10-13 17:21:31 +02:00
Emilio Cobos Álvarez
9e6c49d479
style: Share code for Element::Matches. 2017-10-13 17:21:26 +02:00
Simon Sapin
796a8dc618 Remove usage of unstable feature try_from 2017-10-12 12:10:55 +02:00
Stefan VanBuren
f92dbdbdf3 Remove cssText from CSSStyleValue
Removed from associated .rs and .webidl
2017-10-11 16:21:29 -04:00
Simon Sapin
4ee8f56b9c Remove usage of unstable feature ascii_ctypes 2017-10-11 20:21:07 +02:00
bors-servo
528d0fb409 Auto merge of #18825 - servo:urls, r=emilio
Fix a bunch of URL-reflecting IDL attributes

<!-- 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/18825)
<!-- Reviewable:end -->
2017-10-11 08:45:44 -05:00
Anthony Ramine
71b015173f Fix the form action IDL attributes
The returned string, if the attribute is present and non-empty,
should be a URL resolved against the element's document's base URL.
2017-10-11 13:56:10 +02:00
Anthony Ramine
605c679fee Fix URL attributes
URL attributes should always use AttrValue::Url, and the input should be
resolved against the document's base URL at setting time always.
2017-10-11 13:56:07 +02:00
bors-servo
235ce65d7c Auto merge of #18820 - asajeffrey:update-swapper, r=wafflespeanut
Updated swapper to version 0.1

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

Update swapper to v0.1, which removes the skeptic dependency.

---
<!-- 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
- [X] These changes do not require tests because updating dependencies

<!-- 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/18820)
<!-- Reviewable:end -->
2017-10-10 15:10:01 -05:00
Alan Jeffrey
3e21e050f8 Updated swapper to version 0.1 2017-10-10 13:32:56 -05:00
bors-servo
c79a54dbd9 Auto merge of #18808 - servo:error-location_, r=emilio
Use the current parser location for CSS error

… rather than the start location of the current construct. This likely places the error just *after* of the unexpected token whereas before would be best, but that’s likely a much bigger change.

See https://bugzilla.mozilla.org/show_bug.cgi?id=1378861

<!-- 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/18808)
<!-- Reviewable:end -->
2017-10-10 12:31:24 -05:00
Simon Sapin
c0f8f15f39 Update to cssparser 0.22 (source location in error types) 2017-10-10 13:28:17 +02:00
Anthony Ramine
e3fb99dd59 Implement a bit more of the "object" path when loading media 2017-10-10 11:44:29 +02:00
Anthony Ramine
b7452f37d9 Properly abort any ongoing resource selection on loading a new media 2017-10-10 10:10:39 +02:00
Anthony Ramine
8754155a11 Update HTMLMediaElement.webidl according to spec 2017-10-10 09:50:51 +02:00
bors-servo
bbb2a3cde9 Auto merge of #18790 - upsuper:scope, r=emilio
Support :scope pseudo-class

This fixes [bug 1406817](https://bugzilla.mozilla.org/show_bug.cgi?id=1406817).

<!-- 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/18790)
<!-- Reviewable:end -->
2017-10-09 23:04:15 -05:00
bors-servo
80df3fb56a Auto merge of #18792 - tigercosmos:img, r=jdm
fix #18472:outdated png crate: various panics

<!-- Please describe your changes on the following line: -->
fix #18472:outdated png crate: various panics

---
- [X] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [X] These changes fix #18472

<!-- 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/18792)
<!-- Reviewable:end -->
2017-10-09 14:05:14 -05:00
bors-servo
e3624e62a4 Auto merge of #18747 - jdm:serializing-childrenonly, r=jdm
Serializing childrenonly

Rebased from #17896.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14975 (github issue number if applicable).
- [x] There are tests 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/18747)
<!-- Reviewable:end -->
2017-10-09 11:12:53 -05:00
tigercosmos
2fc765f254 fix #18472:outdated png crate: various panics 2017-10-09 19:42:00 +08:00
Xidorn Quan
0564a1e47b Support :scope pseudo-class in Element::{matches,closest} in Servo 2017-10-09 22:13:00 +11:00
bors-servo
712d32e899 Auto merge of #18758 - stuartnelson3:stn/dynamic-body-bgcolor, r=emilio
Add support for dynamic bgcolor change

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests 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/18758)
<!-- Reviewable:end -->
2017-10-08 07:47:50 -05:00
Jyotsna Prakash
6c0f87a1d6 ChildrenOnly -> ChildrenOnly(Option<QualName>)
use this updated type from html5ever
2017-10-07 08:05:11 -04:00
bors-servo
f3191db2b1 Auto merge of #18743 - Eijebong:base64, r=jdm
Bump base64 to 0.6

This allows us to update hyper to 0.10.13 (closer to 0.11)

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they're just a version bump

<!-- 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/18743)
<!-- Reviewable:end -->
2017-10-05 19:37:30 -05:00
bors-servo
0444d76c6b Auto merge of #18742 - servo:media-metadata, r=jdm
Some low-key media improvements

This just makes our code fail more gracefully.

<!-- 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/18742)
<!-- Reviewable:end -->
2017-10-05 15:41:22 -05:00
Stuart Nelson
3b4deb4388 Add support for dynamic bgcolor change 2017-10-05 20:51:02 +02:00
bors-servo
1f9182507f Auto merge of #18716 - jdm:parseSrcset, r=jdm
Parse srcset attribute values

Squashed version of #18313.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix (partially) #11416
- [x] There are tests 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/18716)
<!-- Reviewable:end -->
2017-10-04 07:32:53 -05:00
Bastien Orivel
511a4d65a2 Bump base64 to 0.6
This allows us to update hyper to 0.10.13 (closer to 0.11)
2017-10-04 13:26:12 +02:00
Anthony Ramine
eb0c1a53ad Implement MediaError::Message
The spec says that it's ok to put an empty string in it if we don't have more
informations.
2017-10-04 11:41:41 +02:00
Anthony Ramine
b8c55e7da6 Set have_metadata for audio elements too
We don't store video-specific metadata anymore, and we don't ignore audio-specific
metadata anymore. We now just acknowledge that we received some metadata.
2017-10-04 11:28:47 +02:00
Cameron McCormack
4d9dd4b757 style: Use a SharedFontList object to store font-family values for Gecko. 2017-10-04 13:38:07 +08:00