Commit graph

18089 commits

Author SHA1 Message Date
Emilio Cobos Álvarez
abf8ced0bf
stylo: Support linear-gradients as background-image 2016-06-01 14:07:04 +02:00
bors-servo
8caa17a466 Auto merge of #11445 - mbrubeck:line-height, r=emilio
Support line-height in geckolib

r? @bholley

<!-- 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/11445)
<!-- Reviewable:end -->
2016-06-01 05:58:56 -05:00
bors-servo
3d7b17681d Auto merge of #11221 - izgzhen:blob-file-backend, r=Manishearth
Add file backend support for Blob and related

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [x] These changes fix #10851, related to #11131
- [x] These changes do not require tests because the implementation is partial and can't work alone

1. Add new backend to `Blob` and a `BlobImpl` struct to abstract multiple backends
2. Rewrite most interfaces of `Blob` to accommodate the change
3. Change the `read` behaviour of `FileReader`, considering the case when blob is file-backed and not cached

The design is still immature, welcome comments!

- [x] I used `DOMRefCell` to cache the bytes in `BlobImpl`, is it sound?
- [x] The interfaces (like `BlobImpl::get_bytes`) handle requests in a default-to-empty way when the inner `DataSlice` is not cached. It might be possible to handle this condition better.

<!-- 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/11221)
<!-- Reviewable:end -->
2016-06-01 05:09:21 -05:00
bors-servo
09e6f4ac54 Auto merge of #11428 - g-k:csstext, r=SimonSapin
csstext

