Commit graph

3981 commits

Author SHA1 Message Date
Glenn Watson
04139b8dd6 Update test expectations.
Disabled the filter test due to an apparent rounding bug in mesa softpipe. We still have coverage
of contrast in other tests in the same directory.
2016-10-25 07:57:07 +10:00
bors-servo
d5e412b3f1 Auto merge of #13873 - mrobinson:remove-nesting, r=glennw
Remove stacking context nesting from WebRender display construction

<!-- 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 they should not produce any behavior changes.

<!-- 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/13873)
<!-- Reviewable:end -->
2016-10-23 21:48:28 -05:00
Glenn Watson
18944a4ea2 Disable abspos-replaced-width-margin-000.htm.
It's an intermittent failure, that has become a permanent timeout when
trying to land a webrender update. The test loads a very large # of
images so I suspect some kind of race condition in the image loading
or reftest image framework.
2016-10-24 11:05:07 +10:00
bors-servo
a1306e1dd3 Auto merge of #13897 - scotttrinh:dom-webidl, r=jdm
Partial fix for #12415: DOM interfaces

<!-- Please describe your changes on the following line: -->
Fix exposure of DOM interfaces. Only two of the interfaces needed changing and I want someone to double check on `DOMException` (which I left exposed to both `Window` and `Worker`), but I used Firefox's definition as my source since the specs don't lay it out explicitly.

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

<!-- Either: -->
- [X] These changes do not require tests because they only remove code.

<!-- 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/13897)
<!-- Reviewable:end -->
2016-10-23 12:21:11 -05:00
Scott Trinh
9af35e8a25 Partial fix for #12415: DOM interfaces 2016-10-23 10:18:12 -04:00
bors-servo
2772626d91 Auto merge of #13895 - lautat:dom-response-clone-step-1, r=KiChjang
Implement Step 1 of Response API Clone Method

<!-- Please describe your changes on the following line: -->
Implements first step of response API Clone method. Response Clone test expectations have been updated. Fixes issue #13888.

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

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

<!-- 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/13895)
<!-- Reviewable:end -->
2016-10-23 07:55:30 -05:00
Martin Robinson
0a13c05479 Update WebRender to get the latest changes 2016-10-23 13:20:36 +02:00
Atte Lautanala
65a7747864 Implement response API Clone step 1 2016-10-23 12:32:48 +03:00
bors-servo
bfd966f819 Auto merge of #13860 - canaltinova:text-emphasis-style, r=Manishearth,emilio
Implement parsing/serialization and gecko glue for text-emphasis-style

<!-- Please describe your changes on the following line: -->
Implementation of parsing/serialization and gecko glue for text-emphasis-style.

r? @Manishearth

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

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

<!-- 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/13860)
<!-- Reviewable:end -->
2016-10-22 19:47:07 -05:00
Nazım Can Altınova
6dc2c36310 Change KeywordValue to enum 2016-10-23 03:08:20 +03:00
bors-servo
62689ba64d Auto merge of #13882 - jeenalee:response-clone, r=jdm
Make Response's `Clone()` method to clone headers.

<!-- Please describe your changes on the following line: -->
This patch allows the response clone to have the same headers list as the original's. Previously, only the cloned response's headers guard was set to be the same as the original response's headers guard.

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

<!-- 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/13882)
<!-- Reviewable:end -->
2016-10-22 08:05:13 -05:00
Nazım Can Altınova
6102159a4b Implement parsing/serialization for text-emphasis-style 2016-10-21 21:25:17 +03:00
Jeena Lee
25cc87f226 Make Response's Clone() method to clone headers.
This patch allows the response clone to have the same headers list as
the original's. Previously, only the cloned response's headers guard was
set to be the same as the original response's headers guard.
2016-10-21 09:14:57 -07:00
bors-servo
776a1d9cac Auto merge of #13784 - TooManyBees:13363-check-script-enabled, r=Ms2ger
Issue 13363 - Step 1.2 of compiling event handler

<!-- Please describe your changes on the following line: -->
Adds the conditional to test that scripting is enabled in `EventTarget#get_compiled_event_handler`, and return `None` early if not.

Adds tests for "scripting enabled" and "scripting disabled" cases.

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

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

