Граф коммитов

6504 Коммитов

Автор SHA1 Сообщение Дата
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
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
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
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