Commit Graph

3186 Commits

Author SHA1 Message Date
yurket
93cfa7fb58 servo: Merge #20083 - enable css paint api and remove forked duplicates (from yurket:19840_enable_css_pain_api_and_remove_forked_duplicates); r=jdm
1) Move paintWorklet from "Window" to "CSS" according to new specification;
2) Enable WPT css-paint-api tests from upstream and remove forked duplicates from mozilla folder

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #19840
- [X] These changes do not require tests because the change was made in tests it-selves

Source-Repo: https://github.com/servo/servo
Source-Revision: a0e340d68f5a51d61a69b0bc16f543d3cef54597
2018-02-22 08:56:49 -05:00
Anthony Ramine
5383f8efb7 servo: Merge #20101 - Remove a use of rooted_vec in Document::handle_touch_event (from servo:rm-rootedvec); r=asajeffrey
Source-Repo: https://github.com/servo/servo
Source-Revision: 9e1479bbddd3a1b4ead82dcbc7b1f23e3dd55013
2018-02-22 03:36:29 -05:00
Anthony Ramine
bce315eb41 servo: Merge #20098 - Avoid dropping arbitrary animation callbacks without running them (from servo:spurious-raf-optim); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: cccca27f4fd3d9cd5f2f5ee2853672fecc8a7b4b
2018-02-21 17:02:35 -05:00
Fernando Jiménez Moreno
b6c8590ea6 servo: Merge #20080 - Minor cleanup of element.innerText (from ferjm:innertext.cleanup); r=emilio
- [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: 8fdcfb2dfebb86cf33603645aa05920ce6d3e3d3
2018-02-20 08:43:48 -05:00
Anthony Ramine
dfe7ddb43e servo: Merge #20062 - Remove a single use of rooted_vec (from servo:iamroot); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: e97693ee097cf293178bcc51b4614820331b4d47
2018-02-16 13:09:28 -05:00
Nupur Baghel
9112bdfa6c servo: Merge #20041 - Added extra bool in Window object to know about its Mutation Observers (from paavininanda:mutflags); r=jdm
<!-- Please describe your changes on the following line: -->
- Added Cell<bool> type variable in Window object to know whether its mutation observers are present/absent
- Added get and set functions for this variable
- Added supporting test files to check for performance

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

<!-- Either: -->
- [x] There are tests for these changes, but these are manual tests for checking correctness of added code

<!-- 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: 4454e81878bfdc8bfdac9a24738b2192102b0456
2018-02-16 12:16:55 -05:00
Fernando Jiménez Moreno
065898adb6 servo: Merge #20054 - Implement element.innerText setter (from ferjm:innertext.setter); r=emilio
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #16107
- [X] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: a6113af87335d69d11e53bc0ef2618dc7f6d16a0
2018-02-16 05:38:38 -05:00
Paul Rouget
766eaac45f servo: Merge #19975 - Kill browserhtml (from paulrouget:killbhtml); r=mbrubeck,emilio
Fixes https://github.com/servo/servo/issues/19971

Source-Repo: https://github.com/servo/servo
Source-Revision: b1d3d6f6324394f0e9f17b027fef24420d829b5c
2018-02-13 04:54:47 -05:00
Fernando Jiménez Moreno
04e1a0a57e servo: Merge #19754 - Implement element.innerText getter (from ferjm:innertext); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 9e64008e759a678a3971d04977c2b20b66fa8229
2018-02-13 03:41:48 -05:00
paavininanda
727a67e24f servo: Merge #19963 - Correct default SelectionStart and SelectionEnd (from paavininanda:Issue#19958); r=<try>
<!-- 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] Added unit tests and wpt for these changes
- [x] These changes fix #19958

<!-- 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: 62e1fc7899c2b0210dd24044d388b43ae80c276c
2018-02-12 11:56:27 -05:00
Emilio Cobos Álvarez
656ba0e86e servo: Merge #20004 - style: Add infrastructure to have a standalone author stylesheet collection (from emilio:author-sheet-collection); r=nox
Right now Gecko uses a whole `Stylist` for stuff like XBL / Shadow DOM.

