Commit Graph

10178 Commits

Author SHA1 Message Date
Daniel Johnson
4a3e899ce4 servo: Merge #17083 - "javascript:" urls: execute in correct global scope (from danielj41:javascript-url-global-3); r=jdm
<!-- Please describe your changes on the following line: -->

#### Summary

This pull request makes `javascript:` urls execute in the correct global scope.

#### Example

```html
<script> var x = 4; </script>

<!-- this branch: logs "4" -->
<!-- master: undefined variable error -->
<a href="javascript:console.log(x)">link</a>
```

#### Questions

I'm new to servo and rust, so I'm unsure about these changes. In particular:
  * What's the appropriate place to evaluate the js?
    * I moved it to `handle_navigate`, but I'm not sure if this will catch all occurrences of `javascript:` urls. I also don't know if this will execute in the correct thread and the correct window.
  * What should I do with the result of the js evaluation?
    * I just ignored it. The previous behavior displayed it as the content of a new page load.

---
<!-- 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 #15147, #16718

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 40c8a6389afdad8fdffdf4a5616627f9a51b1822

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : da92cf37bf7b879cc6766a5bd816c943e8b18b17
2017-09-09 04:39:43 -05:00
Hiroyuki Ikezoe
1798e97abb servo: Merge #18426 - Transition shorthand fix (from hiikezoe:transition-shorthand); r=xidorn,boris
<!-- Please describe your changes on the following line: -->