- [x] These changes fix #4431.
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` reports one error for the `css_properties_accessors!` macro not having a spec link

```
$ git log -1 --format=oneline
91fb9bf1d3 fixup! implement cssText
$ ./mach build -d
   Compiling style v0.0.1 (file:///Users/greg/servo/components/style)
   Compiling gfx v0.0.1 (file:///Users/greg/servo/components/gfx)
   Compiling script v0.0.1 (file:///Users/greg/servo/components/script)
   Compiling layout_traits v0.0.1 (file:///Users/greg/servo/components/layout_traits)
   Compiling compositing v0.0.1 (file:///Users/greg/servo/components/compositing)
   Compiling glutin_app v0.0.1 (file:///Users/greg/servo/ports/glutin)
   Compiling constellation v0.0.1 (file:///Users/greg/servo/components/constellation)
   Compiling layout v0.0.1 (file:///Users/greg/servo/components/layout)
   Compiling servo v0.0.1 (file:///Users/greg/servo/components/servo)
Build completed in 0:05:11.475584
$ ./mach test-tidy --faster
Checking files for tidiness...
./components/script/dom/cssstyledeclaration.rs:386: method declared in webidl is missing a comment with a specification link
  Progress: 100% (12/12)
```

- [x] There are tests for these changes.  More CSSOM tests pass, but others fail that probably shouldn't:

* `./mach test-css tests/wpt/css-tests/cssom-1_dev/html/index-002.htm` and a bunch of the other tests in `/css-tests/cssom-1_dev/html/ crash when run individually
* `./mach test-css tests/wpt/css-tests/cssom-1_dev/html/cssom-cssText-serialize.htm` fails to strip a trailing semicolon (`left: 10px` vs `left: 10px;`)
* `./mach test-css tests/wpt/css-tests/cssom-1_dev/html/index-001.htm` shared shorthand values aren't coalesced (`margin: 20px` vs. `margin: 20px 20px 20px 20px`)
* `./mach test-css tests/wpt/css-tests/cssom-1_dev/html/cssstyledeclaration-csstext.htm` also crashes and fails for `color: red;` vs. `color: RED;`,  preserving declaration insertion order, whitespace in the value, and setting an unknown style property.

<!-- 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/11428)
<!-- Reviewable:end -->
2016-06-01 01:59:12 -05:00
bors-servo
5d86b9b2ae Auto merge of #11480 - rafaqtro:local_b, r=emilio
rename

<!-- Please describe your changes on the following line: -->
rename of page_fetch_complete and handle_page_fetch_complete for page_headers_available and handle_page_headers_available .

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

<!-- Either: -->
- [ ] 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11480)
<!-- Reviewable:end -->
2016-06-01 00:15:51 -05:00
bors-servo
f0b3d1e77d Auto merge of #11417 - stshine:flex-longhand-properties, r=mbrubeck
Support remaining longhand flexbox style properties for servo

- [x] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [X] There are tests for these changes

Add the remaining longhand CSS properties of flexbox for servo,
including `flex-wrap`, `flex-grow`, `flex-shrink`, `justify-content`,
`align-items`, `align-self` and `align-content`.

Tests for the remaining longhand properties are also enabled. Test for
default value of `align-self` is modified because the new default value
for this property is "auto" is current flexbox CR.

<!-- 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/11417)
<!-- Reviewable:end -->
2016-05-31 21:44:06 -05:00
bors-servo
27d1f18271 Auto merge of #11398 - pcwalton:webrender-viewport, r=glennw
script: Keep the DOM-side viewport up to date when scrolling happens in WebRender.

This happens asynchronously, just as it does in non-WebRender mode.

This functionality is a prerequisite for doing proper display-list-based
hit testing in WebRender, since it moves the scroll offsets into Servo
(and, specifically, into the script thread, enabling iframe event
forwarding) instead of keeping them private to WebRender.

Requires servo/webrender_traits#55 and servo/webrender#277.

Partially addresses #11108.

r? @glennw

<!-- 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/11398)
<!-- Reviewable:end -->
2016-05-31 20:54:29 -05:00
Zhen Zhang
43ad4ba585 Add file backend support for Blob and related
Changes include:
- Add BlobImpl to Blob, and related caching mechanism
- Expose ResourceThreads to document_loader, workerglobalscope, worker, and global
- Fix encode_multipart_form_data
- Other small fixes to accommodate the above changes
2016-06-01 09:47:07 +08:00
bors-servo
6b1088234b Auto merge of #11335 - szeged:blacklist, r=jdm
Add WebBluetooth GATTBlacklist support

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 --faster` 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 there are no webbluetooth tests yet.

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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11335)
<!-- Reviewable:end -->
2016-05-31 20:00:23 -05:00
bors-servo
d53507f747 Auto merge of #11193 - danlrobertson:pr-template, r=mbrubeck
Add link to git-hook tips in PR template

After a conversation with @aneeshusa on IRC starting [here-ish](http://logs.glob.uno/?c=mozilla%23servo#c430067), info about a [git hook](https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks) that runs `test-tidy` on commit (or push) was added to the wiki [here](https://github.com/servo/servo/wiki/Github-workflow#test-tidy-commit-hook). A suggestion was made to also add a link to this in the PR template.

<!-- 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/11193)
<!-- Reviewable:end -->
2016-05-31 19:06:42 -05:00
Glenn Watson
ff995d739c implement cssText 2016-05-31 19:32:30 -04:00
Matt Brubeck
cc4309d5fb Fix unused import warnings in geckolib 2016-05-31 16:17:43 -07:00
Matt Brubeck
ae2dec4e60 Factor out nsStyleCoord::copy_from 2016-05-31 16:15:06 -07:00
Rafael Quintero
71104c8619 rename of page_fetch_complete and handle_page_fetch_complete
rename

align
2016-05-31 17:27:59 -04:00
Patrick Walton
4e0fe22853 tests: Fix position_fixed_a.html to be standards compliant.
As written it failed in all browsers, including Servo with these
changes. The test is simply intended to test that fixed position
elements are correctly rendered out of flow. It is simplified to test
this.
2016-05-31 14:12:53 -07:00
Patrick Walton
a86f77e36d script: Keep the DOM-side viewport up to date when scrolling happens in
WebRender.

This happens asynchronously, just as it does in non-WebRender mode.

This functionality is a prerequisite for doing proper display-list-based
hit testing in WebRender, since it moves the scroll offsets into Servo
(and, specifically, into the script thread, enabling iframe event
forwarding) instead of keeping them private to WebRender.

Requires servo/webrender_traits#55 and servo/webrender#277.

Partially addresses #11108.
2016-05-31 14:12:51 -07:00
Pu Xingyu
f4b8f9766c Fixup for align-self and tests
This is a fixup for `align-self`, the computed value of which should now
properly inherit `align-items` value of its parent. Additional passed
tests is also removed from ini folder. Fixup for geckolib errors.
2016-06-01 00:15:28 +08:00
fokinv
a920e6d54e Add WebBluetooth Blacklist support 2016-05-31 17:05:45 +02:00
bors-servo
55b0bb027c Auto merge of #11330 - mitchhentges:1516-reference-test, r=KiChjang
Use floats to represent intended fixed position

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 --faster` does not report any errors
- [X] These changes fix #1516

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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11330)
<!-- Reviewable:end -->
2016-05-31 09:51:11 -05:00
bors-servo
d0f5a5fd74 Auto merge of #11520 - nox:runtime, r=tschneidereit
Bump rust-mozjs for the safe Runtime::new (fixes #11512)

<!-- 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/11520)
<!-- Reviewable:end -->
2016-05-31 08:40:43 -05:00
Anthony Ramine
88f8a22269 Bump rust-mozjs for the safe Runtime::new (fixes #11512) 2016-05-31 14:54:19 +02:00
bors-servo
963e28a4b6 Auto merge of #11521 - Ms2ger:SharedLayoutContext-url, r=nox
Remove SharedLayoutContext::url.

- [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 dead code removal

It is unused.

<!-- 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/11521)
<!-- Reviewable:end -->
2016-05-31 07:52:30 -05:00
Ms2ger
dc41c671e2 Remove SharedLayoutContext::url.
It is unused.
2016-05-31 14:47:17 +02:00
bors-servo
134fd18767 Auto merge of #11490 - emilio:linear-gradient, r=SimonSapin
layout: Fix display list construction of linear gradients

Fixes #11486

The previous code assumed that the diagonals of the elements were
perpendicular, which only happens with squares.

---
<!-- 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 #11486 (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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11490)
<!-- Reviewable:end -->
2016-05-30 17:28:34 -05:00
Emilio Cobos Álvarez
37d1c749aa
layout: Correctly calculate the angle for gradients with corners
The previous code assumed that the diagonals of the elements were
perpendicular, which only happens with squares.

tests: layout: Test linear gradient corners
2016-05-31 00:01:22 +02:00
bors-servo
5668a55ef4 Auto merge of #11503 - szeged:adapter_macro, r=jdm
Add macro to match the adapter

<!-- Please describe your changes on the following line: -->
Refactor WebBluetooth Adapter code.

---
<!-- 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 there are no webbluetooth tests yet.

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11503)
<!-- Reviewable:end -->
2016-05-30 14:39:34 -05:00
bors-servo
509c04cab8 Auto merge of #11495 - mitchhentges:9283-rect-no-comma, r=SimonSapin
Fix 9283 - space or comma separated rect() arguments

<!-- Please describe your changes on the following line: -->
Allow either commas or space to separate `rect()` arguments, but not both. Don't allocate unnecessary `Vec`

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

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

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11495)
<!-- Reviewable:end -->
2016-05-30 13:49:47 -05:00
Mitchell Hentges
41d26700b2 Allow either comma or space seperated css rect() 2016-05-30 20:13:18 +02:00
bors-servo
4a01659983 Auto merge of #11094 - nox:devtools, r=Ms2ger
Start implementing protocolDescription and canCurrentlyRecord in devtools

We can merge it but it doesn't make things work more than before. Mostly filing it for comments, especially the `description` method. If you feel it's too verbose I guess the way to go would be to properly formalise all types involved in the devtools server, but that's going to be a gigantic task.

<!-- 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/11094)
<!-- Reviewable:end -->
2016-05-30 13:00:57 -05:00
Anthony Ramine
50bca7319b Implement a dummy canCurrentlyRecord method in performance actor 2016-05-30 20:00:36 +02:00
Anthony Ramine
14653e2875 Implement a dummy protocolDescription in the root actor 2016-05-30 20:00:35 +02:00
Anthony Ramine
9a2955d4da Implement a dummy sources message in the thread actor 2016-05-30 20:00:32 +02:00
bors-servo
3eb9403b4d Auto merge of #11511 - Ms2ger:jsurl-crash, r=nox
Add a missing JSAutoCompartment to javascript url handling.

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

<!-- 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/11511)
<!-- Reviewable:end -->
2016-05-30 09:58:39 -05:00
Ms2ger
b6a7895396 Add a missing JSAutoCompartment to javascript url handling. 2016-05-30 16:33:31 +02:00
bors-servo
ef265b1c0b Auto merge of #11504 - servo:wpt-20160530, r=Ms2ger
Update web-platform-tests to revision bda2059150dca8ab47f088b4cc619fcdc1f262fa

<!-- 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/11504)
<!-- Reviewable:end -->
2016-05-30 07:43:00 -05:00
Ms2ger
7c4281f3da Update web-platform-tests to revision bda2059150dca8ab47f088b4cc619fcdc1f262fa 2016-05-30 14:04:50 +02:00
bors-servo
e63ded6d72 Auto merge of #11413 - nox:content-blocker, r=nox+jdm+Ms2ger
Support content blocking

