Commit graph

8129 commits

Author SHA1 Message Date
bors-servo
6c08c570bf Auto merge of #11399 - heycam:parent-style, r=pcwalton
Look past restyle root for parent node when restyling.

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because existing tests should be sufficient

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

----

Currently when traversing a the tree to restyle, we look at whether a
given element to restyle is the root.  This seems to always be the root
of the entire document, since we start our processing from the top.  If
the current element being restyled is the root of the restyle, then we
use None as the parent node for restyling purposes.

In stylo we want to invoke restyling starting from an arbitrary node in
the document, not just the root of the document, so this change looks
for the parent element regardless of whether we're at the root of the
restyle.

r? @pcwalton

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11399)
<!-- Reviewable:end -->
2016-05-25 15:36:51 -05:00
bors-servo
7ad3c313d3 Auto merge of #11401 - heycam:moz-box, r=mbrubeck
Support display:-moz-(inline-)box in geckolib.

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they are geckolib-only changes

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

r? @mbrubeck

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11401)
<!-- Reviewable:end -->
2016-05-25 13:49:23 -05:00
bors-servo
72ffe3468a Auto merge of #11379 - pcwalton:wrup4, r=mbrubeck
Update WebRender.

Picks up fixes for #11150, #11151, #11323, and #11327.

r? @mbrubeck

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11379)
<!-- Reviewable:end -->
2016-05-25 11:13:05 -05:00
bors-servo
116faa7617 Auto merge of #11376 - creativcoder:update-string-cache, r=nox
Bump string-cache to 0.2.18

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [X] These changes do not require tests because its a crate version bump.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11376)
<!-- Reviewable:end -->
2016-05-25 10:13:29 -05:00
Ms2ger
4f893ee96e Remove ScriptThread::layout_to_constellation_chan.
Instead, pass it along in NewLayoutInfo when needed.
2016-05-25 15:41:01 +02:00
bors-servo
1640ade0b3 Auto merge of #11410 - Ms2ger:script-listener-thread, r=nox
Remove the script listener thread.

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because refactoring

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11410)
<!-- Reviewable:end -->
2016-05-25 06:10:17 -05:00
Ms2ger
e7f75ca298 Merge PrivilegedPipelineContent::{start_all, start_paint_thread}.
They now do the same thing.
2016-05-25 12:50:25 +02:00
Ms2ger
4113eb6f72 Remove the script listener thread (fixes #11345).
We needed a separate thread in the chrome process because communication to the
compositor is done through a trait object, and cross-process virtual calls are
forbidden.

Also, the fact that these messages are ultimately handled by the compositor is
an implementation detail; conceptually, the relevant constellation is supposed
to handle these messages.

So instead, the script thread will now send the messages to the constellation,
which will ask the compositor to handle them.
2016-05-25 12:50:22 +02:00
bors-servo
52f17a8814 Auto merge of #11377 - servo:style-attr-ser-rebase, r=SimonSapin
Update style attributes on CSSStyleDeclaration changes

Rebase of #9410. Fixes #9410, fixes #9307.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11377)
<!-- Reviewable:end -->
2016-05-25 05:23:14 -05:00
bors-servo
586c0702a0 Auto merge of #11373 - servo:threadfactory, r=larsbergstrom
Use associated types to improve LayoutThreadFactory and ScriptThreadFactory.

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because refactoring

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11373)
<!-- Reviewable:end -->
2016-05-25 04:25:50 -05:00
Rahul Sharma
6a0dde6485 Bump string-cache to 0.2.18 2016-05-25 14:35:36 +05:30
bors-servo
affc110fa0 Auto merge of #10498 - creativcoder:default-profile-dir, r=SimonSapin
Adding default config directories.

