Commit graph

1098 commits

Author SHA1 Message Date
Simon Sapin
ad3437b98a Remove now-redundant Arc inside PropertyDeclarationBlock. 2016-08-31 02:34:08 +02:00
Simon Sapin
acc38aa8c2 Use Arc<PropertyDeclarationBlock> everwhere it’s appropriate. 2016-08-31 02:34:07 +02:00
Simon Sapin
c50e6add4a Import Debug implementations for RefCell and friends 2016-08-31 02:34:06 +02:00
Simon Sapin
c87180a2fb Move DOMRefCell to style. 2016-08-31 02:34:05 +02:00
Simon Sapin
ec723057b2 Make DOMRefCell use style’s copy of RefCell 2016-08-31 02:34:04 +02:00
Simon Sapin
edbd88cce5 Update our copy of RefCell, add try_borrow and try_borrow_mut. 2016-08-31 02:34:03 +02:00
Simon Sapin
ef5977f059 Wrap in Arc<_> every object reflected in CSSOM.
See https://bugzilla.mozilla.org/show_bug.cgi?id=1281962#c5
2016-08-31 02:34:03 +02:00
Simon Sapin
94d5b28fe9 Add a separate NamespaceRule type 2016-08-31 02:34:02 +02:00
Simon Sapin
a5a3a74262 Remove CSSRule::Charset
`@charset` rules are not reflected in CSSOM.
2016-08-31 02:34:01 +02:00
Emilio Cobos Álvarez
be7a44315d
style: Allow calc in media queries. 2016-08-30 13:48:55 -07:00
bors-servo
b318e61d5d Auto merge of #13128 - emilio:stupidest-assertion-ever, r=SimonSapin
Fix debug assertion introduced in #13108 by me.

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

<!-- Either: -->
- [x] These changes do not require tests because https://github.com/servo/servo/issues/13127

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

I'm stupid, and when I did the last moving-the-code-around, I failed miserably
to double-check it in a debug build.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13128)
<!-- Reviewable:end -->
2016-08-30 12:21:14 -05:00
Emilio Cobos Álvarez
b9d91929aa
Fix debug assertion introduced in #13108 by me.
I'm stupid, and when I did the last moving-the-code-around, I failed miserably
to double-check it in a debug build.
2016-08-30 08:57:44 -07:00
bors-servo
fb9c36c833 Auto merge of #13086 - Manishearth:shadowarray, r=emilio
Add bindings for nsCSSShadowArray, use for text-shadow and box-shadow

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13086)
<!-- Reviewable:end -->
2016-08-30 09:22:49 -05:00
Manish Goregaokar
85332d5790 stylo: Support box-shadow 2016-08-30 08:04:04 +05:30
Manish Goregaokar
7fae87d687 stylo: Support text-shadow 2016-08-30 08:04:03 +05:30
Emilio Cobos Álvarez
3e80f482ba
style: Don't loop over all the set of dependencies always.
The dependency count is not at all minor, and this way we avoid looping
through all of them in the common cases, mainly either changing state, or
attributes.
2016-08-29 16:03:00 -07:00
bors-servo
b8d725d207 Auto merge of #13042 - canaltinova:position, r=Manishearth
Handle 3- and 4- valued <position>s in style

<!-- Please describe your changes on the following line: -->
This is first part of fix #12690 and covers just specified style part for now.

r? @Manishearth

