Commit graph

19786 commits

Author SHA1 Message Date
Josh Matthews
86a0c45f87 Use named arguments for CGImports. 2016-08-24 13:47:26 -04:00
Josh Matthews
6492c090f1 Set up the iterator prototype as the prototype of iterator interfaces, and alias forEach to the entries method. 2016-08-24 13:47:24 -04:00
Josh Matthews
812a761abf Implement pair iterators in WebIDL interfaces. 2016-08-24 11:26:01 -04:00
Josh Matthews
34bb937aee Support value iterators in WebIDL interfaces. 2016-08-24 11:26:00 -04:00
Josh Matthews
221bc84693 Support multiple WebIDL interfaces being generated in the same output binding file.
Each interface gets its own module named ${Interface}Binding. Structs, enums, and callbacks
continue to use the root module of the binding file. If there is only one interface in the
file, we generate reexports for several public APIs and types so that existing DOM implementations
don't need any modifications. When multiple interfaces exist, the reexported names get the interface
name prepended (eg. FooWrap instead of Wrap).

As part of this work, stop glob-importing all DOM types in every generated binding and start generating
more targeted lists of relevant types based on the methods, members, etc. of WebIDL types that are in use.
2016-08-24 11:25:58 -04:00
bors-servo
49d483590e Auto merge of #12986 - upsuper:stylo-renaming, r=bholley
Use new name convention for Servo binding functions.

<!-- Please describe your changes on the following line: -->
This is the Servo part of [bug 1296173](https://bugzilla.mozilla.org/show_bug.cgi?id=1296173).

r? @bholley

---
<!-- 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
- [x] These changes do not require tests because renaming

<!-- 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/12986)
<!-- Reviewable:end -->
2016-08-24 08:16:05 -05:00
bors-servo
ccf79de66e Auto merge of #13014 - nox:dispatch, r=Ms2ger
Fix step 10 of eventdispatcher::dispatch_event (fixes #11609)

<!-- 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/13014)
<!-- Reviewable:end -->
2016-08-24 07:17:22 -05:00
Anthony Ramine
540fe15f17 Fix step 10 of eventdispatcher::dispatch_event (fixes #11609)
We consolidate steps 10-12 in a single function to expose less general-purpose
mutating methods on Event.
2016-08-24 13:54:44 +02:00
bors-servo
3c4a08c016 Auto merge of #12954 - GuillaumeGomez:dictionary_error, r=nox
Update rust-mozjs

<!-- 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/12954)
<!-- Reviewable:end -->
2016-08-24 06:19:37 -05:00
Guillaume Gomez
2f3f4a5bd6 Update rust-mozjs dependency 2016-08-24 12:56:49 +02:00
bors-servo
9d32088116 Auto merge of #13009 - bzbarsky:fix-proto-splice, r=Ms2ger
Use JS_SplicePrototype to set the right proto on the global, instead of JS_SetPrototype, since the latter will permanently deoptimize it.

<!-- 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's a performance improvement and I have no idea how to add performance tests.

<!-- 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/13009)
<!-- Reviewable:end -->
2016-08-24 02:10:33 -05:00
Boris Zbarsky
5341f852ce Use JS_SplicePrototype to set the right proto on the global, instead of JS_SetPrototype, since the latter will permanently deoptimize it. 2016-08-24 00:43:52 -04:00
bors-servo
a20d710261 Auto merge of #13005 - cjm00:starting-line-fix, r=Wafflespeanut
Changed first line of script to line 1 instead of line 0

Changed starting line of script to line 1 instead of line 0

---

- [ ] `./mach build -d` fails, but it fails on master on my system too due to some sort of problem with cygwin
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12996

<!-- 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/13005)
<!-- Reviewable:end -->
2016-08-23 23:04:31 -05:00
bors-servo
3993fde90a Auto merge of #12935 - shinglyu:layout_json, r=glennw
Fixed layout flow tree JSON serialization

<!-- Please describe your changes on the following line: -->
The second argument for the `emit_struct()` is the number of fields, if given `0`, the output JSON will always be empty.

This is used in `./mach run -d -Z trace-layout https://servo.org`, which will dump the layout flow tree into a `layout_trace.json` file for debugging.

This also unblocks https://github.com/servo/servo/issues/12675

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

<!-- Either: -->
- [x] These changes do not require tests because its a debugging tool, not critical for normal code path

<!-- 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/12935)
<!-- Reviewable:end -->
2016-08-23 21:43:13 -05:00
Chris McDonald
349d0e5108 Changed first line of script to line 1 instead of line 0 2016-08-23 16:44:56 -06:00
bors-servo
400c7e0324 Auto merge of #13002 - glennw:wr2-update-local-clipping, r=pcwalton
Update wr + shaders for local clip rect changes.

