Commit Graph

2545 Commits

Author SHA1 Message Date
Ting-Yu Lin
afb5b5ff53 servo: Merge #17958 - Pseudo classes chrome privilege (bug 1381851) (from aethanyc:pseudo-classes-chrome-privilege-bug1381851); r=heycam
This is reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1381851

Source-Repo: https://github.com/servo/servo
Source-Revision: c18cac1f342ecf7f5986ea3fec857fdaca649d9f
2017-08-03 06:56:01 -05:00
DarkDrek
141c64b69e servo: Merge #17950 - Replace downcast with is (from DarkDrek:downcast_to_is); r=jdm
<!-- Please describe your changes on the following line: -->
I searched for all places where `if let Some(_) = self.downcast::` and replaced them with `::is`

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

<!-- Either: -->
- [X] These changes do not require tests because `if let Some(_) = self.downcast::<Text>()` should be equivalent to `if self.is::<Text>()`

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 92b2c47fef8746e8311cab9b33bddc2cea391da1
2017-08-02 21:01:12 -05:00
Fernando Jiménez Moreno
49776b9c5e servo: Merge #17945 - Generate DOM bindings imports for webidl typedefs (from ferjm:typedef.dom.binding); r=jdm
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

Source-Repo: https://github.com/servo/servo
Source-Revision: 3ef182ca36f0067c0e431addc8ee7f1343b575c4
2017-08-02 13:22:32 -05:00
Corey Farwell
e8ccc518c5 servo: Merge #17883 - Audit usages of unicode case-changing methods (from frewsxcv:frewsxcxv-lowercase); r=SimonSapin
Part of https://github.com/servo/servo/issues/17777.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5fff90c73f77dd9ed41b692e6b3ea960a29ee8a8
2017-08-02 03:01:26 -05:00
Alan Jeffrey
126613911f servo: Merge #17810 - Script paint worklets speculative evaluation (from asajeffrey:script-paint-worklets-speculative-evaluation); r=emilio
<!-- Please describe your changes on the following line: -->

This PR speculatively calls paint worklets during style, which increases the concurrency, since it increases the chance that the cache will have the right result in it when it comes to layout. The speculation is wasted effort if the size of the element has changed, but this is often not the case.

---
<!-- 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 #17486 and #17369.
- [X] These changes do not require tests because it's a performance improvement

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: cf5602e84f17d14b6a9abb77f1de6460db070921
2017-07-31 13:13:26 -05:00
Alan Jeffrey
74bd602faa servo: Merge #17546 - Script paint worklets arguments (from asajeffrey:script-paint-worklets-arguments); r=emilio
<!-- Please describe your changes on the following line: -->

Implement paint worklet arguments.

This is a dependent PR, only the last commit is in this PR.
---
<!-- 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 #17435
- [X] These changes do not require tests because there are tests in the most recent wpt.

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 097e36beb1fc34f021044a19f029eed8780fa87f
2017-07-29 15:32:49 -05:00
Nikhil Shagrithaya
d047f35435 servo: Merge #17914 - Run the async HTML Tokenizer on a new thread (from cynicaldevil:new-parser-thread); r=emilio
<!-- 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: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

Follow up for #17565

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: e87d8af0566bf3697023c984d4d2550455843567
2017-07-29 10:08:11 -05:00
Sebastian Hengst
a563afee8f Backed out changeset a417b9d7712d for vendoring bustage. r=backout on a CLOSED TREE 2017-07-29 00:04:59 +02:00
Nikhil Shagrithaya
8af105057d servo: Merge #17565 - Servo's async Tokenizer: New! Improved! Now with multithreading! (from cynicaldevil:new-parser-thread); r=nox,jdm
<!-- Please describe your changes on the following line: -->

The Tokenizer, defined in the file `async_html.rs` will run on the main thread, while h5e's `Tokenizer`(along with its Sink) lives on the parser thread. Both h5e's `Tokenizer` and `Sink` communicate with the main thread Tokenizer via their own mpsc channels. The Sink keeps sending parser operations to the main thread, to be executed. For some operations, it waits for a message from the main thread before returning.