<!-- 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/13784)
<!-- Reviewable:end -->
2016-10-21 09:24:05 -05:00
bors-servo
28be83bd9a Auto merge of #13762 - frewsxcv:select-reset, r=Manishearth
Implement "reset algorithm" for `<select>`.

<!-- 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/13762)
<!-- Reviewable:end -->
2016-10-20 23:31:46 -05:00
Bobby Holley
b493565cc1 Stop ticking animations on non-dirty nodes during traversal. 2016-10-20 19:25:04 -07:00
Jesse Kipp
4f0ffbd1f6 Issue 13363 - Step 1.2 of compiling event handler
When compiling event handlers, check whether scripting is enabled
and early return None/null if not.

https://html.spec.whatwg.org/multipage/
webappapis.html#getting-the-current-value-of-the-event-handler

Issue 13363 - Fix spec for disabled scripting

The original spec for this PR was bad because it depended on the
DOM without scripting enabled to use Javascript to signal the test's
failure, so it could never fail.

Use an onerror handler on `window` where scripting is enabled, and
use an invalid string of JavaScript for the handler, to detect
whether or not the event handler is *really* being compiled or not.

Condense tests into a single HTML file

Yup, didn't even realize I could do that at the time.

Remove an unnecessary test
2016-10-20 11:08:44 -04:00
Corey Farwell
957e1d8e7a Make 'reset-form.html' test more granular. 2016-10-20 00:02:53 -04:00
Simon Sapin
742681a623 Add RwLock in more Arc’d things in stylesheets. 2016-10-19 19:55:05 +02:00
bors-servo
9e3cf3189b Auto merge of #13804 - canaltinova:gradient-parsing, r=Manishearth
Fix radial gradient's <size>/<ending-shape> parsing

<!-- Please describe your changes on the following line: -->
Parsing now handles sizes and shapes in various order.
I had to delete `EndingShape`'s parse implementation and mix it with `Position` in `parse_radial`. It became a bit complicated to read but I couldn't make it simpler.
r? @Manishearth

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

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

<!-- 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/13804)
<!-- Reviewable:end -->
2016-10-19 09:10:15 -05:00
Nazım Can Altınova
00244a2248 Add parsing tests for radial gradient 2016-10-19 16:35:02 +03:00
Manish Goregaokar
b0c50d8219 Fix style unit tests 2016-10-18 20:46:59 +05:30
Manish Goregaokar
6ca2c7ba77 Move parse_longhand macro to parse tests module 2016-10-18 20:42:17 +05:30
bors-servo
80447a79c4 Auto merge of #13614 - jdm:wptrunnerup3, r=Ms2ger
Upgrade wptrunner

This gets us back to a pristine local copy and allows us to start experimenting with webdriver tests.

<!-- 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/13614)
<!-- Reviewable:end -->
2016-10-18 08:15:11 -05:00
Josh Matthews
a9c2dda299 Revert wptrunner 496353104e7ee0969e316c12caf3dc2988efb8e8 2016-10-18 09:11:47 -04:00
Josh Matthews
d6318c8ea5 Upgrade wptrunner to 83fb6b727817a7dfeb24763d099aca95bc674b8e. 2016-10-18 09:11:46 -04:00
Scott Trinh
ab0ddf9040 Partial fix for 12415 2016-10-17 16:08:07 -04:00
bors-servo
a71b1e65be Auto merge of #13783 - frewsxcv:select-value, r=nox
Implement `value` property on `<select>`.

<!-- 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/13783)
<!-- Reviewable:end -->
2016-10-17 02:47:48 -05:00
Corey Farwell
a3d4d336b7 Implement value property on <select>. 2016-10-16 17:06:58 -04:00
bors-servo
4af21e3ae1 Auto merge of #13787 - lucasloisp:fix-12415/htmll-htmlo, r=emilio
Removed incorrectly exposed webidl interfaces

<!-- Please describe your changes on the following line: -->
I removed exposure in Window and Worker to some interfaces that
was not specified in the specification. Specifically:
- HTMLLinkElement.webidl
- HTMLMapElement.webidl
- HTMLMediaElement.webidl
- HTMLMetaElement.webidl
- HTMLMeterElement.webidl
- HTMLModElement.webidl
- HTMLObjectElement.webidl
- HTMLOListElement.webidl
- HTMLOptGroupElement.webidl
- HTMLOptionElement.webidl
- HTMLOutputElement.webidl

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they do not add any feature