Fixes #10338
<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10498)
<!-- Reviewable:end -->
2016-05-25 02:52:10 -05:00
David Raifaizen
ff5cfb12a0 Restoring node dirty calls after properties are set to trigger mutations 2016-05-25 09:25:38 +02:00
David Raifaizen
8b39260793 Removed mutation calls from sync_property_with_attrs_style method in order to avoid reparsing serialized output 2016-05-25 09:25:37 +02:00
David Raifaizen
f6bbeae67f Removing unnecessary field from serialization css enum 2016-05-25 09:25:36 +02:00
David Raifaizen
3dafd558c5 Changing update_inline_style to process multiple declarations at once to handle shorthand serialization better 2016-05-25 09:25:35 +02:00
David Raifaizen
f38607967e Fixing python to_css codegen error 2016-05-25 09:25:34 +02:00
Simon Sapin
dc829da07e Less cloning and dynamic dispatch. 2016-05-25 09:25:33 +02:00
David Raifaizen
7d7aac212b Shorthand serialization now takes iterators instead of array slice as argument 2016-05-25 09:25:32 +02:00
David Raifaizen
be2f70393f Adding more efficient way of determining if PropertyDeclaration is important 2016-05-25 09:25:31 +02:00
David Raifaizen
51e642e875 Converted serialization methods to implement the to_css trait, writing to string buffers to save string allocations for every result 2016-05-25 09:25:29 +02:00
David Raifaizen
0985d7563f Making fixes based on suggestions from nox and SimonSapin 2016-05-25 09:24:10 +02:00
David Raifaizen
839a7559e7 Added sync_property_with_attrs_style method to serialize style string when inline style is changed 2016-05-25 09:24:08 +02:00
David Raifaizen
b4d8f3ba3a Removed previously copied serialize_shorthand method as well as unnecessary calls to document.content_changed 2016-05-25 09:24:07 +02:00
David Raifaizen
feff32c4ab For Shorthand impl, added to_name method and copied serialize_shorthand
from cssstyledeclaration.rs file

For PropertyDeclaration impl, added shorthands method to get the shorthands associated
with the current longhand

For PropertyDeclarationBlock impl, added serialize algorithm
2016-05-25 09:24:04 +02:00
bors-servo
8876d1f002 Auto merge of #11381 - mbrubeck:geckolib-features, r=nox
Make geckolib build dependencies with the same features as Servo by default

This reduces the number of things that need to be recompiled when building Geckolib and Servo in the same source tree.

This is a bit fragile and will need to be maintained by hand, but it's a nice improvement for developers.

r? @nox

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11381)
<!-- Reviewable:end -->
2016-05-25 01:57:30 -05:00
bors-servo
220bdfec2e Auto merge of #11337 - Ms2ger:compositor-exit-wait, r=pcwalton
Don't block the script listener thread on window.close().

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because no tangible effect

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

This does not appear to have any effect. I believe this has been the case
since e841065351, when the helper thread was
introduced.

It was added in a7ef1cd35e, where it blocked the
script thread rather than this helper thread.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11337)
<!-- Reviewable:end -->
2016-05-25 01:03:38 -05:00
Rahul Sharma
b4885fef9a adding default config dirs 2016-05-25 10:55:07 +05:30
bors-servo
a3fe756cdb Auto merge of #11366 - Ms2ger:css_errors_store, r=SimonSapin
Stop storing CSS errors on the Document.

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because removing dead code

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

They are never read.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11366)
<!-- Reviewable:end -->
2016-05-25 00:09:16 -05:00
bors-servo
0b64586bf5 Auto merge of #11368 - izgzhen:fix-filemanager-exit, r=asajeffrey
Fix FileManager thread panic and other misc improvements

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

Changes:

- Add shut down logic for FileManager thread
- Add an unit test for filemanager_thread

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11368)
<!-- Reviewable:end -->
2016-05-24 22:17:15 -05:00
Cameron McCormack
cb7f2a1c1b Support display:-moz-(inline-)box in geckolib. 2016-05-25 11:59:33 +10:00
Cameron McCormack
2c9cfae830 Look past restyle root for parent node when restyling.
Currently when traversing a the tree to restyle, we look at whether a
given element to restyle is the root.  This seems to always be the root
of the entire document, since we start our processing from the top.  If
the current element being restyled is the root of the restyle, then we
use None as the parent node for restyling purposes.

In stylo we want to invoke restyling starting from an arbitrary node in
the document, not just the root of the document, so this change looks
for the parent element regardless of whether we're at the root of the
restyle.
2016-05-25 11:52:42 +10:00
bors-servo
a04e30d247 Auto merge of #10796 - servo:character-data-surrogates, r=nox
Make /dom/nodes/CharacterData-surrogates.html not panic.