---
<!-- 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
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: e8272dcf1a316549cdbc98a16c181c02743041c4
2017-07-28 12:23:29 -05:00
Nazım Can Altınova
c12b84abb7 servo: Merge #17894 - Implement parsing/serialization for @font-feature-values rule (from canaltinova:at-font-feature-values); r=SimonSapin,xidorn
<!-- Please describe your changes on the following line: -->
This is reviewed by SimonSapin and xidorn in [Bug 1365900](https://bugzilla.mozilla.org/show_bug.cgi?id=1365900).

---
<!-- 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 [Bug 1365900](https://bugzilla.mozilla.org/show_bug.cgi?id=1365900)

Source-Repo: https://github.com/servo/servo
Source-Revision: 00e55dd278f46560e61959a1fd5aa9e1846cb557
2017-07-27 16:15:02 -05:00
Simon Sapin
c8457ef407 servo: Merge #17884 - Upgrade to rustc 1.21.0-nightly (599be0d18 2017-07-26) (from servo:rustup); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 9370a0c4b500a1ad9dc29c0ad8a37d47f00d0817
2017-07-27 03:13:34 -05:00
Simon Sapin
6e4b1519ff servo: Merge #17820 - Update cssparser to 0.18 (from servo:token-cache); r=emilio
Do not merge yet, depends on https://github.com/servo/rust-cssparser/pull/171.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4f0821192c112943bb53b4fb04303c1afdde06e6
2017-07-24 06:27:00 -07:00
Nikhil Shagrithaya
6db9178f61 servo: Merge #17827 - Update step annotations in script's prepare method (from cynicaldevil:fix-step-annotations); r=jdm
<!-- Please describe your changes on the following line: -->
The step annotations in the code were outdated, and did not match the spec: https://html.spec.whatwg.org/multipage/scripting.html#prepare-a-script

Source-Repo: https://github.com/servo/servo
Source-Revision: 548d65dc7a08805bb941d83304c30a12c834ca90
2017-07-23 12:45:22 -07:00
Alan Jeffrey
6dfedff42e servo: Merge #17634 - Implement drawing an image from a CSS style value into a canvas (from asajeffrey:canvas-image-css-style-value); r=jdm
<!-- Please describe your changes on the following line: -->

Implemented drawing a CSS style value into a canvas, which is needed for the Houdini CSS Paint API.

This PR is dependent on #17364.

---
<!-- 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 #17432.
- [X] These changes do not require tests because the existing CSS paint API wpt test cases test this behaviour.

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 76ad913870cec3f01731d324967ed191fd5c6be3
2017-07-21 14:39:47 -07:00
Xidorn Quan
abe97be442 servo: Merge #17813 - Store raw string for prop decl in @supports (from upsuper:supports-decl); r=SimonSapin
This fixes the serialization issue of `@supports` rule that whitespaces are not preserved like in other browsers.

It makes the work a bit redundant (the property name and colon is parsed twice), but I suppose this isn't a big deal.

Source-Repo: https://github.com/servo/servo
Source-Revision: d1ac8b26e9fe2476d4b97522beb030ae60163d23
2017-07-21 09:01:57 -07:00
Alan Jeffrey
c296f05349 servo: Merge #17499 - Fixed scaling artefacts in paint worklets caused by zoom and hidpi (from asajeffrey:script-paint-worklets-zoom); r=glennw
<!-- Please describe your changes on the following line: -->

This PR renders paint worklet canvases at the device pixel resolution, rather than the CSS pixel resolution.

It's a dependent PR, building on #17239, #17326 and #17364.

---
<!-- 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 #17454
- [X] These changes do not require tests because we don't run reftests with zoom enabled

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 9fcbeb3ca2ea0d11d4787c649e82918f7672694d
2017-07-20 17:09:06 -07:00
Pavel Sergeev
4f19f3bd1e servo: Merge #17749 - Extra space check (from SergeevPavel:extra-space-check); r=jdm
<!-- Please describe your changes on the following line: -->
Add tidy check for keywords with more than one space afterwards.

---
<!-- 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 #17700 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 7d95fb8e49dd0eb9fa9efb9d70008f5f9bf20a83
2017-07-19 16:03:51 -07:00
Michael Partheil
728ab1f36c servo: Merge #17775 - Replace all uses of the style::stylearc alias with servo_arc (from michael-p:rename-stylearc-to-servo-arc); r=emilio
The `stylearc` alias is left there temporarilly and will be removed completely in a later commit/PR where also `components/style/gecko/generated/structs_{debug|release}.rs` are re-generated (they still use the old alias).

---
<!-- 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 #17768  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because no new features / only refactoring

Source-Repo: https://github.com/servo/servo
Source-Revision: 31228c18499d1c7f68b6b64b559354c768e81215
2017-07-19 06:03:17 -07:00
Connor Brewster
8df9f2c6bf servo: Merge #17761 - Add [CEReactions] to webidls (from cbrewster:ce_reactions); r=jdm
<!-- Please describe your changes on the following line: -->
Relies on #17614

---
<!-- 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).

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: a6739cb17f381b88531eb6173d048868aec8e082
2017-07-18 12:37:46 -07:00
Fernando Jiménez Moreno
7a373f3d79 servo: Merge #17735 - Set navigation start value according to navigation timing spec (from ferjm:navigationstart); r=jdm
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #17651

Source-Repo: https://github.com/servo/servo
Source-Revision: eb26194dd12f1430e9089512d54973d3b12b2e36
2017-07-18 10:24:44 -07:00
Alan Jeffrey
7215e1614b servo: Merge #17763 - Placed worklets implementation behind a pref (from asajeffrey:script-worklets-pref); r=jdm
<!-- Please describe your changes on the following line: -->

At the moment, worklets are always exposed, even though their spec is still a draft. This PR hides them behind a pref.

---
<!-- 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 #17680.
- [X] These changes do not require tests because the existing worklet tests do the job.

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 92eeec297bb14f08873aecc04ca3734a37c0478f
2017-07-18 08:11:23 -07:00
Connor Brewster
fdc61335c9 servo: Merge #17614 - Implement custom element reactions (from cbrewster:custom_element_reactions); r=jdm
<!-- Please describe your changes on the following line: -->
Initial work for implementing custom element reactions: https://html.spec.whatwg.org/multipage/custom-elements.html#custom-element-reactions

---
<!-- 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 #17433 (github issue number if applicable).

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 7b134440fc736450cc87470a78e94f80b9161679
2017-07-17 22:58:53 -07:00
Manish Goregaokar
cb8af9ffe8 servo: Merge #17767 - stylo: Fuse ServoStyleContext and ServoComputedValues (from Manishearth:stylo-fuse); r=bholley
r=bholley https://bugzilla.mozilla.org/show_bug.cgi?id=1367904

Source-Repo: https://github.com/servo/servo
Source-Revision: d746abaa9e69e6cf0ad187d2b46be661bbe03a9f
2017-07-17 19:44:25 -07:00
Austin Hicks
fc33ab4fff servo: Merge #17520 - Convert node serialization to a purely iterative algorithm (from camlorn:master); r=asajeffrey
We maintain a stack of open element nodes with their children count, popping from the top of the stack and closing when the count reaches zero.

Contrary to my comment in #16696, this is a purely iterative algorithm.  I just wasn't feeling sufficiently clever with respect to finding a relatively clean way until later.

<!-- 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: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #16696 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes.

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 66b9544d60289631638f7a07aca9da3700b99894
2017-07-17 09:54:43 -07:00
Fausto Núñez Alberro
6492be7f40 servo: Merge #16508 - Properly set origin of fetch requests (from brainlessdeveloper:fetch-set-origin); r=asajeffrey
<!-- Please describe your changes on the following line: -->

These changes aim to fix #15247

---
<!-- 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 #15247 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes
- [x] These changes do not require tests because cors is already tested with different origins

These changes require changes in tests, but I need help with that (see comments below).

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 2bb4f65100ca07e9281c8ad04cd498ff1346387f
2017-07-17 08:29:23 -07:00
Josh Matthews
d7bfd7a8c4 servo: Merge #17739 - Suppress CSS parser errors for vendor-prefixed properties (from jdm:no-vendor-prefixed-errors); r=emilio
This matches the behaviour of Gecko's CSS parser.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #17736
- [X] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: 38f4ae80c4b456b89ee33543c8c6699501696c9c
2017-07-17 07:10:11 -07:00
Emilio Cobos Álvarez
21b2f45c76 servo: Merge #17731 - style: Respect calc for percentages (from emilio:percentage-calc); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 2d37700cf819d901552cfb3954e948f1fbadcf78
2017-07-17 01:29:11 -07:00
Jonathan Chan
822c792dde servo: Merge #17501 - Have CharacterData call children_changed on its parent when data is set (from jyc:Text-children_changed); r=emilio
**Can't run WPT on my computer, so pushing here to run tests 😢**

Have CharacterData.SetData call children_changed on its parent when
data is set (if it is a Text node) so that HTMLStyleElement parents can
re-parse. Add variant ChildrenMutation::Text for it to use as the
mutation.

This fixes an issue where an empty <style> element's data is set but the
style is not updated. An HTMLStyleElement parent re-parses in its
children_changed implementation.

<!-- 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: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes are part of a series to fix #17182 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 559c0d1d905bf6bc1dd72d576cd4fc8287e0947b
2017-07-13 14:00:13 -07:00
Martin Robinson
7b0a6b5e35 servo: Merge #17694 - Upgrade to the latest version of WebRender (from glennw:webrender-update); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 173181a491f18a292ea80acbc25dd561e6e678d8
2017-07-12 21:52:27 -07:00
Jonathan Chan
7676f117ef servo: Merge #17538 - Implement CSSStyleRule.selectorText (from jyc:selectorText); r=Manishearth
We parse when assigning using the namespaces of the stylesheet. It isn't
clear if the spec says to do that (Firefox doesn't support the setter at
all, Chrome does, Safari doesn't); the spec issue is here:
https://github.com/w3c/csswg-drafts/issues/1511

Also fix ToCss implementation of AttrSelectorOperator to not pad with
spaces, to conform with CSSOM. This means we have to update some unit
tests that expect operators with spaces around them in attribute
selectors to roundtrip.

See the "attribute selector" section of "Serializing Selectors" here:
https://drafts.csswg.org/cssom/#serializing-selectors

CSSStyleRule.selectorText is specified here:
https://drafts.csswg.org/cssom/#dom-cssstylerule-selectortext

<!-- 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: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes is part of a series to fix #17182

<!-- Either: -->
I am running this to identify what tests will fail; as the other PRs in the series are merged, I believe the tests that pass will change as well.

- [ ] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4b6e79337ef975e3ec752513b76ae6a6284c1199
2017-07-12 11:08:35 -07:00
Sadman Kazi
ee4f2baa67 servo: Merge #17672 - Use boxed slice instead of vec for FuntionTimerCallback (from sadmansk:heap_in_box); r=jdm
<!-- Please describe your changes on the following line: -->
Added `fn trace()` implementation for `Box<[T]>` type, and change FunctionTimerCallback to store boxed slices for heap values instead of Vector.

---
<!-- 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 #17611

<!-- Either: -->
- [x] These changes do not require tests

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 749891e48ec6faa14447b299c48887754872e497
2017-07-11 18:55:18 -07:00
Alan Jeffrey
fe03dc44ca servo: Merge #17364 - Implement paint worklet properties (from asajeffrey:script-paint-worklets-properties); r=jdm
<!-- Please describe your changes on the following line: -->

This is the final PR to get basic paint worklet support. It adds support for paint worklet properties (https://drafts.css-houdini.org/css-paint-api/#paint-definition-input-properties). When a paint worklet is registered, it specifies a list of CSS properties, and is provided with their computed values when it is invoked.

This is a dependent PR:
* "Implemented paint worklets invoking worklet scripts" is #17239.
* "Implemented paint worklets rendering contexts" is #17326.

There should be tests added for this, hopefully the existing wpt houdini tests.

---
<!-- 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 #16839
- [x] There are tests for these changes

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: bc44246fc682d9f2362eaca6bba07b45c293eb42
2017-07-11 16:24:18 -07:00
Josh Matthews
7a92658c09 servo: Merge #17665 - Avoid panic when postMessage targets closed window (from jdm:postmessage-panic); r=KiChjang
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #17664
- [X] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: 2a575acabe50446803005db52b750405b7b7080c
2017-07-11 12:28:33 -07:00
Omar Akkila
0bbd9ba7a9 servo: Merge #17632 - Clean up HTMLImageElement::handle_event (from omakk:master); r=jdm
Reflects desired changes in #15832

<!-- Please describe your changes on the following line: -->
Cleans up `HTMLImageElement::handle_event` located in `components/script/dom/htmlimageelement.rs`

---
<!-- 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 #15832

- [X] These changes do not require tests because this change maintains the same logic

Source-Repo: https://github.com/servo/servo
Source-Revision: 6e2e7151d84804d4d630cecb1bf0a5ea2fe70e2b
2017-07-07 11:21:16 -07:00
Pyfisch
1fab1488ed servo: Merge #17578 - Implement the InputEvent (from pyfisch:input-event); r=jdm
Add WebIDL, from UI Events working draft.
Implement script type for event.

Note that actually firing InputEvents is not part of this commit.

<!-- Please describe your changes on the following line: -->
As part of my effort to improve [keyboard handling](https://groups.google.com/forum/#!topic/mozilla.dev.servo/e6R7eBDjo4M) it is necessary to introduce the InputEvent. While I have a working prototype using the input event this still needs a lot of work  before it can be merged into servo.

cc @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: f18782fb0e10e150f44719d9899a62b84ecb7adc
2017-07-06 10:55:41 -07:00
Imanol Fernandez
bd3dd2aecd servo: Merge #17608 - WebVR 1.1 spec compatibility (from MortimerGoro:webvr_11); r=jdm
<!-- Please describe your changes on the following line: -->

Servo WebVR implementation started when WebVR spec 1.2 was about to be released. 1.2 API included some minor breaking changes from spec 1.1 in order to improve the support of the API in WebWorkers.

But eventually the WebVR  committee decided not to release 1.2 and make it a major version number with a lot more changes. WebVR API 2.0 is still under heavy churn.

This PR removes the WebVR changes that non-released 1.2 version introduced to support full WebVR 1.1 spec.

I pushed some GC fixes in a separate commit. See https://github.com/servo/servo/issues/17076 and https://github.com/servo/rust-mozjs/issues/351

---
<!-- 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).

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: ddd3a15b50213931ad7c90312112275ae958d4a0
2017-07-06 07:25:57 -07:00
Omar Akkila
874417450c servo: Merge #17620 - Clean up Area::parse (#15834) (from omakk:master); r=nox
Replace mutable reference to array with direct use

Remove unnecessary clone

Replace call to unwrap()

<!-- Please describe your changes on the following line: -->
This PR refactors `Area::parse` in `component/script/dom/htmlareaelement.rs`

---
<!-- 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 #15834  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it's good enough that it compiles

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4a66001d2fe61bcbbf095ca6b8a275add3d01175
2017-07-06 04:37:00 -07:00
Emilio Cobos Álvarez
26af331265 servo: Merge #17590 - stylo: Fix StyleSheetInner/Stylesheet mapping (from emilio:gecko-inner); r=heycam
Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1372041 and all the dependent/related issues.

Source-Repo: https://github.com/servo/servo
Source-Revision: 545a53ccadd3ca37330e1ee8ad0ca926af5c9c5a
2017-07-02 07:00:39 -07:00
Alan Jeffrey
50c87c5959 servo: Merge #17326 - Implement paint worklets rendering context (from asajeffrey:script-paint-worklets-rendering-context); r=jdm
<!-- Please describe your changes on the following line: -->

Implement the rendering context for paint worklets. They really paint things now!

---
<!-- 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 the existing reftest now passes

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: a9fea0653a25d5f26f1115203015c5cf699f5227
2017-06-30 15:40:26 -07:00
Alan Jeffrey
fd2309a549 servo: Merge #17239 - Implemented paint worklets invoking worklet scripts (from asajeffrey:script-paint-worklets-invoke-worklet-scripts); r=jdm
<!-- Please describe your changes on the following line: -->

Implemented the "invoke a paint callback" functionality of paint worklets (https://drafts.css-houdini.org/css-paint-api/#invoke-a-paint-callback).

This PR does not implement the 2D rendering context, and just generates a placeholder image.

---
<!-- 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 we can't write reftests until we have 2D rendering contexts implemented.

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 39da6d46742d67c94f9614212af6dabd6124e5b3
2017-06-30 01:16:09 -07:00
Matt Brubeck
894fba9dba servo: Merge #17554 - Stop using the unstable optin_builtin_traits feature (from mbrubeck:oibit); r=ManishEarth
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix part of #5286.
- [x] These changes do not require tests because they are refactoring only.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6d7fdb484b42a26f9d33217e163f157fd87b6742
2017-06-28 19:11:08 -07:00
Connor Brewster
72816542cf servo: Merge #17527 - Don't return window proxy if it has been discarded (from cbrewster:iframe_cycles); r=asajeffrey
<!-- 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: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #17479 (github issue number if applicable).

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 51dd0c65cd6799f0dc61eb380fdbd08db60c10bd
2017-06-28 01:59:16 -07:00
Jonathan Chan
7b8b04dd1f servo: Merge #17535 - Have unsafe_no_jsmanaged_fields! macro take a type as argument rather than an ident (from jyc:unsafe-no-jsmanaged-field-ty); r=jdm
We only write unsafe_no_jsmanaged_fields!(SomeType), and the
documentation says it is to be used for types.

<!-- 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: -->
- [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).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it should be checked at compile time

<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 65ff4a399cda00c098d9f7af9c51c4278d5d94ef
2017-06-28 00:25:03 -07:00
streichgeorg
c381509299 servo: Merge #17522 - Replace ParseNodeID with ParseNodeId (from streichgeorg:master); r=emilio
<!-- Please describe your changes on the following line: -->
---
Not really much to this...
<!-- 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 #17519 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 8d9b995b344a01cf9e8fa2149afb99c4d0ad3c25
2017-06-26 22:46:27 -07:00
Corey Farwell
a8e4b94e5f servo: Merge #17515 - Merge explicit node iterator structures into single generic structure (from frewsxcv:frewsxcv-simple-node-iterator); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: f740366c611d375f0bb259ae0f4d846c05ec276e
2017-06-25 00:38:23 -07:00
Connor Brewster
0a5fa1e734 servo: Merge #17381 - Custom element creation (from cbrewster:custom_element_creation); r=jdm
<!-- Please describe your changes on the following line: -->

This implements the CE-related steps when creating elements. `is` is now support by `document.createElement` and is stored on `Element`s. Only synchronously created autonomous elements are supported as async element creation and customized built-in elements both require custom element upgrade reactions.

Spec: https://dom.spec.whatwg.org/#concept-create-element

---
<!-- 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 #17191 (github issue number if applicable).

<!-- Either: -->
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: bc3ec0ce1bc0ea55ac60def8b3e75948c7085162
2017-06-23 21:08:40 -07:00
Corey Farwell
5d1fa43fbb servo: Merge #17503 - Replace iterator struct with anonymous return iterator types (from frewsxcv:frewsxcv-return-node-list-2); r=mbrubeck
Similar to https://github.com/servo/servo/pull/17488.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1d045e5c3b0f1b07fcf1f3513957c2378db0313c
2017-06-23 19:01:33 -07:00
Keith Yeung
f3991c6f53 servo: Merge #17491 - Introduce service-worker mode (from KiChjang:update-fetch); r=jdm
Bringing in the spec changes from whatwg/fetch#435.

Source-Repo: https://github.com/servo/servo
Source-Revision: e2a26e7bd0d8089a441bc3072cf15351b0ef1252
2017-06-23 14:56:00 -07:00
Corey Farwell
be5420f2d4 servo: Merge #17488 - Replace iterator struct with anonymous return iterator type (from frewsxcv:frewsxcv-return-node-list); r=jdm
```
hi servo. it's been
some time. here's a pull request.
i hope you like it.
```

Source-Repo: https://github.com/servo/servo
Source-Revision: bc5e8f89fff9bf1922638b3eb2f4c75148dcad1e
2017-06-23 12:38:02 -07:00
Jonathan Chan
5573a991b5 servo: Merge #17259 - Force HTMLStyleElement to create a new CSSStyleSheet when re-parsing (from jyc:new-CSSStyleSheet); r=emilio
- [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 I'm pushing to find out what test results this changes; this is part of a series of PRs to fix bug #17182

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e493529f0eca00b92274a047f843b990e6bd1a9
2017-06-23 11:37:23 -07:00