<!-- 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/13787)
<!-- Reviewable:end -->
2016-10-16 11:45:28 -05:00
Lucas Lois
d764eef5a2 Removed incorrectly exposed webidl interfaces
I removed exposure in Window and Worker to some interfaces that
was not specified in the specification.
2016-10-16 13:29:47 -03:00
bors-servo
ecbdeb330f Auto merge of #11624 - g-k:wpt-cookie-path-tests, r=jdm
wpt cookie path tests

Adds wpt tests for the cookie path attribute.

Notes:

* I included polyfills for fetch and promise to get tests running.  Assuming these changes are OK, I'll remove them and add failure expectations so they don't get synced to w3c.
* I didn't work out a way to test sending cookies when the request and cookie paths exactly match (e.g. request path `/cookies/path/match-exact-page.sub.html` and cookie path `/cookies/path/match-exact-page.sub.html` will not send cookies to `/cookies/resources/echo-json.py`)
* test names could be clearer
* everything can be squashed to one commit

---

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #8756 (github issue number if applicable).

- [x] These changes do not require tests because they are tests (and if we test our tests do we need to test our test tests? ...)

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11624)
<!-- Reviewable:end -->
2016-10-16 09:48:47 -05:00
bors-servo
97bcd97ebd Auto merge of #13747 - scotttrinh:canvas-webidl, r=Ms2ger
Partial fix for #12415: expose Canvas interfaces

<!-- Please describe your changes on the following line: -->
Fix interface exposure per [the specs](https://html.spec.whatwg.org/multipage/scripting.html#2dcontext).

One lingering question I have is if [`CanvasPath`](https://html.spec.whatwg.org/multipage/scripting.html#canvaspath) needs to be added to `interfaces.worker.js` since it *is* exposed to the `Worker` environment. I tried adding it to the `interfaces.worker.js` list but it failed tests at https://github.com/servo/servo/blob/master/tests/wpt/mozilla/tests/mozilla/interfaces.js#L82

---
<!-- 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 contain a partial fix for #12415 (github issue number if applicable).

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

<!-- 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/13747)
<!-- Reviewable:end -->
2016-10-16 00:18:09 -05:00
Patrick Walton
7df456e8ac layout: Rewrite clipping to be a two-phase process that takes physical
border box positions and transforms into account.

Clipping region computation now follows a simple process: (1) in the
parent's coordinate system, parents store appropriate clipping regions
into children; (2) each child moves its clipping region to its own
coordinate system if necessary.

Because clipping region computation is now based on stacking-relative
border box positions and the `transform_rect` method, it can handle
`position: relative` offsets and more types of transforms, such as
scaling.

Improves etsy.com.

Closes #13753.
2016-10-15 14:18:48 -07:00
bors-servo
759185abe0 Auto merge of #13765 - pcwalton:relative-position-vertical-percentage, r=emilio
layout: Make percentages in `top` and `bottom` for relative positions relative to height, not width.

Improves etsy.com.

Closes #13760.

r? @mbrubeck

<!-- 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/13765)
<!-- Reviewable:end -->
2016-10-14 23:47:24 -05:00
Greg Guthe
ec68a990d0 test cookie path matching 2016-10-14 20:44:13 -04:00
bors-servo
697e197985 Auto merge of #13703 - Rafagd:my_changes, r=Ms2ger
Replacing Node.rootNode for Node.getRootNode.

- Changed the specification for the Node element to reflect the new standard.
- Changed the implementation of the NodeMethod.

I'm still waiting for some answers for the questions I've posted on #13699, but I'm already doing the pull request so I can get some feedback as well.

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

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

<!-- 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/13703)
<!-- Reviewable:end -->
2016-10-14 14:07:12 -05:00
Patrick Walton
d5443ee450 layout: Make percentages in top and bottom for relative positions
relative to height, not width.

Improves etsy.com.

Closes #13760.
2016-10-14 11:15:39 -07:00
bors-servo
0f4209644c Auto merge of #13759 - bholley:owning_handle, r=SimonSapin
Implement OwningHandle in style

I've also PR-ed this against upstream [1], but I don't want to block on that in case it takes a while to be merged / published.

[1] https://github.com/Kimundi/owning-ref-rs/pull/15