<!-- 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/13002)
<!-- Reviewable:end -->
2016-08-23 16:41:11 -05:00
bors-servo
d5913035ec Auto merge of #12981 - splav:inline_reconstruct#12602, r=notriddle
Inline reconstruct#12602

<!-- Please describe your changes on the following line: -->
This PR fixes two different issues:
1) In non-incremental layout mode if the inline node hasn't changes - the style pass was skipped, that leads to the corresponding ConstructionResult was not produced. When the parent was rebuilt, the child without the ConstructionResult was omited.
2) When the opacity was changed (or other style change, causing only repaint) for image (and others, producing only ConstructionItem) the damage is calculated only from children's flows, not from individual fragments. So for now, let's pretend we've newly constructed the ConstructionItem and thus need to rebuild the parent's flow.

---
<!-- 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 #12602 (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/12981)
<!-- Reviewable:end -->
2016-08-23 15:43:56 -05:00
Glenn Watson
b646c57230 Update wr + shaders for local clip rect changes. 2016-08-24 06:22:07 +10:00
Alexandrov Sergey
4bb9de4ea5 add tests for inline-block element opacity only change incremental reflow 2016-08-23 23:08:53 +03:00
bors-servo
6f22251e65 Auto merge of #12997 - servo:rustup, r=Ms2ger
Update Rust to 1.13.0-nightly (3c5a0fa45 2016-08-22)

<!-- 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/12997)
<!-- Reviewable:end -->
2016-08-23 10:09:49 -05:00
Anthony Ramine
e034117152 Update Rust to 1.13.0-nightly (3c5a0fa45 2016-08-22) 2016-08-23 17:05:41 +02:00
bors-servo
8e890be2c6 Auto merge of #12993 - servo:ua-stylesheets, r=nox
Move the user agent and user stylesheets to layout_thread.

<!-- 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/12993)
<!-- Reviewable:end -->
2016-08-23 08:34:04 -05:00
Ms2ger
992391d6ad Move the user agent and user stylesheets to layout_thread. 2016-08-23 15:33:47 +02:00
bors-servo
f863a7c317 Auto merge of #12990 - servo:geckolib-the-util-the, r=Wafflespeanut
Remove unused dependency on util from geckolib.

<!-- 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/12990)
<!-- Reviewable:end -->
2016-08-23 06:18:44 -05:00
bors-servo
f84e01ecaf Auto merge of #12985 - glennw:shader-cleanup, r=Manishearth
Remove some unused shaders.

<!-- 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/12985)
<!-- Reviewable:end -->
2016-08-23 05:20:56 -05:00
bors-servo
16a938aac4 Auto merge of #12968 - TyanNN:master, r=Ms2ger
Do not define Pipeline::setup_common on Windows

Fixes #12856
---
<!-- 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 #12856.

<!-- Either: -->
- [x] These changes do not require tests because it just removes the compiler warning

<!-- 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/12968)
<!-- Reviewable:end -->
2016-08-23 04:23:41 -05:00
bors-servo
eec56ca50e Auto merge of #12976 - Wafflespeanut:tidy_fixes, r=nox
A few minor cleanups in tidy

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

<!-- Either: -->
- [x] These changes do not require tests because it's just a cleanup

<!-- 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/12976)
<!-- Reviewable:end -->
2016-08-23 03:29:05 -05:00
bors-servo
fe09cb5504 Auto merge of #12921 - paulrouget:imgOnError, r=nox
Trigger image.onerror

---
<!-- 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 #12885 (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/12921)
<!-- Reviewable:end -->
2016-08-23 02:31:48 -05:00
Ms2ger
fe6b0b845d Remove unused dependency on util from geckolib. 2016-08-23 09:05:17 +02:00
bors-servo
f99929bee3 Auto merge of #12983 - glennw:update-glutin, r=larsbergstrom
Update glutin to get new OSMesa features

<!-- 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/12983)
<!-- Reviewable:end -->
2016-08-23 01:37:36 -05:00
Paul Rouget
a48cf1d215 Trigger image.onerror 2016-08-23 07:51:47 +02:00
bors-servo
581e69f8ba Auto merge of #12971 - tp6vup54:master, r=Wafflespeanut
Change the separator used in rust path into os.path.join

<!-- Please describe your changes on the following line: -->
Trying to solve #12961 and following the suggestion in it.
Already run test-unit and no red appeared.

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

<!-- Either: -->
- [x] These changes do not require tests because it's a cleanup of `mach`

<!-- 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/12971)
<!-- Reviewable:end -->
2016-08-23 00:39:55 -05:00
Xidorn Quan
68310780cc Use new name convention for Servo binding functions. 2016-08-23 13:33:52 +10:00
bors-servo
c5e81f8361 Auto merge of #12945 - Manishearth:bgarray, r=SimonSapin
Support multiple backgrounds in both servo and stylo

