Content of the canvas is drawn, tests/html/test_canvas.html now works.
Source-Repo: https://github.com/servo/servo
Source-Revision: da400a7a453eacf6f3089cc07e5dc61f385a0909
As a first start, this allows them indiscriminately where used.
Source-Repo: https://github.com/servo/servo
Source-Revision: f74d5360ba30ec7aaa12f675eb267fd11053d8a8
Notes:
* This adds `#![allow(missing_copy_implementations)]` to components/*/lib.rs. I'm not sure how to approach the missing Copy warnings (are there things for which Copy should NOT be implemented, and how can I tell?) so I stuck this in to make life easier when looking through the warnings. I can easily remove this if necessary.
* This leaves the following type of warnings, which I couldn't figure out how to approach (I'll investigate it later if no one else wants to).
```
css/matching.rs:72:23: 72:35 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:72 this_as_query.equiv(other)
^~~~~~~~~~~~
css/matching.rs:95:10: 95:49 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:95 impl<'a> Equiv<ApplicableDeclarationsCacheEntry> for ApplicableDeclarationsCacheQuery<'a> {
```
Source-Repo: https://github.com/servo/servo
Source-Revision: 0793137631cbe4ebbff8fb85639206ce8e41bbb7
Didn't do the `Vec<Temporary<T>>` banning since we might want to whitelist something there. I'll work on that next.
Source-Repo: https://github.com/servo/servo
Source-Revision: ec474ae835586c14ec4e1fb72196f2bc211f865f
In particular, this contains changes to qualify enums where rust will require it, and to stop using some features that will be removed.
Source-Repo: https://github.com/servo/servo
Source-Revision: ba8cf6b0e6145265f9472d4855f078d8b5943fe7
A lot of tests were failing when I ran `./mach test tests/wpt/web-platform-tests/workers --processes=4` and
`./mach test tests/wpt/web-platform-tests/XMLHttpRequest --processes=4` on master. So I could not completely test it. I verified that the tests that were failing were the same, before and after the change.
Is there any way to run it here?
Source-Repo: https://github.com/servo/servo
Source-Revision: 076e28795d90a9a8bb523774b993f841602ae9e6
This prepares for the rust upgrade currently being conducted.
Source-Repo: https://github.com/servo/servo
Source-Revision: e8fac3681b690adb0796b2a807ac95bd9c13597a
This is a start towards fixing #3868. Not all callers have been fixed yet, so the `Deref` implementation remains for now.
Source-Repo: https://github.com/servo/servo
Source-Revision: 141b5d038fad3c0c44a6f1b309b8ca9edea54580
This method is deprecated in rust master; removing its users in advance will
make a future rust upgrade smoother.
Source-Repo: https://github.com/servo/servo
Source-Revision: a61417e2a87004e30e2a02f2e6ae58629062e3d5
A follow-up for issue #1820, adds the optional "type" support.
Source-Repo: https://github.com/servo/servo
Source-Revision: 111a196e9d300164391d12ab292c1d4c0ef2b44a
This replaces the specialized TrustedXHRAddress and TrustedWorkerAddress code that was used for the same purpose. A non-zero refcount pins the given DOM object's reflector and prevents it from being GCed even when there are no other outstanding references visible to SpiderMonkey. This will enable us to implement asynchronous operations that refer to particular DOM objects (such as "queue a task to fire a simple event named load at the iframe element" from the spec) safely and conveniently, and paves the way for things like asynchronous network responses.
Some concerns about the resulting size of XHR progress messages have been expressed, but I believe optimizations to reduce that can be implemented in subsequent PRs.
r? @Ms2ger - note in particular the changes to the worker lifetime code. I couldn't figure out how to achieve an identical lifetime to the previous addref/release pairing, and I also was having trouble figuring out why the existing setup was safe. The new implementation now holds the main script task Worker object alive via the TrustedWorkerAddress field in the dedicated worker global scope, which is a significant difference.
Source-Repo: https://github.com/servo/servo
Source-Revision: 2c259f477c41331e66beab8bda865971982a1ff4
Now `#[dom_struct]` also generates Reflectable impls, and there's another lint to ensure that a DOM struct only contains one bare DOM field (as the first field) or a Reflector.
A lot of this was generated by sed -- each autogenerated change has its own commit for easy review; these will be squashed later.
Source-Repo: https://github.com/servo/servo
Source-Revision: 56d1b16d1b3a18d5ffa1d9c32562d3b209851711
`str::to_string()` goes through a `Formatter`, `str::into_string()` is a direct copy and is apparently 5× faster.
This is a rebase of the boring and bitrot-prone parts of #4366.
Source-Repo: https://github.com/servo/servo
Source-Revision: 9857ea26cb9ee262654bee97322dbbf373486bff
This refs #3735. As discussed in the issue, I did it cloning when I couldn't dereference an attribute. The trait method should be on `&self` for object-safety reasons.
Source-Repo: https://github.com/servo/servo
Source-Revision: 194ce20969f04bf2d077ebed106fc1bfb5eb32ee
Implementation of #4432 adding `getPropertyPriority` to CSSStyleDeclaration. This is my first attempt at a Servo PR so I'm sure I've done something wrong. Let me know, and I'll fix it up.
As stated in #4432 tests for this are in #4085. If there are additional tests I can write now I would love to do that, I'm just not sure where or what those would be.
Source-Repo: https://github.com/servo/servo
Source-Revision: 7b7fe964d328362126a8a56ff463d48f3285391f
Changed fn_wrap argument in reflect_dom_object() and reflect_node() to pass GlobalRef by value rather than by reference. Fixes#4165
Source-Repo: https://github.com/servo/servo
Source-Revision: a773bd5c4568f2f33855f9cfe04b4301038429f7
We still will need a lint to ban any further uses, but that can be a followup.
Source-Repo: https://github.com/servo/servo
Source-Revision: c17d5330af88eb919195ac39d7795548f6683541
The name of the method makes it clear it's supposed to be used with a target
override, so we might as well enforce that.
Source-Repo: https://github.com/servo/servo
Source-Revision: 11b27361c9f6af08ed78fa1a3fe58732b4c69cd4
Without this, facebook.com pages (with their custom module loading system and React.js) silently fail to make progress loading content, forever waiting on load events on the initial set of `<script>` elements.
Source-Repo: https://github.com/servo/servo
Source-Revision: 7317518c173ef61384e29c1bdfa7052acaf27f8d
This does not implement any notion of CSSStyleDeclaration objects that do not have an owning element; there's no actual CSS object model in play here. This does support setting and getting properties of the style attribute for HTMLElement, and tries to implement the ambiguous CSS value serialization spec.
Source-Repo: https://github.com/servo/servo
Source-Revision: 824788649cd338c044d9396166af5b0f378d6685
I tested that it worked correctly by using running './mach run tests/html/test_timeout.html' and making sure the timers went off.
Source-Repo: https://github.com/servo/servo
Source-Revision: 7df37847d3a0a02da6917c669fe62a5e4af7efcd