That's not great, because it has tons of unrelated logic, and also eats up a lot of memory. Also, it prevents us to optimize style changes in shadow hosts the same way we do for the document.

These patches mostly rejigger stuff around so that you can define a `DocumentStylesheetSet` and then an `AuthorStylesheetSet`, which would contain just the Shadow DOM sheets / XBL resource sheets.

It still doesn't introduce any use for the later, but that will come later.

There's a patch in this PR that requires Gecko changes, posted in https://bugzilla.mozilla.org/show_bug.cgi?id=1436798.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6b1a74672d6b9d9c55b027b147b0a6eb8f727bfd
2018-02-09 17:18:08 -05:00
Nupur Baghel
64c408fbc0 servo: Merge #19972 - replaced content_type from DOCString to Mime (from paavininanda:Issue16483); r=jdm
Replaced content_type from DomString to Mime

---
<!-- 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 #16483 (https://github.com/servo/servo/issues/16483).

<!-- Either: -->
- [x] These changes do not require tests because they make changes to already existing files

<!-- 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: 7e501f50f7ef71c6f877bb2ebbaaeaf0162b5f43
2018-02-09 05:02:19 -05:00
janczer
365600e115 servo: Merge #19970 - Change debug assertions to specific ones (from janczer:change_debug_assertions); 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
- [X] These changes fix #19962 (github issue number if applicable).

<!-- 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: 5d209a70ab11cd0ce6c7e086091112570c6e259d
2018-02-07 06:20:36 -05:00
paavininanda
2d6d328b96 servo: Merge #19946 - Change Offset_to_text_point function and add unit tests (from paavininanda:Issue18613); r=jdm
<!-- 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 #18613.

<!-- Either: -->
- [x] Added unit tests and web platform 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: 36eb711d3b324de5437cc586bb6a8e09b2219108
2018-02-06 15:11:54 -05:00
Martin Robinson
bd17f5d3b7 servo: Merge #19933 - Update WebRender (from mrobinson:update-wr); r=emilio
This allows servo to use the ExternalScrollId API from WebRender fixing
some issues related to duplicate scroll root ids.

Fixes #17176.
Fixes #19287.
Fixes #19648.

<!-- 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 #17176, #19287, and #19648.