(Commits do not build individually, but split up for review)

These patches make all of the background- properties accept multiple values, and add the layout code to display them.

Still needs some cleanup, and some testing, but it seems to work.

r? @SimonSapin

<!-- 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/12945)
<!-- Reviewable:end -->
2016-08-22 22:09:23 -05:00
Glenn Watson
c03272a460 Remove some unused shaders. 2016-08-23 13:04:19 +10:00
bors-servo
27f59cc250 Auto merge of #12933 - upsuper:cssom-for-stylo, r=upsuper
Make GeckoDeclarationBlock refcounted

<!-- Please describe your changes on the following line: -->
This makes GeckoDeclarationBlock refcounted, so that it can share most of the logic Gecko currently uses for its existing `css::Declaration`. Although this is almost only useful for Gecko side, doing this in Servo side eliminates additional object allocation for holding it in the Gecko side.

Its Gecko side code change is in [bug 1296186](https://bugzilla.mozilla.org/show_bug.cgi?id=1296186). We may not want to land this before that part also gets reviewed.

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

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

<!-- 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/12933)
<!-- Reviewable:end -->
2016-08-22 21:12:23 -05:00
Glenn Watson
b2b7f9321c Update glutin to get new OSMesa features 2016-08-23 11:52:24 +10:00
bors-servo
1e10f8bbf7 Auto merge of #12915 - jeenalee:parse-headers, r=Manishearth
Include "content-type" in cors safelisted request headers.

<!-- Please describe your changes on the following line: -->

The changes in headers.rs will allow headers with "content-type" name to be classified as cors safelisted request headers, depending on its value according to [the Fetch spec](https://fetch.spec.whatwg.org/#cors-safelisted-request-header). As a result of this change, more request web platform tests pass, whose expected test results are updated with this commit.

There is possibly one TODO related to this PR:
- Figure out what `name/'invalid'` is in step 4 of the [Headers Delete method](https://fetch.spec.whatwg.org/#dom-headers-delete), and how to implement that.

---
<!-- 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 web platform tests for the changes already exist.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

This commit allows headers with "content-type" name to be classified as valid header name, depending on its value according to [the Fetch spec](https://fetch.spec.whatwg.org/#cors-safelisted-request-header). As a result of this change, more request web platform tests pass, whose expected test results are updated as well.

<!-- 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/12915)
<!-- Reviewable:end -->
2016-08-22 20:17:16 -05:00
bors-servo
785fcd5580 Auto merge of #12938 - nox:fontsan, r=larsbergstrom
Sanitise web fonts

<!-- 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/12938)
<!-- Reviewable:end -->
2016-08-22 19:20:19 -05:00
Xidorn Quan
2f4d6b5ce1 Make GeckoDeclarationBlock refcounted. 2016-08-23 09:42:12 +10:00
Alexandrov Sergey
512764b7da force style calculation/element construction for non-incremental mode 2016-08-23 01:45:18 +03:00
Alexandrov Sergey
3e73475d5b set HAS_NEWLY_CONSTRUCTED_FLOW flag for reconstructed flow'less inline element 2016-08-23 01:45:11 +03:00
bors-servo
7aa0071e9b Auto merge of #12956 - UK992:msvc-vcvars, r=metajack
Windows MSVC: Define vcvars in mach.bat

Define vcvars for msvc build, if they have not yet been. If vcvars not exist, show message that visual studio 2015 is not installed and where to download it.
Fixes #12948

<!-- 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/12956)
<!-- Reviewable:end -->
2016-08-22 16:52:15 -05:00
Alexandrov Sergey
fc549fcd2f calculate damage for opacity change 2016-08-23 00:26:14 +03:00
Ravi Shankar
33d7b3967e Some cleanups in tidy 2016-08-23 00:53:09 +05:30
Jeena Lee
cc7b1c508a Include "content-type" in cors safelisted request headers.
This commit allows headers with "content-type" name to be classified as valid header name, depending on its value according to [the Fetch spec](https://fetch.spec.whatwg.org/#cors-safelisted-request-header). As a result of this change, more request web platform tests pass, whose expected test results are updated with this commit.
2016-08-22 11:06:53 -07:00
Manish Goregaokar
466df01e71
Review fixups 2016-08-22 22:45:16 +05:30
Manish Goregaokar
a98c0fc037 Fill extra layers in background style struct before handing off to Gecko 2016-08-22 22:42:48 +05:30
Manish Goregaokar
12f272587e Add multiple backgrounds CSS reftest 2016-08-22 22:42:47 +05:30
Manish Goregaokar
c55911905b Fix unit test 2016-08-22 22:42:45 +05:30