https://bugzilla.mozilla.org/show_bug.cgi?id=1397122
---
- [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: c0c43da1f90afc37ac9d78bb7ef0f52cf02f2611

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 22db9b32cc829408d2a04a42941069c07a00ea13
2017-09-08 22:11:50 -05:00
Emilio Cobos Álvarez
8e336e2d7a servo: Merge #18423 - More stale todos (from emilio:more-stale-todos); r=nox
Just removing or rewording stale stuff.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8065eac0ebcadcdab0fd3649cf9e18c591d47ed6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6cf44e72d503154f38c84a8ba3b210ac2d18e0b6
2017-09-08 21:09:58 -05:00
Emilio Cobos Álvarez
fac392650a servo: Merge #18422 - style: Remove stale todo about handling scrollbars in viewport units (from emilio:stale-todo); r=bholley
This is effectively not going to happen, per
https://github.com/w3c/csswg-drafts/issues/1766

Source-Repo: https://github.com/servo/servo
Source-Revision: 9c0abfea239077bc490ed8a2d4a7c32ba782942d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6131b7b2610f82b5888e54841a02e09e59ba5a05
2017-09-08 16:30:26 -05:00
Manish Goregaokar
6089e4bd83 servo: Merge #18413 - Bump app_units; use from_f64_au (from Manishearth:bump-au); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2b737355397f7716510107fa514016332ff0c1f2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 66c2e0936379f196605bd0b2267f948f2cc592ec
2017-09-08 14:06:26 -05:00
P. Albrecht
7315212211 servo: Merge #18370 - An observer disconnected after a mark must receive the mark (from pylbrecht:observer); r=ferjm
<!-- Please describe your changes on the following line: -->
I worked on top of #18283 as suggested [here](https://github.com/servo/servo/issues/18284#issuecomment-326043873).

r? @ferjm

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

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 867d542261336d918177f8780ef915b7ec84e3ba

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 79691b6f8e710beeab4ca8ba260f4ee0869914a7
2017-09-08 13:04:26 -05:00
Fernando Jiménez Moreno
efe49af334 servo: Merge #18341 - stylo: Error reporting for unknown media features (from ferjm:bug1384225.media.errors); r=jdm
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [bug 1384225](https://bugzilla.mozilla.org/show_bug.cgi?id=1384225)

Source-Repo: https://github.com/servo/servo
Source-Revision: fef2cfde8cc6688c63cde1966b081a4698a5d977

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f16c453db1e3cdccb516562ef92dc4ebce3e9cf1
2017-09-08 11:14:51 -05:00
Anthony Ramine
7e59099817 servo: Merge #18418 - Simplify some task-related code (from servo:tasks); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 84ac9f384a0f32f5cc91a4df3983bff8e7c27e83

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ede53dc987d3d73161cf2f5aa4587637dfd74955
2017-09-08 06:01:22 -05:00
Emilio Cobos Álvarez
aa0b69d8df servo: Merge #18417 - style: Stop the grid shorthand from resetting grid-gap properties (from emilio:grid-gap-shorthand); r=heycam
Bug: 1387410
Reviewed-by: heycam
MozReview-Commit-ID: GxU9YuAUc00
Source-Repo: https://github.com/servo/servo
Source-Revision: 44072163eb563187c6c1d60c9ad5c004bdf65a66

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2d317d0c29c0d3c8a4459ae806f49d3ffbd0c300
2017-09-08 01:30:07 -05:00
Nicholas Nethercote
97caa198cc servo: Merge #18404 - Measure PropertyDeclaration better (from nnethercote:measure-PropertyDeclaration); r=heycam
This increases the style-sheets counts for gmail by about 30 MiB.

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

r? @heycam

---
<!-- 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 code is tested on the Gecko side.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8a3535b25bb7e13f7f3f1ba9a70f23083ee204de
2017-09-08 00:22:05 -05:00
Boris Chiou
607197f59b servo: Merge #18409 - Keep the unit of the serialization of specified::CalcLengthOrPercentage (from BorisChiou:stylo/calc/unit); r=emilio
For the serialization of specified values of calc(), we should keep the
units of absolute lengths, so use AbsoluteLength.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1396692](https://bugzilla.mozilla.org/show_bug.cgi?id=1396692).
- [X] These changes do not require tests because we have wpt tests for this already.

Source-Repo: https://github.com/servo/servo
Source-Revision: c8bc6ca4204ff521c35ba09bfdd6921e53801bc0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b7457e060f95f43ce85af9618c3daf64db32a259
2017-09-07 21:34:28 -05:00
Glenn Watson
8efbb5e854 servo: Merge #18416 - Update WR (clip optimizations, shadow fixes, angle update) (from glennw:update-wr-clips); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 2719e6570574f2f911a9bf2cc085deeadd4a9ac2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : eea0baa96d91574e5575ba41bd579c7a2b15970f
2017-09-07 19:10:57 -05:00
Anthony Ramine
4d2e9e52b8 servo: Merge #18411 - Rename VirtualMethods::attribute_is_mapped (from servo:rename-preshint-method); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: e9336b39a6c24037f8dce1bbc85f437af5f439d7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : abbaa026055a724705a5cbdf2e082d7de4309843
2017-09-07 15:56:01 -05:00
Anthony Ramine
376fd336af servo: Merge #18407 - Kill Runnable::is_cancelled ⚔️ (from servo:kill-is-cancelled); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 867a982fa71b26cec3788e1c825dd9addb9725f9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 034876ab5a86b1c17abb1ffd4e914566017e2096
2017-09-07 14:53:35 -05:00
Bobby Holley
3cdfd413f8 servo: Merge #18412 - Increase stack safety margin for stylo (from bholley:bump_style_stacks); r=bholley
https://bugzilla.mozilla.org/show_bug.cgi?id=1395708

Source-Repo: https://github.com/servo/servo
Source-Revision: 8868d2223dbb28b07ae1936095bc9ec644fe58a7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9c0a9b9c3fb42d8e1ab8b632255517d68d184f34
2017-09-07 13:52:48 -05:00
Fernando Jiménez Moreno
383681557d servo: Merge #18283 - User Timing API (from ferjm:user.timing.api); r=jdm
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #18109
- [X] There are tests for these changes. I enabled the peformance-timeline API WPTs but some of them are still failing because of implementation bugs or missing APIs (Resource Timing, for instance) the tests are dependent of. I'll file issues to fix them.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e93749941d2e3569c7c907832658c57ffb18c72

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4344c6a1c60484c840cbd3be4112d0c3a710b523
2017-09-07 12:45:46 -05:00
Anthony Ramine
82178ac83d servo: Merge #18406 - Start cleaning up HTMLMediaElement a bit (from servo:cleanup-media); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 3a7539a442a1672cd370c3188faf7f7803005222

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ce45228581bb79d8efdf528b7900ec0d7fa78152
2017-09-07 11:41:12 -05:00
P. Albrecht
4ea8d57560 servo: Merge #18405 - Handle dynamic font color change (from pylbrecht:dynamic.attribute.change); 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 #18371.

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 85167c8b7d2fb0e0e90283db750b601d789cd6ea

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 82f46bacb30cbb8519e1e11f7231234bf9969ad7
2017-09-07 10:24:16 -05:00
Emilio Cobos Álvarez
9c51220df8 servo: Merge #18408 - stylo: Don't add boundary characters to the fixups specified in ServoBindings.toml (from emilio:stylo-fixup-fix); r=upsuper
This allows adjusting the fixups for the patches in bug 1393230 when using
libclang 3.9.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0c2abbd7eac17da99f9a7a5dc61623a87600f1da

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d1044c74bc9ba054c119634328b023441915ca49
2017-09-07 08:51:10 -05:00
Anthony Ramine
9785ff665d servo: Merge #18393 - Make get_property_value unsafe (from servo:get-property-value-unsafe); r=emilio
This takes raw pointers and does things with the things they point to, and
circumvent a lock on a hash table.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5defc56ad5463ef80aa6ff8c306b1187fde2b0ed

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 248de6253a2bd3d7a697e36407571fc443d806af
2017-09-07 06:55:02 -05:00
Julian Seward
545e8c3dee servo: Merge #18397 - Add fallible append APIs for Vec and SmallVec (from julian-seward1:master); r=Manishearth
…r=manishearth.

<!-- 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: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./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: c68bc0c145db3ce2df49023c1525dbfc7d252153

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4a112bb31f31eaef4d39084f794b74ad24355518
2017-09-07 05:54:46 -05:00
Nicholas Nethercote
d7f8d7b8ae servo: Merge #18400 - Measure selectors (from nnethercote:measure-selectors); r=heycam
This patch adds measurement of Selectors within StyleRule. This requires
exposing the pointer within ThinArc.

The patch also adds measurement of the several CssRule variants, in order to
measure nested CssRules (and PropertyDeclarationBlocks) within them:
DocumentRule, MediaRule, PageRule, SupportsRule.

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

r? @heycam

---
<!-- 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 testing is in Gecko.

<!-- 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: 54cd23adb8e9c10f5b5ef2c6f19b5d1e0351a1c5

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c87b920a8a63ed2497bd3a7d1b11a2a43b123e74
2017-09-07 01:35:02 -05:00
Manish Goregaokar
25c55124f3 servo: Merge #18399 - stylo: Overflow fixes (from Manishearth:stylo-fuzzfix); r=emilio
r=emilio https://bugzilla.mozilla.org/show_bug.cgi?id=1397363 , https://bugzilla.mozilla.org/show_bug.cgi?id=1397439

Source-Repo: https://github.com/servo/servo
Source-Revision: 812cac78f0f4dba6063ba31d79b24667c5782b13
MozReview-Commit-ID: INsGSMiAIwl
2017-09-06 23:18:47 -07:00
Phil Ringnalda
5921d11c6e Backed out changeset 118a2b0b07c2 for assertion failures
MozReview-Commit-ID: 2pR2sdlejqW
2017-09-06 21:08:39 -07:00
Manish Goregaokar
897456d68a servo: Merge #18399 - stylo: Overflow fixes (from Manishearth:stylo-fuzzfix); r=emilio
r=emilio https://bugzilla.mozilla.org/show_bug.cgi?id=1397363 , https://bugzilla.mozilla.org/show_bug.cgi?id=1397439

Source-Repo: https://github.com/servo/servo
Source-Revision: 812cac78f0f4dba6063ba31d79b24667c5782b13

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 08a1b1b8f215f5373489fd55fdc651551237bff4
2017-09-06 17:47:28 -05:00
Nazım Can Altınova
2adfd71759 servo: Merge #18398 - stylo: Pass the @page values to precomputed pseudo element declarations (from canaltinova:at-page-rule); r=emilio
We were parsing @page rules correctly and serializing for cssom when we
we need. But we weren't actually including them to the pseudo element
declarations when we need to print a page.

Reviewed by emilio on Bugzilla.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1394035](https://bugzilla.mozilla.org/show_bug.cgi?id=1394035)

Source-Repo: https://github.com/servo/servo
Source-Revision: 094502e55f246b7c21d788385dda5c350ecf783a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4cdf6a525dab8d4e204dcc8e4218794e2a9e37b0
2017-09-06 16:40:33 -05:00
Josh Matthews
be6c10bc79 servo: Merge #18395 - Use a 1-element smallvec for selector lists (from jdm:selector-smallvec); r=SimonSapin
Profiling shows this reducing parsing time by a few milliseconds on the tp6 facebook case. The gtest benchmark with the same concatenated stylesheets also shows a significant improvement.

---
- [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: 5e321cadf3308d21c4bc7de5061c5fc08670c18a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 17ce55c55bfcc6ed09c0378fbb9832983625a776
2017-09-06 15:33:20 -05:00
Josh Matthews
9611377468 servo: Merge #18396 - Reduce duplication in generated ServoComputedData::to_declaration_block (from jdm:codesize); r=emilio
This reduces the size of the code in libXUL by 23.4k according to bloaty.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 609c1d31dcd6bfc910510c92a93a1df4b9a4be7a
2017-09-06 13:44:30 -05:00
Josh Matthews
52e444ade8 servo: Merge #18394 - Report more specific error for invalid filter properties (from jdm:filtererr); r=xidorn
Reviewed by xidorn in https://bugzilla.mozilla.org/show_bug.cgi?id=1386900.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: a7ea6741d38388bc562d5b1cb53e4bf581f6fafe

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f5ac669e2aab0e477c7dd36dcb0de4b17ef40553
2017-09-06 12:18:41 -05:00
Wei-Cheng Pan
18a2475e81 servo: Merge #18389 - Add a function to find out if a node has any ancestor that is pending for restyling (from legnaleurc:has_pending_restyle_ancestor); r=emilio
Fixes [Bug 1397168](https://bugzil.la/1397168).

<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix [Bug 1397168](https://bugzil.la/1397168) (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: 00867711b3b1a21d150cfdbf0d62e14945619392

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0e51d10864a5ba8d4cd8e6ac5233f1e847a661ed
2017-09-06 10:47:32 -05:00
Josh Matthews
6ac23c60d4 servo: Merge #18382 - Add CEReactions to element creation APIs (from servo:jdm-patch-1); r=cbrewster
This addresses https://github.com/whatwg/dom/pull/506.

---
- [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 they will exist upstream in the future.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4ada03febf2ecdae8220f174a80d22a49a232c5f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 28ab9c1ef0dcf993ab1764401ef3ac8a39f2bcad
2017-09-06 09:38:58 -05:00
Emilio Cobos Álvarez
e3cc6120a0 servo: Merge #18391 - style: Stop the cascade when only reset structs change (from emilio:cascade-stoph); r=heycam
From https://bugzilla.mozilla.org/show_bug.cgi?id=1395227

Source-Repo: https://github.com/servo/servo
Source-Revision: 9802214aba97287afa729c7efcac5e44316dc591

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f90777bddda7427e67330f0bb6be076fb5670184
2017-09-06 07:55:08 -05:00
Emilio Cobos Álvarez
de68b52814 servo: Merge #18390 - style: Properly apply the display fixup for ::before and ::after (from emilio:display-fixup-proper); r=heycam
Bug: 1393861
Reviewed-by: heycam
Source-Repo: https://github.com/servo/servo
Source-Revision: f5e23a3a903a8142ff8993418142b0554f580c7d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b7ca1afa4c67f2d2351d405811fd270f8ee3e93e
2017-09-06 03:28:56 -05:00
Nicholas Nethercote
6d21641910 servo: Merge #18387 - Measure SmallVecs in SelectorMap and InvalidationMap (from nnethercote:measure-smallvec); r=heycam
<!-- Please describe your changes on the following line: -->

This is another ~300 KiB on the Obama wikipedia page.

---
<!-- 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 testing is on the Gecko side.

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

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: 6051e5ed021b10f1ac89a2865765a46f4358f02f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9142d5b20e793eb3fc6aab892269befa8e23a3cf
2017-09-06 01:39:35 -05:00
Manish Goregaokar
b382487faa servo: Merge #18385 - Clean imports in hashglobe (from Manishearth:clean-imports); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: f29fd7757396e8763753215b8e7d82cb437f8f5a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 993da1529e834001ab485e10a08444485bf445df
2017-09-06 00:32:53 -05:00
Bobby Holley
197c575bed servo: Merge #18386 - Bypass the lock in get_property_value (from bholley:unchecked_cssom_get); r=upsuper
This measurably improves performance - see https://bugzilla.mozilla.org/show_bug.cgi?id=1355599#c21

Source-Repo: https://github.com/servo/servo
Source-Revision: e3568ba07abd74da560d38fc8074471e0c8394c6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c2a881e62f154e05e33f6d4a226cf88cb7790d3c
2017-09-05 23:20:55 -05:00
KuoE0
6ae95b4532 servo: Merge #18376 - Support None and NotSet for the fallback type of SVGPaint (from kuoe0:set-fallbacktype-to-none-when-the-fallback-color-of-context-property-is-none); r=xidorn
<!-- Please describe your changes on the following line: -->

We didn't set None and NotSet for the fallback type of SVGPaint, and it caused the fallback color is wrong when fallback color is empty or keyword `none`. So, we add the None and NotSet support for 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
- [X] These changes fix [Bug 1380590](https://bugzilla.mozilla.org/show_bug.cgi?id=1380590)

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because of the test cases already in Gecko.

<!-- 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: 1cf87a243a60cefd35bfea694ad442a6a9ab9d14

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 664b4c31496a280ab537bd1de4c5a3a765e3ff21
2017-09-05 21:43:02 -05:00
Imanol Fernandez
58e371a44d servo: Merge #18383 - Fix WebGL texture_float and texture_half_float detection on some GPUs (from MortimerGoro:float_textures); r=emilio
<!-- Please describe your changes on the following line: -->

Fix WebGL texture_float and texture_half_float detection on some GPUs. Some of them use different extension names.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 06e2b1eef144baaa7715d60811a03c2aa13b787d
2017-09-05 20:23:52 -05:00
Nazım Can Altınova
bd1b4a22ec servo: Merge #18373 - Don't unnecessarily construct gfxFontFeatureValueSet (from canaltinova:font-feature-vals); r=xidorn
This is reviewed by xidorn in bugzilla.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1394551](https://bugzilla.mozilla.org/show_bug.cgi?id=1394551)

Source-Repo: https://github.com/servo/servo
Source-Revision: 21c9ef3c6df5ce5886922334b8ea0f94fe83d79a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8be6904697ff4bc8b3527e437609a267e4a71aa7
2017-09-05 18:35:55 -05:00
Fernando Jiménez Moreno
f8e2183853 servo: Merge #18324 - Make Performance Timeline API work in Workers (from ferjm:performance.workers); r=jdm
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #18286 and #18308

This patch makes the Performance Timeline API work in workers, removes the exposure of `Performance.timing` in workers and sets the appropriate value of `Performance.now()` in workers.

Source-Repo: https://github.com/servo/servo
Source-Revision: 42de8e3d3fe8927b4730a7a42880eb46f743384a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7e56895f313831bf60157bd315e0de56f5ea9a6c
2017-09-05 17:00:26 -05:00
Martin Robinson
782581a0ff servo: Merge #18212 - Add support for position:sticky (from mrobinson:position-sticky); r=emilio
This leverages the position:sticky support in WebRender to bring basic
support for position:sticky in Servo. There are still some issues with
nested sticky flows as well as a few other corner cases. Tests are
imported from WPT and can be removed once we update to the latest
version.

<!-- 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: -->
- [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: f1fab036ab16910587c3b0d7813c78b49562f6d9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ed17c2d64b6561650774fa06bcca00b3b837eeb8
2017-09-05 15:36:47 -05:00
Wei-Cheng Pan
db698c7b45 servo: Merge #18271 - Propagate dirty bits after invalidation if needed (from legnaleurc:propagate_dirty_bits); r=emilio
<!-- Please describe your changes on the following line: -->

Follow up for [bug 1388298](https://bugzil.la/1388298).

---
<!-- 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: 122e49d516c7c22d8672e40929760b11682df272

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4fffb9b7e1bfcf8d42de1d61ea00b58bc82db41d
2017-09-05 14:18:52 -05:00
Emilio Cobos Álvarez
d5b2e6c551 servo: Merge #18384 - style: Don't waste a whole selector map for each class / id in the document (from emilio:invalidation-map-bloat); r=bholley
On top of #18375, only last commit needs review.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4721ef81fd7fb6ee15546a6abe140a66ce0280e8

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4ae2ca7c3f5142c06b900602fb49a00c8d601e4e
2017-09-05 12:51:17 -05:00
Jeremy Chen
7cc52b70f0 servo: Merge #18365 - stylo: Store location information for keyframe rules (from chenpighead:stylo-keyframe-location); r=upsuper,emilio
So far, we only store location info for the whole Keyframes block, not for each
of the keyframe rule. Without this info, the devtool can't present the rules
on the devtool panel properly.

In this patch, we collect the source location info while parsing keyframe selector.
The binding function, Servo_KeyframesRule_GetKeyframe, is also fixed (and renamed
to Servo_KeyframesRule_GetKeyframeAt to match the fix) to accept line and column
parameters from Gecko, so we can pass/set them with the source location from Servo.

This is the servo part of [Bug 1394994](https://bugzilla.mozilla.org/show_bug.cgi?id=1394994).

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1394994](https://bugzilla.mozilla.org/show_bug.cgi?id=1394994)

Source-Repo: https://github.com/servo/servo
Source-Revision: f648e12935cb94405a815216391f2527912ba4c2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 17bc4073e4d17b26e9d8c07a8ed4b996cfe1612f
2017-09-05 11:22:20 -05:00
Paul Rouget
2af5b6e579 servo: Merge #18363 - use cargo manifest path to find build.py (from paulrouget:fix_style_build); r=SimonSapin
Without this, build.py can't be found when servo is built as a dependency.

---
<!-- 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: 34e0805b125ae77b9c05ff096c4bbc8d8ffd8bfc

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4bd98e7af82ecd570e1248cc0119bfe980a48e13
2017-09-05 09:22:28 -05:00
Daisuke Akatsuka
c95d1b3824 servo: Merge #18380 - Make font-variation-settings animatable (from dadaa:make-font-variation-settings-animatable); r=birtles
<!-- Please describe your changes on the following line: -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1390702 r=birtles

---
<!-- 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 build-geckolib` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] `./mach test-tidy --stylo` does not report any errors
- [X] `./mach test-unit -p style` does not report any errors

<!-- Either: -->
- [X] There are tests for these changes. The test codes are patch part 4 in https://bugzilla.mozilla.org/show_bug.cgi?id=1390702

<!-- 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: 449ffb23acdd0098193458856de88ec4198724fc

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e8204425646e4d7334ef9fa825767d38a60f97ee
2017-09-05 06:20:33 -05:00
Ting-Yu Lin
338e5959f6 servo: Merge #18367 - style: Expose stylist::set_device() for gecko (from aethanyc:media-change-xbl-stylset); r=emilio
This was reviewed in bug https://bugzilla.mozilla.org/show_bug.cgi?id=1382078

Source-Repo: https://github.com/servo/servo
Source-Revision: e97f28e2a6db24b5cedb7f075fbab2f3a9f62ff2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 033711346ca7869678ded420b96cfc3705e7ba2a
2017-09-04 15:19:06 -05:00
Simon Sapin
c9fdb7e6d5 servo: Merge #18355 - Reduce usage of fmt in serialization and error reporting (from servo:no-fmt); r=emilio
`format!` and `write!` create a somewhat-heavyweight `Formatting` struct and use dynamic dispatch to call into impls of `Dispaly` and related traits. The former also allocates an intermediate string that is sometimes unnecessary.

I started looking into this from https://bugzilla.mozilla.org/show_bug.cgi?id=1355599, but I expect the impact there will be small to insignificant. It might be a slightly less so on parsing (error reporting).

Source-Repo: https://github.com/servo/servo
Source-Revision: c60dd53210745d9d8e7d3a5ca0310370a33553f4

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d58ba91509b981489459b891f7632d035a43a7de
2017-09-04 13:14:44 -05:00
Emilio Cobos Álvarez
d09d9b841f servo: Merge #18366 - style: Avoid dropping the other threads' TLS contexts too early (from emilio:fix-statistics-crash); r=bholley
When collecting style statistics, we have this path that moves the TLS contexts
to be dropped before the local context.

Since destroying the TLS context runs the sequential task queue, that means that
sequential tasks would be executed sooner than usual, before we drop the main
thread TLS context.

Since we have that reuse of the main thread context's bloom filter, and some
tasks end up creating one (Servo_StyleSet_GetBaseComputedValuesForElement, I'm
looking at you), we may borrow the bloom filter before we're done with it on the
traversal code path.

This was hitting on YouTube, when DUMP_STYLE_STATISTICS was used.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4608955949aa20a2d2ed251b56e9a5a3cf5681c5

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f513b99215cc4ec59ad7cf39d6d00fd9a9608419
2017-09-04 11:54:15 -05:00
Anthony Ramine
ba8fcfb777 servo: Merge #18368 - Do not NIH queueing a task to fire an event in htmlmediaelement (from servo:media-event-cleanup); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 293ffa06daa5cd2c3588833af3ed211ed3935d36

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cb549d0c7abb24f6e66e0a27d282f01374378092
2017-09-04 09:20:53 -05:00
Emilio Cobos Álvarez
098892c04d servo: Merge #18359 - style: Move color to use predefined_type (from emilio:bye-color-mako); r=nox
I want to play with autogenerating style structs, and color is the smallest
struct out there.

However, moving it out of the mako file is a requirement. This patch does that.

Source-Repo: https://github.com/servo/servo
Source-Revision: bcddb19eb8642664386ed83d7734f16db517d0cf

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 465baff883872239eceb415653521d6e61c49e02
2017-09-04 05:01:39 -05:00
Mantaroh Yoshinaga
a5ce79c1b7 servo: Merge #18364 - Don't allow interpolating SVGPaintKind::None (from mantaroh:svgpaintkind-interpolation); r=birtles
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1396483

PR #18103 disallowed interpolation between fill:none and fill:none, but that change was regressed by the refactoring in PR #18239.
This patch restores the intended behavior, disabling animation of SVGPaintKind::None.

<!-- 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: -->
There are already these tests in dom/smil/tests of gecko, this PR will enable these tests.
For detail, see https://bugzilla.mozilla.org/show_bug.cgi?id=1396483 .

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 95705d1eeb326353da770e8b8fd2887a8a3b07e1
2017-09-04 03:02:08 -05:00
Xidorn Quan
56f4b67740 servo: Merge #18362 - Update binding files from autoland (from upsuper:update-bindings); r=heycam
Updates the in-tree binding files from autoland.

Source-Repo: https://github.com/servo/servo
Source-Revision: c98b362e65e291f64b2f4692ab84befce0dad517

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3d2d6af334ee69c732f0a7d8a1e630814f985685
2017-09-03 21:57:22 -05:00
toidiu
d8b57ef9d7 servo: Merge #18361 - change function signature to get type name via intrinsics (from toidiu:ak-18354); r=emilio
<!-- Please describe your changes on the following line: -->
change function signature to get type name via intrinsics

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because stated in the PR that it was not required

<!-- 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: 887b011288f832634eed634769b5d2ec48f0e24d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 15e173afe75d74728204397ee807e97233bef897
2017-09-03 16:28:25 -05:00
Anthony Ramine
697a32a1cb servo: Merge #18358 - Properly change the kind of the given attribute in SetAttributeNode (from servo:change-attr-kind); r=emilio
Fixes #18357.

Source-Repo: https://github.com/servo/servo
Source-Revision: 096912101b2ea8702a0337aae092241b930d6b5d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3136bd03aa4f44533fce9a3d705b5b3eae03ccbf
2017-09-03 13:05:00 -05:00
tigercosmos
4ec0447af3 servo: Merge #18353 - add note on windows build (from tigercosmos:readme-w); r=larsbergstrom
<!-- Please describe your changes on the following line: -->
add note on windows build to `README.md`
based  on #18291
@larsbergstrom, please check, thanks.
---
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).

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

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 49a9316a8c47a613dd863487010ad262624063f4
2017-09-02 11:31:49 -05:00
Nazım Can Altınova
54d4464f85 servo: Merge #18349 - stylo: Remove calc support from media queries (from canaltinova:media-calc); r=emilio
Gecko currently doesn't support calc inside media queries. We should
also remove the calc support temporarily for parity with gecko. We can
add this support back in next releases.

Reviewed by emilio in Bugzilla.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1390339](https://bugzilla.mozilla.org/show_bug.cgi?id=1390339)

Source-Repo: https://github.com/servo/servo
Source-Revision: f36580cb9187b99793f89cf60e5989979f83efca

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6d5eb9d9f39814b92de7c50251c377258e3fce36
2017-09-02 09:37:11 -05:00
Mateusz Naściszewski
eb62583672 servo: Merge #18351 - Refactor .sort_by() calls to use .partial_cmp() (from mateon1:profile-sort_by-partial_cmp); r=emilio
Changes the closures passed to `sort_by` in this file with a simpler, and more correct version.

Previously, potential NaNs in the array would float to the top. Either way, the program would crash, as the `get_statistics` function asserts the array it gets is sorted, which always fails with a NaN.
Because of that, this change should not affect functionality.

---
<!-- 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 statistics collected by --profile should not have NaN values in the first place.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0bd6a1c9d264a9bcbf5344d87ac32cbb1e546b74
2017-09-02 03:54:49 -05:00
Emilio Cobos Álvarez
f5628648d5 servo: Merge #18350 - stylo: Expose -moz-system-metric and -moz-empty-except-children-with-localname (from emilio:ship-system-metric-stuff); r=bholley,manishearth
They don't have the flag in Gecko.

Though I wonder if we could unship them from non-UA sheets.

Bug: 1396048
Reviewed-by: bholley
MozReview-Commit-ID: LGzGDjCZpJC
Source-Repo: https://github.com/servo/servo
Source-Revision: e0e09538fa97f5568c52266ee969ec21432e72f7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7a0bfa8436dd0ed55629a0b07de4d12ec38f0b3b
2017-09-02 02:49:29 -05:00
Anthony Ramine
1f6d0698cc servo: Merge #18340 - Use the better TokenStream API in dom_struct (from servo:dom-struct-errors); r=SimonSapin
Before:

```rust
error[E0412]: cannot find type `SourceBuffer` in this scope
  --> /Users/nox/src/servo/components/script/dom/mediasource.rs:25:1
   |
25 | #[dom_struct]
   | ^^^^^^^^^^^^^ did you mean `SourceBufferList`?
```

After:

```rust
error[E0412]: cannot find type `SourceBuffer` in this scope
  --> /Users/nox/src/servo/components/script/dom/mediasource.rs:28:39
   |
28 |     source_buffers: DOMRefCell<Vec<JS<SourceBuffer>>>,
   |                                       ^^^^^^^^^^^^ did you mean `SourceBufferList`?
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 32b04b3f517cebcba34a23e6930860bbedb1431b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 32ff4a9079c10adbd780779a48557ac24d00427d
2017-09-02 00:48:29 -05:00
Brad Werth
f99f595da8 servo: Merge #18344 - Change selector::to_css function to handle combinators in between universal selectors (from bradwerth:selectorSerialize); r=SimonSapin
https://bugzilla.mozilla.org/show_bug.cgi?id=1391169
https://reviewboard.mozilla.org/r/172368/

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e1c350aa1d8bbaf896f69e5141125a627999b93f
2017-09-01 23:41:10 -05:00
Glenn Watson
db2d96787b servo: Merge #18339 - Update WR (mac driver crash, box shadow sharing) (from glennw:update-wr-misc); r=jdm
* Works around a driver / kernel crash on some mac machines.
* Allow more sharing of box shadow and clip render tasks.
* Some shader tidy ups.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e3c8dee71214b5244431de64f65b5a1f71c0108

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e2eeb653097659da42e2c3daf4d7139172785bbf
2017-09-01 21:42:28 -05:00
Joone Hur
ab50beb8a1 servo: Merge #18242 - Implement Ellipse Canvas 2D API (from joone:ellipse); r=jdm
This patch needs to update rust-azure to 0.21.0.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #17598

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 3a4b98ad38214495ac0f1f1aa1052f0c583ffe5c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5650f24356c24ee80c4ca4e9560c75c6a6813ccd
2017-09-01 20:25:57 -05:00
Manish Goregaokar
b0873633b7 servo: Merge #18335 - stylo: Compute font-size calcs against appropriate base size (from Manishearth:stylo-calc-anim); r=birtles
r=birtles https://bugzilla.mozilla.org/show_bug.cgi?id=1394302

Source-Repo: https://github.com/servo/servo
Source-Revision: 60daf543524e6c5e6dfb5e309ceae638425f010d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f8d2fd56656732f8ae4512d2718d32cfa7f21871
2017-09-01 19:17:03 -05:00
Xidorn Quan
08057f5e1e servo: Merge #18336 - Parse at-rule without block in two stages (from upsuper:two-stage-at-rule); r=SimonSapin
This is the Servo side change necessary for servo/rust-cssparser#180.

----

This also pulls in other changes from cssparser 0.20.0.

Source-Repo: https://github.com/servo/servo
Source-Revision: f2e5b4992658db504db0f6176d3bfa580ced6fd0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9c1767c636a6585ed1d552ae8c26376547d2f2fc
2017-09-01 17:56:57 -05:00
Manish Goregaokar
5617e0da7b servo: Merge #18334 - Add fallible hashmaps from HashGlobe for stylo (from Manishearth:hashglobe); r=emilio,Gankro
HashGlobe code is r=emilio,Gankro

integration code is r=emilio from https://bugzilla.mozilla.org/show_bug.cgi?id=1393656

Source-Repo: https://github.com/servo/servo
Source-Revision: ac7cf536927a42a5cece379c53d6f39813a77d71

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cfe64a9acc5c8dbb187af4eae03510c18bdbe9c4
2017-09-01 16:09:53 -05:00
Mateusz Naściszewski
a5d9312ef3 servo: Merge #18272 - Correct "is sorted" check in profile statistics (from mateon1:fix/profile-sorted-assert); r=emilio
<!-- Please describe your changes on the following line: -->
Correct the debug_assert check for whether or not statistics collected by the --profile flag are sorted.
I'm not sure how I could add a test for this change, and whether that is necessary.

I also wonder if it makes sense to replace the sort_by calls (currently using explicit comparisons) in this file with something like
```
data.sort_by(|a, b| a.partial_cmp(b).expect("no NaN in collected statistics"))
```

---
<!-- 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 #18270 (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: 2550b47decbc9876d96a459e399658ca54998bda

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : df9342b1e4cd360292fb3acb63192eeef209064c
2017-09-01 15:04:56 -05:00
Simon Sapin
ca59d5a7bd servo: Merge #18327 - Upgrade to rustc 1.21.0-nightly (7eeac1b81 2017-08-30) (from servo:rustup); r=nox
Fix this error in the new Rust Nightly:

```rust
   Compiling script v0.0.1 (file:///home/simon/servo2/components/script)
error[E0599]: no method named `trace` found for type `&fn(&dom::node::Node) -> u16` in the current scope
   --> /home/simon/servo2/components/script/dom/treewalker.rs:464:10
    |
464 | #[derive(JSTraceable)]
    |          ^^^^^^^^^^^
    |
    = note: JSTraceable is a function, perhaps you wish to call it
    = help: items from traits can only be used if the trait is implemented and in scope
    = note: the following trait defines an item `trace`, perhaps you need to implement it:
            candidate #1: `dom::bindings::trace::JSTraceable`

error: aborting due to previous error

error: Could not compile `script`.
```

~I’ve tried to reproduce it in a minimal test case, but `impl<A, B> SomeTrait for fn(A) -> B` did not apply for `fn(&u32) -> u32` even on Rust 1.19.0 stable. So I don’t know what changed.~ This is very likely https://github.com/servo/servo/pull/18327.

Source-Repo: https://github.com/servo/servo
Source-Revision: fd833d9f18cd9196502b9768ab0ac8c1498b2f68

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6abcf458330540d23b69aad3d41f2fe4429fba5a
2017-09-01 13:54:08 -05:00
Henri Sivonen
7d07e19274 servo: Merge #18347 - Take a u8 pointer and a length instead of nsACString pointer from Gecko (from hsivonen:ptr-and-length-from-gecko); r=SimonSapin
This is the Servo side change of [bug 1354989](https://bugzilla.mozilla.org/show_bug.cgi?id=1354989).

- [ ] `./mach build -d` does not report any errors

Fails for unrelated reason when building `servo-skia`.

- [x] `./mach test-tidy` does not report any errors

- [x] These changes do not require tests because this changes the Gecko interface and m-c not burning is the test.

Source-Repo: https://github.com/servo/servo
Source-Revision: d8598b5abfa92f16357b7afa40b00748e94949d5

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : a795870f3d071cab5dda51748fdd7ea63d062742
2017-09-01 12:25:54 -05:00
Emilio Cobos Álvarez
7b31481d83 servo: Merge #18342 - style: Remove the for reconstruction traversals (from emilio:die-forreconstruct-die); r=bholley
One less hack, a few more to go.

Bug: 1374235
Reviewed-by: bholley
MozReview-Commit-ID: 6katL1EGn2U
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>

Source-Repo: https://github.com/servo/servo
Source-Revision: 876b70b02c7a3c8aad26b26dcbcfddaa5c747493

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c421be7da780736f47930015ff021477f04fcef7
2017-09-01 08:56:58 -05:00
Anthony Ramine
ffbe57a2b5 servo: Merge #18314 - Use absolute paths in the event handlers macros (from servo:macro-imports); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 15c57e8d54f7aae99a42644333060aabaee1c989

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 213b14262265a69e3359b554a11c85ea56789e5b
2017-09-01 05:51:00 -05:00
KuoE0
71958ba149 servo: Merge #18337 - Make the order of rules in DevTools be the specificity order (from kuoe0:make-the-order-of-rules-in-DevTools-be-the-specificity-order); r=emilio
We insert rules with any important declaration into rule tree twice,
one for the normal level and another for the important level. And
when we fetch them from rule tree, we skip the important one to
make the order be the specificity order.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because test cases already in gecko

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : eb040e38caa5689211498d7d7c53f9bbc24d52ed
2017-09-01 04:15:21 -05:00
Imanol Fernandez
c6b7171c37 servo: Merge #18332 - Reuse WebGL ImageKeys after a resize (from MortimerGoro:webgl_reuse_image); r=glennw
<!-- Please describe your changes on the following line: -->

WebRender does now support resizing with the same image key

---
<!-- 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: 3dceb111587178cdff60041d76a2544f275e6371

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : dd9777068874e85b67981e635a4931442d679631
2017-09-01 01:22:38 -05:00
Nazım Can Altınova
1583bd4cd6 servo: Merge #18321 - Properly set default direction of prefixed linear gradients (from canaltinova:default-linear-gradient); r=Manishearth
The default linear gradient direction is `to bottom`. This correspondes to
`top` keyword in prefixed linear gradients. We should preserve the default value.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1395189](https://bugzilla.mozilla.org/show_bug.cgi?id=1395189)

Source-Repo: https://github.com/servo/servo
Source-Revision: ff30f582a02133074a92786af256d09325bc9d22

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 60e2b459cad478cb42599b46db4a7aa944bbb411
2017-08-31 23:18:23 -05:00
Glenn Watson
1c314cf843 servo: Merge #18322 - Update WR (font instance API) (from glennw:update-wr-fonts-2); r=emilio
WR now has a concept of font templates and font instances. This
makes the WR font interfaces closer to Cairo and Gecko, and also
makes some future performance optimizations possible.

A font template is the font family, and data backing the font.
A font instance is a reference to a font template and per-instance
options, such as font size, anti-aliasing settings etc.

To update Servo in a minimally invasive way, I added a new font
cache call, that creates a font instance. This means that when
a font is created, and doesn't exist in the cache there are now
two calls to the font cache thread. We could refactor the font
cache to make this work in one call, which we should do in the
future. However, refactoring the font cache is a large chunk of
work by itself. The extra call is only when a font doesn't already
exist in the font context cache, so it should have minimal
performance impact.

Source-Repo: https://github.com/servo/servo
Source-Revision: f7d238d1f38e4d6798cf2f18d72e61b3dd35bd2c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c85ae1d0c1a530c0fbe27fb76ba4b30f5c345f26
2017-08-31 21:59:30 -05:00
Connor Brewster
9def490de8 servo: Merge #18317 - Enable Custom Elements by Default (from cbrewster:custom_elements_enable); 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 #9372 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because enabling pref flag.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : daf04f94252c04ecacc3915292d7a96632d79d88
2017-08-31 19:57:29 -05:00
Emilio Cobos Álvarez
954872eac4 servo: Merge #18330 - stylo: Add a special case for marking something as dirty from invalidation code (from emilio:invalidation-stuff); r=bholley
Source-Repo: https://github.com/servo/servo
Source-Revision: 09df9c4316779899c7820cac56ecd18793f1f4a3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 822c8f272e04b9894d6a564686880a1256d95481
2017-08-31 14:14:15 -05:00
Anthony Ramine
455e5aed2c servo: Merge #18301 - Use generics for the vertical-align property (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 174c37fddd3ba66797efdb8067c24003f32c04a7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7b7ad6295863b794e6abd64a5c86eb6eecdf2370
2017-08-31 09:41:50 -05:00
Simon Sapin
118c6485b6 servo: Merge #18325 - Switch back to pinning Rust by Nightly date instead of commit hash… (from servo:rustup-toolchain); r=nox
… this time using a `rust-toolchain` file compatible with rustup: https://github.com/rust-lang-nursery/rustup.rs/#the-toolchain-file

And upgrade to rustc 1.21.0-nightly (c11f689d2 2017-08-29)

----

Now if both `system-rust` and `system-cargo` are set to `true` in `.servobuild`’s `[tools]` section, and the corresponding `rustc` and `cargo` binaries are in fact rustup’s wrappers, then rustup will use the correct version based on `rust-toolchain`.

CC https://github.com/servo/servo/issues/11361

Unlike https://github.com/servo/servo/pull/17927, this does not make mach use rustup directly. That should wait until https://github.com/rust-lang-nursery/rustup.rs/issues/1099 is fixed.

Source-Repo: https://github.com/servo/servo
Source-Revision: c4800a6c83e6fdabaf7c4eff70a24487d16f18ff

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e3d41159bc4670ea990630e5342fe9b663a79fe5
2017-08-31 07:47:34 -05:00
Anthony Ramine
07880c5a6c servo: Merge #18309 - Update the WebIDL parser (from servo:webidl); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ed9fb55366845fdcfae9a7418acd73052a0d4757

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2e81fbb314f2da761d3fc8993ae438bc8d8589e8
2017-08-31 04:57:12 -05:00
Jeremy Chen
b953c8375e servo: Merge #18319 - Do not skip parent display-based style fixups for NAC that is not a NAC root (from chenpighead:stylo-fixup-display-for-NAC); r=heycam
Stylo is currently skipping parent display-based style fixups for all NAC,
whereas we probably only want to do this for NAC roots.

In this patch, we ensure that we skip it for NAC roots, and pseudo-elements,
but not other NAC.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1359303](https://bugzilla.mozilla.org/show_bug.cgi?id=1359303)

Source-Repo: https://github.com/servo/servo
Source-Revision: cb4ce934299ce97499c766f1b09bd9f1303b5e38

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 765a1f5ed553c6c417560f6ecf497ecfb5ccb376
2017-08-31 03:10:23 -05:00
Xidorn Quan
9bab6676fc servo: Merge #18320 - Rewrite CounterStyleOrNone::from_gecko_value to use fewer binding functions (from upsuper:counter-style-clone); r=heycam
This is the Servo side change of [bug 1393189](https://bugzilla.mozilla.org/show_bug.cgi?id=1393189).

Source-Repo: https://github.com/servo/servo
Source-Revision: 12ca7d9e96ebeddd040b1eceb82f80ddd780c294

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 631f3c8fbbaa09d2a156227f53ee7131147197c1
2017-08-31 01:31:52 -05:00
Nicholas Nethercote
3cb51cb410 servo: Merge #18310 - Measure memory usage of Stylo's Rule Tree (from nnethercote:bug-1394729); r=heycam
<!-- Please describe your changes on the following line: -->
This is for https://bugzilla.mozilla.org/show_bug.cgi?id=1394729, which was r=heycam.

---
<!-- 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 tests exist in Gecko.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 35eab4a64c3f287a38c2b6fcdbe91276482b4001
2017-08-31 00:31:31 -05:00
Mantaroh Yoshinaga
3f453dfcd4 servo: Merge #18210 - Skip adding/accumulating ClipRect values which corresponding rect offset is auto (from mantaroh:clip-interpolation-fix); r=nox
<!-- Please describe your changes on the following line: -->
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1390352

This patch will skip adding/accumulating the values which corresponding rect offset is auto, and  make Servo_AnimationValues_ComputeDistance return negative value instead of 0.0 when the function fails to distinguish its failure.

---
<!-- 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: -->
There are already these tests in dom/smil/tests of gecko, this PR will enable these tests.
For detail, see https://bugzilla.mozilla.org/show_bug.cgi?id=1390352.

<!-- 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: 5624c0e3f16e0057bb228627eaf9018ef88e7786

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b387ca2a23f2e20f5344e409ec0f14f9e8457163
2017-08-30 23:21:49 -05:00
Imanol Fernandez
e5643c96fd servo: Merge #18316 - Update rust-webvr to 0.8 (from MortimerGoro:rust_webvr_0.8); r=jdm
<!-- Please describe your changes on the following line: -->

The new rust-webvr version includes features like multiview, opaque framebuffers and multiple layer rendering support that will land in separate PRs.

It also splits rust-webvr traits to a separate crate. This allows much faster compilations when using local cargo replaces.

---
<!-- 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: 9a9866117a5e2a7d0e5de56ca70afec62f8b690f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cc8489ab957f4e455672880b15c1a74f89ba8f93
2017-08-30 22:08:31 -05:00
Emilio Cobos Álvarez
988faf2428 servo: Merge #18311 - Revert "Rewrite CounterStyleOrNone::from_gecko_value to use fewer bin… (from emilio:backout-counter-style); r=emilio
…ding functions"

This reverts commit 65c2047df21d0a4a6bf70096a51d701bf0dd7eb0.

Closes #18306

Source-Repo: https://github.com/servo/servo
Source-Revision: 19cbea23a869cfb6d62d95f36c343e7c287129b9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2098ddcd09a90138496e0d980e81eb9fdc9bb658
2017-08-30 07:24:19 -05:00
Boris Chiou
20b3ff88fa servo: Merge #18234 - stylo: Bug 1390039 - Implement compute_distance for mismatched transform lists (from BorisChiou:stylo/transform/distance_mismatch); r=birtles,nox
Implement ComputeSquaredDistance for mismatched transform lists.
In order to do this, we have to convert a transform list into a 3d matrix,
so I move the code from layout module into style module for reusing it.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1390039](https://bugzilla.mozilla.org/show_bug.cgi?id=1390039).
- [X] These changes do not require tests because this is a Gecko feature and I add many tests in Gecko already.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3fa5d83ab798a9f1f88a73bf8618e6d7ccbb4b64

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : dd0b5e85f3be270d00657881351cd86286d436ff
2017-08-30 06:03:32 -05:00
Emilio Cobos Álvarez
22b2d26b42 servo: Merge #18300 - style: Remove HasViewportPercentage (from emilio:die-hvp-die); r=nox
It's not needed since #18268, let's kill it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5dee83d54d3f05cc631ee89de612c14e21dd92ec

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e6f1d82f2005c8203891fedd5bd564411817e858
2017-08-30 04:31:11 -05:00
Emilio Cobos Álvarez
139c82f933 Revert "Backed out changeset 11803fe39188 (bug 1393189) as being the servo side of bug 1393189. r=backout on a CLOSED TREE"
This reverts commit 5a72be20adae0f5dacc7d8b0732a8f88f36e1a95.
2017-08-30 16:07:55 +02:00
Sebastian Hengst
01d615f61e Backed out changeset 11803fe39188 (bug 1393189) as being the servo side of bug 1393189. r=backout on a CLOSED TREE 2017-08-30 10:16:38 +02:00
Boris Chiou
16f4885863 servo: Merge #18305 - Return Err(()) if determinant is not 1 or -1 while decomposing the 2d matrix (from BorisChiou:stylo/animation/transform/determinant_panic); r=birtles
This error may happen in some cases, and we shouldn't panic in debug mode,
so let's return Err(()) for it to fall back to discrete animation.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1393605](https://bugzilla.mozilla.org/show_bug.cgi?id=1393605).
- [X] These changes do not require tests because we just downgrade the panic to an Err result.

Source-Repo: https://github.com/servo/servo
Source-Revision: afb874becd03627c6501434957f47ee7821119ef

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ed29cd15a8417ead19fda5803070f5463ecd33ea
2017-08-30 01:06:44 -05:00
Xidorn Quan
2173ab5d1c servo: Merge #18304 - Rewrite CounterStyleOrNone::from_gecko_value to use fewer binding functions (from upsuper:counter-style-clone); r=heycam
This is the Servo side change of [bug 1393189](https://bugzilla.mozilla.org/show_bug.cgi?id=1393189).

Source-Repo: https://github.com/servo/servo
Source-Revision: 88e7906191d9ba2afc6f5eabeec3407996403f2b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7fd7bf85f48ebdcb7b71f2d56b850f339fd9526b
2017-08-29 23:18:06 -05:00
Xidorn Quan
5c91c89501 servo: Merge #18302 - Harden assert for creating atom from raw pointer (from upsuper:atom-assert); r=bholley
One of Stylo's common assertion turns out to be from having a null Atom (see [Gecko 1385925 bug comment 7](https://bugzilla.mozilla.org/show_bug.cgi?id=1385925#c7)). It would be helpful if we can catch this kind of crash earlier via a release-assertion.

This may regress performance to some extent which I'm not sure. But we can probably have it there for diagnosis for now, and remove later.

Source-Repo: https://github.com/servo/servo
Source-Revision: 421e6d8f917c721094d5b8d2afe6453e2b004a17

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 94d0c571d326ee8dbacda78dd894905effb4e8db
2017-08-29 22:13:02 -05:00
Glenn Watson
14f6dae050 servo: Merge #18303 - Update WR (improved debugger, texture cache, PBO texture updates) (from glennw:update-wr-debug-again); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b83f4e149accacb8cbb1b7c90b0023b3a735c72f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 71d57aaedcfa6286a2b5a5dddce4e23c8e443600
2017-08-29 21:08:39 -05:00
Pu Xingyu
1befe06abf servo: Merge #18175 - layout: Stop call normal block size assignment for flex container (from stshine:no-floats-in-flexbox); r=mbrubeck
No need to call the `assign_block_size_block_base()` method of normal block in flex.rs since it is implemented for CSS2.

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

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e363d60bb201a526eeebefbd57844cb1f070354

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c3f973af43e188358cc41301c3d04aed7dfdd5a4
2017-08-29 19:15:59 -05:00
Emilio Cobos Álvarez
db1b56d42c servo: Merge #18268 - style: Recascade the document instead of using the dirty_on_viewport_size_change bit (from emilio:dirty-viewport-followup); r=SimonSapin
This allows us to simplify a lot of code.

On top of #18267.

Source-Repo: https://github.com/servo/servo
Source-Revision: 473934c989c94773c38f585b1c4500cd8c811738

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 77ef7ecc453b26b3747233aeb411c85c4cb8757a
2017-08-29 14:18:58 -05:00
Gregory Terzian
cd6f4e337e servo: Merge #17269 - Remove compositor forwarding code and use dedicated mechanism (from gterzian:remove_compositor_forwarding_code_and_use_dedicated_mechanism); r=asajeffrey
<!-- Please describe your changes on the following line: -->
@paulrouget Here is a first sketch of the proposed "design", handling a first message as a proof of concept, if you could please already take a look before I move all the messages(or method calls) across... thanks

---
<!-- 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
- [ ] These changes fix #15934 (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: ef401dd6373a393ff1d76e31e13d1827a5f0571e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8b2373eec68e021f211f2514571342dea995eee6
2017-08-29 12:57:58 -05:00
Paul Rouget
ee4977518a servo: Merge #18295 - enable antialiasing by default (from paulrouget:better_default_options); r=jdm
This is not a problem for regular Servo because these values are toggled when the command line is parsed. But it's not the case when embedding Servo.

Source-Repo: https://github.com/servo/servo
Source-Revision: 62930d0073fbf07362b02be0bd774986c8fb94e9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e75ce51dbd60c9988da6741a8fb42ebaeeca409d
2017-08-29 11:26:45 -05:00
Josh Matthews
a4c8935171 servo: Merge #18290 - Report more specific CSS selector errors (from jdm:selectorerr); r=heycam
Report more specific errors for invalid CSS selectors. Reviewed by @heycam in https://bugzilla.mozilla.org/show_bug.cgi?id=1384216.

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

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3e6e805e10d74b130a1687dfdb8c9e85ec4d255f
2017-08-29 09:46:22 -05:00
Emilio Cobos Álvarez
f22a6df801 servo: Merge #18293 - style: Box the PerPseudo<SelectorMap>, so we don't waste a lot of space (from emilio:selector-map-box); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 5062dc5914d97e16b93c847574282067dcde49f7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3f00cc439ea8b24861b230ef25c769a30f581583
2017-08-29 07:37:55 -05:00