---
- [X] These changes fix #12690 (github issue number if applicable).

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13042)
<!-- Reviewable:end -->
2016-08-29 08:48:57 -05:00
Simon Sapin
899192e046 Update cssparser
Today’s Rust Nigthly broke it
2016-08-28 23:10:56 +02:00
Keith Yeung
40c9601686 Update string_cache to 0.2.26 2016-08-28 07:51:49 -07:00
bors-servo
1c2b45f87f Auto merge of #13055 - servo:rustup, r=metajack
(Do not merge) Update Rust to 1.13.0-nightly (198713106 2016-08-26)

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13055)
<!-- Reviewable:end -->
2016-08-28 07:53:33 -05:00
Anthony Ramine
c66380d83c Update Rust to 1.13.0-nightly (198713106 2016-08-26) 2016-08-28 13:45:03 +02:00
Ashwin R
84eab314c9 Removed unneeded clone in the style system cache 2016-08-28 16:06:23 +05:30
Nazım Can Altınova
8372f295b3 Change parsing behavior and implement to_computed_value function 2016-08-27 22:56:46 +03:00
Bobby Holley
425f9b9105 Regenerate bindings again.
This handles the changes in https://bugzilla.mozilla.org/show_bug.cgi?id=1297982
2016-08-26 18:03:51 -07:00
Bobby Holley
7e72e5cf76 Regenerate bindings and fix up for nsStyleImageLayers_Position changes in Gecko bug 1295084. 2016-08-26 13:21:46 -07:00
Bobby Holley
1799b0a5df Remove unused children_count method from TNode.
The semantics of this method with respect to anonymous children are unclear.
Thankfully it's unused, so we can remove it.
2016-08-26 09:36:53 -07:00
Bobby Holley
b56297f2a5 Make ChildrenIterator concrete.
This will allow us to specialize ChildrenIterator in the Gecko case to do
something more interesting in some cases.
2016-08-26 09:36:53 -07:00
Bobby Holley
470368ecce Move rev_children and traverse_preorder to LayoutNode.
These impose additional requirements on the traversal code that we want to
avoid for Gecko (for now).
2016-08-26 09:36:53 -07:00
Emilio Cobos Álvarez
4194ba063a
style: Make WorkQueue creation fallible.
Fixes bug 1290205 in bugzilla.
2016-08-25 23:43:31 -07:00
Nazım Can Altınova
4eb93c85bc Handle 3- and 4- valued <position>s in specified style 2016-08-26 00:06:56 +03:00
bors-servo
d5913035ec Auto merge of #12981 - splav:inline_reconstruct#12602, r=notriddle
Inline reconstruct#12602

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

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

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

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12981)
<!-- Reviewable:end -->
2016-08-23 15:43:56 -05:00
Ms2ger
992391d6ad Move the user agent and user stylesheets to layout_thread. 2016-08-23 15:33:47 +02:00
bors-servo
c5e81f8361 Auto merge of #12945 - Manishearth:bgarray, r=SimonSapin
Support multiple backgrounds in both servo and stylo

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

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

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

r? @SimonSapin

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12945)
<!-- Reviewable:end -->
2016-08-22 22:09:23 -05:00
Alexandrov Sergey
512764b7da force style calculation/element construction for non-incremental mode 2016-08-23 01:45:18 +03:00
Manish Goregaokar
466df01e71
Review fixups 2016-08-22 22:45:16 +05:30
Manish Goregaokar
a98c0fc037 Fill extra layers in background style struct before handing off to Gecko 2016-08-22 22:42:48 +05:30
Manish Goregaokar
f29b748a59 Fix serialization of initial/inherit shorthands 2016-08-22 22:42:44 +05:30
Manish Goregaokar
69ada0d7a3 Support multiple backgrounds in servo layout 2016-08-22 22:42:43 +05:30
Manish Goregaokar
66cdf9ae4f Support serializing vector backgrounds in shorthand form 2016-08-22 22:42:41 +05:30
Manish Goregaokar
979a2798d5 Make Position a gecko-only vector longhand 2016-08-22 22:42:40 +05:30
Manish Goregaokar
65a8a8dccb Make most background- properties handle arrays 2016-08-22 22:42:39 +05:30
Manish Goregaokar
ce9640a48e Support possibly-vector keyword properties 2016-08-22 22:42:38 +05:30
bors-servo
1911606e5c Auto merge of #12970 - servo:thread-state, r=nox
Move thread_state to style.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12970)
<!-- Reviewable:end -->
2016-08-22 10:39:51 -05:00
Ms2ger
307d1ced3c Move thread_state to style. 2016-08-22 16:08:56 +02:00
Christian Sonne
908b9627a2 Track only the number of important declarations in a declaration block 2016-08-22 14:05:09 +02:00
bors-servo
daee53cb76 Auto merge of #12918 - hsinewu:12902-typedefs, r=Manishearth
12902 typedefs

<!-- Please describe your changes on the following line: -->
Using type alias instead of newtype.
Removing duplicated implementation, it's already inherited.
No more type constructors and foo.0
---
<!-- 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 #12902 (github issue number if applicable).

<!-- Either: -->
- [X] These changes do not require tests because it's 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="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12918)
<!-- Reviewable:end -->
2016-08-22 06:01:03 -05:00
bors-servo
87cc453ba7 Auto merge of #12962 - ashrko619:cache-element-classnames, r=notriddle
Cached element class names in style sharing cache with lazy computation

<!-- Please describe your changes on the following line: -->
Fixes #12912
Added a field to StyleSharingCandidate to lazily compute and cache the class 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
- [x] These changes fix #12912 (github issue number if applicable).

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

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12962)
<!-- Reviewable:end -->
2016-08-22 01:22:04 -05:00
Ashwin R
b076d7e28c cached element class names in style sharing cache with lazy computation 2016-08-22 11:00:39 +05:30
hsinewu
ef9a690c9c Refactor: use type alias instead of newtype 2016-08-22 09:36:19 +08:00
bors-servo
f8b2be1ea4 Auto merge of #12943 - servo:merged-declaration-block, r=emilio
Merge normal and important declarations in style rules

Have a single Vec instead of two. Fix #3426

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

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

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12943)
<!-- Reviewable:end -->
2016-08-21 03:43:25 -05:00