This is @jdm's rebased work from https://github.com/servo/servo/issues/9749#issuecomment-211115746 with a small addition with regard to cross-origin blocking. Mainly opening this for review and for further discussions.

<!-- 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/11413)
<!-- Reviewable:end -->
2016-05-30 06:39:36 -05:00
Anthony Ramine
a09773e819 Handle origin when blocking content 2016-05-30 13:17:43 +02:00
Josh Matthews
074fc4a5e1 Process content blocker rules in the HTTP loader. 2016-05-30 13:17:42 +02:00
bors-servo
0ec30a6127 Auto merge of #11508 - nox:mozbrowser, r=Ms2ger
Fix permissions of mozbrowser and BrowserElementPrivileged (fixes #11498)

<!-- 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/11508)
<!-- Reviewable:end -->
2016-05-30 04:28:39 -05:00
Anthony Ramine
704646698f Fix permissions of mozbrowser and BrowserElementPrivileged (fixes #11498) 2016-05-30 11:23:42 +02:00
Josh Matthews
50fea8554e Read the content blocking rules and make them available to the HTTP loader. 2016-05-30 10:54:52 +02:00
Anthony Ramine
19b1cb4f07 Reorder dependencies in net_tests' Cargo.toml 2016-05-30 10:37:51 +02:00
Ms2ger
3535f3f6c2 Warn me when I try to sync upstream tests without requesting a commit.
This default invariably wastes my time, and I'm about the only person using
the sync argument.
2016-05-30 09:34:51 +02:00
fokinv
4cac7bccbf Add macro to match the adapter 2016-05-30 09:24:14 +02:00
bors-servo
b11648903b Auto merge of #11426 - DDEFISHER:master, r=emilio
Implement IsBuffer, IsFramebuffer and IsRenderbuffer for WebGLRenderingContext

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

<!-- 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/11426)
<!-- Reviewable:end -->
2016-05-29 20:03:56 -05:00
Daniel
c017438428 Implement IsBuffer, IsFramebuffer and IsRenderbuffer for WebGLRenderingContext 2016-05-29 17:08:10 -04:00
Mitchell Hentges
94a884b0ae use floats to represent intended fixed position, re-enable position_fixed test 2016-05-29 12:02:03 +02:00
bors-servo
e8e7c6545d Auto merge of #11491 - thiagopnts:master, r=Ms2ger
use USVStrings instead of DOMString for urls in Node and Document

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

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

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11491)
<!-- Reviewable:end -->
2016-05-28 14:37:16 -05:00
Thiago Pontes
766ad5e092 use USVStrings instead of DOMString for urls in Node and Document 2016-05-28 14:53:31 -04:00