<!-- 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/13759)
<!-- Reviewable:end -->
2016-10-14 10:42:10 -05:00
Ms2ger
6eaef7c18a Update the bug number for Blob-XHR-revoke.html. 2016-10-14 14:18:04 +02:00
Ms2ger
e134871a95 Implement blob url support in the fetch stack. 2016-10-14 14:18:03 +02:00
Ms2ger
fc68e0a6ca Add a FileManager to FetchContext. 2016-10-14 11:30:09 +02:00
Ms2ger
53b6343f3c Add missing type to uniformOutOfBounds.html.ini. 2016-10-14 11:30:07 +02:00
Bobby Holley
d73047584c Implement OwningHandle in style.
I've also PR-ed this against upstream [1], but I don't want to block on that
in case it takes a while to be merged / published.

[1] https://github.com/Kimundi/owning-ref-rs/pull/15
2016-10-13 16:53:37 -06:00
Patrick Walton
18cf103ee0 layout: Don't try to vertically align absolutely positioned children of
table rows.

Improves http://reddit.com/r/aww.
2016-10-13 14:52:10 -07:00
Rafael Gomes Dantas
0074d2a7a8 Replacing Node.prototype.rootNode for Node.prototype.getRootNode. 2016-10-13 22:40:27 +01:00
Scott Trinh
df8030c50d Partial fix for #12415: expose Canvas interfaces 2016-10-13 16:08:50 -04:00
bors-servo
dc5dc5e614 Auto merge of #13737 - pcwalton:expand-matches, r=emilio
resources: Avoid using `:matches` in `presentational-hints.css`, since we don't support it.

Based on IRC discussions, this was determined to be an acceptable
stopgap in lieu of implementing `:matches`, which has complicated
precedence rules.

Improves Google search results.

r? @nox

<!-- 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/13737)
<!-- Reviewable:end -->
2016-10-13 12:51:53 -05:00
bors-servo
bbcc743bb4 Auto merge of #13732 - pcwalton:inline-block-vertical-align-overflow, r=notriddle
layout: Use the margin box for vertical positioning of `inline-block` fragments if `overflow` is not `visible` per CSS 2.1 § 10.8.1.

Additionally, this patch reverts the change introduced in #12642 in
favor of the spec-compliant behavior described above. This patch also
removes the `inline_block_overflow.html` reftest introduced in #3725, as
the behavior it expected contradicted CSS 2.1 (and in fact the test
fails in Gecko).

The changes that this patch makes to `input_selection_a.html` and
`input_selection_incremental_a.html` are necessary workarounds to make
the tests pass in light of the fact that Servo's UA stylesheet applies
`overflow: hidden` to `<input>` elements. I believe that the changes are
not necessary in other rendering engines because they hard-code
`overflow: hidden`-like behavior for `<input>` elements, while Servo
uses the actual CSS `overflow: hidden` behavior. As far as I can tell,
Servo's behavior is arguably more spec-compliant, but it remains to be
seen how Web compatible it is.

Improves the Google results pages.

Closes #13707.

r? @notriddle

<!-- 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/13732)
<!-- Reviewable:end -->
2016-10-13 12:06:44 -05:00
Patrick Walton
c25dd2adf6 layout: Use the margin box for vertical positioning of inline-block
fragments if `overflow` is not `visible` per CSS 2.1 § 10.8.1.

Additionally, this patch reverts the change introduced in #12642 in
favor of the spec-compliant behavior described above. This patch also
removes the `inline_block_overflow.html` reftest introduced in #3725, as
the behavior it expected contradicted CSS 2.1 (and in fact the test
fails in Gecko).

The changes that this patch makes to `input_selection_a.html` and
`input_selection_incremental_a.html` are necessary workarounds to make
the tests pass in light of the fact that Servo's UA stylesheet applies
`overflow: hidden` to `<input>` elements. I believe that the changes are
not necessary in other rendering engines because they hard-code
`overflow: hidden`-like behavior for `<input>` elements, while Servo
uses the actual CSS `overflow: hidden` behavior. As far as I can tell,
Servo's behavior is arguably more spec-compliant, but it remains to be
seen how Web compatible it is.

Improves the Google results pages.

Closes #13707.
2016-10-13 09:36:02 -07:00