It now fails since `DOMString` is currently based on `std::string::String` on the Rust side, which is strictly well-formed UTF-8 and can not contain unpaired surrogate code points.

Fixes #10780

r? @Ms2ger

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10796)
<!-- Reviewable:end -->
2016-05-24 15:59:31 -07:00
bors-servo
2a2b88f42c Auto merge of #11287 - heycam:moz-binding, r=bholley
Support -moz-binding in geckolib

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because changes target stylo

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11287)
<!-- Reviewable:end -->
2016-05-24 14:41:04 -07:00
Matt Brubeck
77bfd1ebc8 Make geckolib build dependencies with the same features as Servo by default
This reduces the number of things that need to be recompiled when building
Geckolib and Servo in the same source tree.
2016-05-24 11:57:20 -07:00
Patrick Walton
4e329f5e98 Update WebRender.
Picks up fixes for #11150, #11151, #11323, and #11327.
2016-05-24 11:04:32 -07:00
bors-servo
aa9f50a1d4 Auto merge of #11303 - mbrubeck:last-resort, r=pcwalton
Always include the last-resort font

This is used as a fallback for any characters that don't have glyphs in the specified font.  Without this, per-glyph font fallback doesn't work because the FontGroup always contains only one font.  Fixes missing glyphs on many pages on my Linux box.

As a follow-up, we should probably have a smarter strategy for finding fallback fonts, possibly varying by script.  (Currently we just have a few hard-coded family names.)

r? @glennw

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11303)
<!-- Reviewable:end -->
2016-05-24 10:39:44 -07:00
Ms2ger
49d244d39c Use associated types to improve LayoutThreadFactory and ScriptThreadFactory. 2016-05-24 17:50:06 +02:00
bors-servo
e4fe0db8fd Auto merge of #11371 - Ms2ger:pipeline-create, r=asajeffrey
Avoid an unnecessary runtime check in Pipeline::create().

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because refactoring

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11371)
<!-- Reviewable:end -->
2016-05-24 08:33:41 -07:00
Matt Brubeck
e588943b4f Always include the last-resort font
This is used as a fallback for any characters that don't have glyphs in the
specified font.
2016-05-24 08:30:44 -07:00
bors-servo
8c4929a196 Auto merge of #10962 - KiChjang:input-attr-parse, r=asajeffrey
Parse HTMLInputElement attributes

Fixes #10491.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10962)
<!-- Reviewable:end -->
2016-05-24 07:42:23 -07:00
Zhen Zhang
96b2093121 Fix FileManager thread panic and other misc improvements
- Add shut down logic for FileManager thread
- Add an unit test for filemanager_thread
2016-05-24 22:32:36 +08:00
Ms2ger
c1ff09654a Avoid an unnecessary runtime check in Pipeline::create(). 2016-05-24 16:21:35 +02:00
Keith Yeung
c93ed39f33 Parse HTMLInputElement attributes 2016-05-24 10:12:18 -04:00
Simon Sapin
c11a3b958d Make /dom/nodes/CharacterData-surrogates.html not panic.
It now fails since DOMString is currently based on std::string::String
on the Rust side, which is strictly well-formed UTF-8 and can not
contain unpaired surrogate code points.

Fixes #10780
2016-05-24 16:08:01 +02:00
bors-servo
cd1396fa9a Auto merge of #11364 - Ms2ger:CompositorMsg, r=nox
Move CompositorMsg to script_traits.

Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data:
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because refactoring

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11364)
<!-- Reviewable:end -->
2016-05-24 06:48:46 -07:00
Ms2ger
a5139787de Stop storing CSS errors on the Document.
They are never read.
2016-05-24 14:41:38 +02:00
Ms2ger
f9a8c322af Use CompositorMsg from script_traits. 2016-05-24 12:29:22 +02:00
Ms2ger
47933479da Move CompositorMsg to script_traits. 2016-05-24 12:28:10 +02:00
bors-servo
6abcd793d7 Auto merge of #11326 - nox:non-geckolib, r=Ms2ger
Move DOMString back to script

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11326)
<!-- Reviewable:end -->
2016-05-24 02:07:29 -07:00