<!-- 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: 8f24005e17aa0b5e274e6efbe0e44f208eb71e42
2018-02-06 09:12:58 -05:00
CJ Ku
724543b7a0 servo: Merge #19859 - Implement individual CSS transform properties: translate, rotate, scale (from birtles:individual-transforms); r=emilio
These are the servo-side changes for [Gecko bug 1207734](https://bugzilla.mozilla.org/show_bug.cgi?id=1207734).

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Gecko bug 1207734](https://bugzilla.mozilla.org/show_bug.cgi?id=1207734)
- [X] There are tests for these changes on the Gecko side including web-platform-tests

Source-Repo: https://github.com/servo/servo
Source-Revision: 3e27459ad3c2d4c9d3582a16ae848f8c94578d6f
2018-01-31 16:16:25 -06:00
Jon Leighton
f120bdb1d1 servo: Merge #19909 - Refactor implementation of TextControl (from jonleighton:refactor-textcontrol); r=jdm
The intention here is to make the flow more explicit. I.e. rather than
calling `self.dom_select()` and relying on the programmer to
know/realise that this method is provided by a trait, we call
`self.selection().dom_select()` and the programmer can inspect the
definition of `self.selection()` to follow the code.

This came out of a discussion with KiChjang here:

https://github.com/servo/servo/pull/19544#discussion_r156167044

Note that I tried to make "selection" be a member field of
HTML{Input,TextArea}Element but it opened up a whole can of worms with
lifetimes, so it seemed simpler to not do that since it is not
essential for this code to work.

r? @jdm and @KiChjang

Source-Repo: https://github.com/servo/servo
Source-Revision: ff54a58694af43fc549baa6c64bf6ebc5c37385f
2018-01-31 09:46:48 -06:00
Connor Brewster
bb2d6f6ded servo: Merge #19031 - Implement initial part of history.state (from cbrewster:push_replace_state_early); r=asajeffrey
<!-- Please describe your changes on the following line: -->
Implements maintaining the current history state. Tracking history state in the session history will be done as a followup.

---
<!-- 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: 469dc84b6ea20b6d378771b008101b49f34e1ad6
2018-01-30 14:14:04 -06:00
Rakhi Sharma
e9603f8131 servo: Merge #19431 - Add picture element (from Rakhisharma:picture_element); r=jdm
<!-- 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 are part of #11416  (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: 76b4e5cefb68e64a1bb2df78b32b05eba41eb678
2018-01-30 07:07:42 -06:00
Emilio Cobos Álvarez
cc2fd57c81 servo: Merge #19878 - selectors: Never match ::slotted on <slot>s (from emilio:slotted-slot); r=nox
This fixes the test from https://github.com/w3c/web-platform-tests/pull/9212 in
Gecko.

Source-Repo: https://github.com/servo/servo
Source-Revision: 82922c97dc0313736fedb8021b205d4f84088a15
2018-01-29 11:45:11 -06:00
CYBAI
088b6b59dd servo: Merge #19889 - script: Move style as Element method (from CYBAI:style-inside-element); r=emilio
r? emilio

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #19886
- [x] These changes do not require tests because it should not break anything

Source-Repo: https://github.com/servo/servo
Source-Revision: 64c514ac3a54254720440d869c1c739f7b2a6802
2018-01-28 12:00:45 -06:00
Jon Leighton
d5108675c7 servo: Merge #19881 - Add layout RPC query for getting an element's style (from jonleighton:issue-19811); r=emilio
This enables us to implement Element::has_css_layout_box() in a more
direct way, and also enables us to remove some of the existing more
specific queries.

Fixes #19811.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 2a46067587d63aec176621ab3b6112ef5200a248
2018-01-28 05:52:56 -06:00
Jon Leighton
8d9a72ff96 servo: Merge #19544 - Text selection API conformance (from jonleighton:issue-19171-5); r=nox
This is my next batch of changes for issue #19171. All the tests in tests/wpt/metadata/html/semantics/forms/textfieldselection/ are now passing (and also some tests outside of there).

I've made detailed notes about the changes in each commit message.

r? @KiChjang

Source-Repo: https://github.com/servo/servo
Source-Revision: c2dfece49f1d59f51a3207cd3d88c282ee1adf70
2018-01-26 13:58:01 -06:00
Anthony Ramine
9a96ec0169 servo: Merge #19872 - Make JSTraceable for DomRefCell<T> panic if cell is mutably borrowed (from nox:domrefcell-tracing); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: c0d9f28b044ce377fc421475a943555c8ca6f123
2018-01-26 08:26:49 -06:00
CYBAI
a0af98a71f servo: Merge #19868 - Use specific assertions (from CYBAI:specific-assertion); r=emilio
Similar to #19865
r? jdm

Note: Should I squash all the commits into one commit?

---
- [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 it should not break anything

Source-Repo: https://github.com/servo/servo
Source-Revision: c9ba16f9fbdf7f43cb19feedfaaa68c85bbcbe3b
2018-01-25 18:06:33 -06:00
Anthony Ramine
7e481f008d servo: Merge #19864 - Make some callback-related code unsafe (from nox:callbacks); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: e9ab91d257a983a7c19cb5fada21a0359cfae95d
2018-01-25 16:21:10 -06:00
Anthony Ramine
3ac08c3f7f servo: Merge #19838 - Make ToCss' SequenceWriter not monomorphise like a maniac anymore (from servo:rm-sequence-writer-as-it-was); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 6b2e5283c9e810ac316c203849b6ea25544a62c7
2018-01-23 12:03:41 -06:00
Bobby Holley
49c5f801a7 servo: Merge #19841 - stylo: Avoid separate monomorphizations of CSS serialization for utf-8 and utf-16 (from bholley:single_tocss); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1431268

Source-Repo: https://github.com/servo/servo
Source-Revision: 6f543d3de1658e3cacf7fc2caed7b9bda69e1d23
2018-01-22 16:58:30 -06:00
Simon Sapin
4179ee0fb3 servo: Merge #19829 - Update Rust and use the newly-stable std::ptr::NonNull (from servo:rustup); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: c1ed4bb2d5ed6a4f9967215620d2105cda5ef76a
2018-01-22 11:11:44 -06:00
Jon Leighton
df6b5386a0 servo: Merge #19803 - Implement Element::has_css_layout_box() (from jonleighton:issue-19765); r=emilio
r? emilio

Here's my initial attempt to fix #19430. It seems surprisingly simple so I am wondering whether I have missed something! (Or maybe it just actually is quite simple...)

Some things I am unsure about:

1. The spec seems vague about what a [CSS layout box](https://drafts.csswg.org/cssom-view/#css-layout-box) actually is. Indeed it says: "The terms CSS layout box and SVG layout box are not currently defined by CSS or SVG."
2. One thing the spec *does* say explicitly is "For the purpose of the requirements in this specification, elements that have a computed value of the display property that is table-column or table-column-group must be considered to have an associated CSS layout box (the column or column group, respectively)." I am unclear about the relevance of this, since [overflow does not apply](https://drafts.csswg.org/css-overflow-3/#overflow-properties) to an [internal table element](https://drafts.csswg.org/css-display-3/#layout-specific-display). Therefore I haven't done anything about this explicitly, but maybe I'm missing some nuance.

Source-Repo: https://github.com/servo/servo
Source-Revision: bccb757bcd630255c48290ee396b755483d34772
2018-01-19 14:37:57 -06:00
Emilio Cobos Álvarez
9c27e80a90 servo: Merge #19817 - style: Track the visited-handling-mode on the MatchingContext (from emilio:matching-context-visited); r=nox
This fixes bugs where we're not passing the value around correctly, like from
::-moz-any.

This is a fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1431539.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d7d02fca772a407d4ffa1ebd1e03d60f385eb74
2018-01-19 12:50:00 -06:00
Fernando Jiménez Moreno
a9bcd27bed servo: Merge #19806 - Remove gecko-media dependency (from ferjm:rm-gecko-media); r=nox
The effort to import Gecko's media stack into Servo has been canceled, so I am removing the bits of code from gecko-media that we added to Servo.

- [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: acdbbd51af06890c96481698199c61b9ef056618
2018-01-19 11:53:28 -06:00
Pyfisch
f96f03b2c9 servo: Merge #19782 - Use more WebRender types in gfx/display_list (from pyfisch:dl-simple); r=mrobinson
Use more WebRender types in gfx/display_list.
This uses floating-point (Layout) coordinates in where possible.
Replace NormalBorder struct with WebRender equivalent.
Remove ToPointF and ToRectF traits.
Convert border RepeatKeyword with ToLayout.
Add some definitions to malloc_size_of for WebRender types.

Source-Repo: https://github.com/servo/servo
Source-Revision: aee0d694cc077d4694fc3114af3a2ad83e326cbf
2018-01-18 05:42:52 -06:00
Josh Matthews
ba135afe46 servo: Merge #19397 - Implement the create an element for token algorithm (from cbrewster:create_element_for_token); r=jdm,nox
<!-- 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 #19392 and fix #19393 (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: fa82a6bbcef23c1ff4dc9d34f5f4ad75b622b3be
2018-01-17 10:57:06 -06:00
tigercosmos
731485212a servo: Merge #19761 - implement range input sanitization (from tigercosmos:m1); r=KiChjang
<!-- Please describe your changes on the following line: -->
implement range input sanitation.
Since there is no `min`, `max`, `step` implementation currently, this should be continued in the future.

r? KiChjang

---
<!-- 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 #19172 (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: 4f099876116c91173a104e32dfcfc32a6d644155
2018-01-17 04:30:58 -06:00
Fernando Jiménez Moreno
9ddc6da714 servo: Merge #19772 - Do not fire pending callbacks on disconnected performance observer (from ferjm:performance.wpt); r=nox
Implement this change in the Performance Timeline API https://github.com/w3c/performance-timeline/issues/66

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

Source-Repo: https://github.com/servo/servo
Source-Revision: f866e1aacb5bcf17a7d11c6106d34b474d6b4f33
2018-01-15 03:20:57 -06:00
Simon Sapin
24041c9e58 servo: Merge #19683 - Upgrade to rustc 1.24.0-nightly (0a3761e63 2018-01-03) (from servo:rustup); r=jdm
Fixes #19635
Fixes #19637
Fixes #19735
Fixes #19519

Source-Repo: https://github.com/servo/servo
Source-Revision: a22bff8119dd9ef4f85b277de7be6a9e20119f70
2018-01-10 14:00:32 -06:00
Anthony Ramine
29f89aecc6 servo: Merge #19727 - Properly handle CR in textarea placeholders (fixes #19717) (from nox:cr-placeholder); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 2065fa6da23c304093b0fdbbf7c068e0b0c67366
2018-01-10 10:37:47 -06:00
Nathan
8b8de41029 servo: Merge #19730 - number input type validations (from NLincoln:19172-number-input-type-validations); r=KiChjang
I used rust's builtin float parser to implement this. Rust's parser is more permissive than what browsers support (in this case), so I added some code to handle those edge cases.

This passes all the prewritten test cases locally, but I fell asleep last night before updating the manifests 😅

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes are part of #19172

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

Source-Repo: https://github.com/servo/servo
Source-Revision: afe298b53d91226d61a2ca7955b9c1d3d233a194
2018-01-09 22:15:12 -06:00
Manoj
f063f053b8 servo: Merge #19724 - Remove out of date FIXME comments from domimplementation (from hindenbug:19723-remove-fixme-comments); r=metajack
<!-- Please describe your changes on the following line: -->
This removes out of date FIXME comments from `domimplementation.rs`

---
<!-- 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
- [x] These changes fix #19723

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because this is a comment cleanup

<!-- 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: aa199307c86051e13b17a5feb77722ddcdeed5ce
2018-01-08 19:28:49 -06:00
tigercosmos
ccc1a12b28 servo: Merge #19647 - replace DocumentSource::NotFromParser with DocumentSource::FromParser (from tigercosmos:x3); r=jdm
<!-- Please describe your changes on the following line: -->
per https://github.com/servo/servo/pull/4297/files#r158729975

---
<!-- 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
- [ ] 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: d41f720ee422f53a7c49d0877d105d8750ea404f
2018-01-08 11:23:21 -06:00
Adrian Wielgosik
7081f1adc3 servo: Merge #19722 - Remove js.mem.gc.refresh_frame_slices.enabled pref (from adrian17:master); r=emilio
Clean up after gecko [bug 1421358](https://bugzilla.mozilla.org/show_bug.cgi?id=1421358), which removed the pref entirely.

Source-Repo: https://github.com/servo/servo
Source-Revision: 02f1864770c108a47b3c83c3d89293222cb6dfcf
2018-01-08 04:52:09 -06:00
tigercosmos
dcd7780bf6 servo: Merge #19602 - implement valid DatetimeLocal input (from tigercosmos:r1); r=KiChjang
<!-- Please describe your changes on the following line: -->
implement valid Date time Local input

part of #19172

---
<!-- 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 #19587 fix #19603(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: 7f36b59762864731279fb249dd50faca5078b751
2018-01-07 05:10:47 -06:00
Igor Matuszewski
ca48a4248a servo: Merge #19644 - Root sequence<any> params using CustomAutoRooter (from Xanewok:root-seq-any); r=jdm
<!-- Please describe your changes on the following line: -->

Attempt at https://github.com/servo/servo/issues/16678. At the moment this pulls an external [remove-handle-conv](https://github.com/Xanewok/rust-mozjs/tree/remove-handle-conv) branch for rust-mozjs (removing `FromJSValConvertible` implementation for `HandleValue` and adding one for `*mut JSObject`)

In short, this roots the `sequence<any>` and `sequence<object>` function arguments using `CustomAutoRooter` (introduced in https://github.com/servo/rust-mozjs/pull/382).

As per https://github.com/servo/servo/issues/16678#issuecomment-302224110 the underlying vector contains raw gc thing pointers instead of handles. To do that, this introduces new possible `isMember = "AutoRoot"` value in CodegenRust.py.
The rooted argument is passed to a function wrapped in a `CustomAutoRooterGuard` [RAII root guard](ed5e37a288/src/rust.rs (L586-L588)) (e.g. as `CustomAutoRooterGuard<Vec<JSVal>>`)

I felt quite out of my depth when trying to adapt CodegenRust.py code, so I'd appreciate any help with how can be done better/in a more clean manner.
Also the name `CustomAutoRooterGuard` is quite lengthy, so I'm also open to changing it (`AutoRoot`? `AutoRootGuard`?)

---
<!-- 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 #16678  (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: 989d2fd53267d063212ef3b7b7f13f2402943c4a
2018-01-05 14:02:53 -06:00
Emilio Cobos Álvarez
758fc60ea8 servo: Merge #18893 - style: Remove TNode::set_can_be_fragmented and TNode::can_be_fragmented (from emilio:bye-can-be-fragmented); r=SimonSapin
Replace them instead by a computed value flag, the same way as the
IS_IN_DISPLAY_NONE_SUBTREE flag works.

Source-Repo: https://github.com/servo/servo
Source-Revision: 83a8891bd4d04ccb3f2f7b292d53f2847380b94c
2018-01-05 05:11:00 -06:00
Yati Sagade
c6402de93a servo: Merge #19256 - Paint worklets: Implement timeout for worklet painter threads (from yati-sagade:master); r=asajeffrey
When a paint worklet thread takes too long, we would like to move on,
since we have a ~16ms budget for rendering at 60fps. At the moment, there
is no provision in the paintworklet spec to signal such timeouts to the
developer. ajeffrey opened an [issue][1] for this, but it got punted to
v2 of the spec. Hence we are silently timing out unresponsive paint
scripts.

The timeout value is chosen to be 10ms by default, and can be overridden
by setting the SERVO_PAINT_WORKLET_TIMEOUT_MS environment variable.

In the absence of such a timeout, the reftest in this commit would fail
by timing out the testrunner itself, since the paint script never
returns. From my discussions with ajeffrey, this should do until we spec
out a way to signal timeouts to the script developer.

This fixes #17370.

[1]: https://github.com/w3c/css-houdini-drafts/issues/507

<!-- 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 #__ (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: 54f8cc37c5a7874607128e3518fd0982f7065565
2017-12-22 04:50:16 -06:00
Igor Matuszewski
f79d434e92 servo: Merge #19611 - Bump mozjs to 0.1.9 (from Xanewok:bump-mozjs); r=jdm
<!-- Please describe your changes on the following line: -->

Bumping rust-mozjs, which was updated in tandem ([here](f9664091b1)) with https://github.com/servo/servo/pull/19487, but the new version wasn't pulled in here.

r? @jdm

---
<!-- 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 only bumps used crate minor version.

<!-- 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: dfd8e85338fb5460d800577d5761e979644dc869
2017-12-20 12:09:20 -06:00
Josh Matthews
1f24f19801 servo: Merge #19599 - Revert canvas IPC changes (from jdm:revertcanvas); r=asajeffrey
https://github.com/servo/servo/pull/19547 is responsible for the surge of new intermittent timeouts in canvas-related tests. There's nothing wrong with the change, so I suspect an underlying problem in ipc-channel instead.

Fixes #19592. #19593. Fixes #19594. Fixes #19597.

Source-Repo: https://github.com/servo/servo
Source-Revision: 37fe9f29573e669ea9dd86ed6d9de0e43b3f746d
2017-12-18 10:19:30 -06:00
tigercosmos
30f3f9a3cb servo: Merge #19559 - implement valid week string (from tigercosmos:t1); r=KiChjang
<!-- Please describe your changes on the following line: -->
implement valid week string
part of #19172

r? @KiChjang

---
<!-- 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] 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: 8798e498892524ebb42ab8d7613c68033fdd1db8
2017-12-17 03:50:33 -06:00
tigercosmos
1158f8ba37 servo: Merge #19547 - Send IPC receiver for canvas as part of CreateCanvasPaintThread message (from tigercosmos:b1); r=jdm
<!-- Please describe your changes on the following line: -->
I am not sure if @jdm want this.
r? @jdm

---
<!-- 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 #19483(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: c9e3fabdfd0d4c900e83a1050ec465303e339681
2017-12-16 11:35:40 -06:00