Commit graph

3667 commits

Author SHA1 Message Date
Manish Goregaokar
4deae33ab1 stylo: Make URLs work in inline style
MozReview-Commit-ID: 6Tc0kBw4V8c
2017-03-11 11:54:18 -08:00
Emilio Cobos Álvarez
75fa30c994
geckolib: Remove unused crates. 2017-03-11 13:38:22 +01:00
Emilio Cobos Álvarez
396fb62ca8
Bug 1303229: Get the proper viewport size for animations. r=hiro,heycam
While we're here, don't re-recompute the default computed values, just grab them
from the device.

MozReview-Commit-ID: GqqnPLIwN2F
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-11 11:54:14 +01:00
Emilio Cobos Álvarez
95ccfa748e
Bug 1303229: Get the proper viewport size for stylo. r=heycam
At least until we support scrollbars properly, this size is going to be the
correct one. I've left a TODO to grab the proper one once we support it.

This allows to trivially test viewport units for now.

MozReview-Commit-ID: JdaZ6WlZ2C6
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-11 11:54:12 +01:00
Hiroyuki Ikezoe
95b73b979e Use borrow() instead of borrow_mut() for PerDocumentStyleData.
We don't mutate any PerDocumentStyleData in Servo_StyleSet_FillKeyframesForName.
2017-03-10 10:55:01 +09:00
Manish Goregaokar
eda6a4fc4f stylo: Pass parser URL data in Servo_DeclarationBlock_SetProperty*
MozReview-Commit-ID: EVk4aEoyiXv
2017-03-09 14:44:17 -08:00
Manish Goregaokar
14d8eb93ba stylo: Handle SVG presentation attributes 2017-03-09 12:23:30 -08:00
Simon Sapin
60f454d7c4 Use a bitmap to optimize adding to a PropertyDeclarationBlock. 2017-03-07 23:37:32 +01:00
Simon Sapin
f70a49974a Make PropertyDeclarationBlock fields private 2017-03-07 23:37:32 +01:00
Simon Sapin
da4e5146e9 Make PropertyDeclarationBlock::important_count private. 2017-03-07 23:37:31 +01:00
Simon Sapin
460fd6eba8 Deduplicate declarations when inserting each one, not at the end of parsing.
This will reduce the amount of re-allocations and copies.
It will be further optimized with a bit map.
2017-03-07 23:37:30 +01:00
Simon Sapin
4b4a873c3e Move parse method of PropertyDeclaration to ParsedDeclaration
This is what it now returns.
2017-03-07 23:37:29 +01:00
Simon Sapin
9d663ea7af Make PropertyDeclaration::parse return an enum rather than push to a Vec. 2017-03-07 23:37:29 +01:00
Simon Sapin
7455ad5eb4 PropertyDeclarationParseResult -> Result<(), PropertyDeclarationParseError> 2017-03-07 23:37:27 +01:00
bors-servo
b11847d86c Auto merge of #15837 - upsuper:bug1344135, r=emilio
Return true in set_property only when declaration block is changed

This is [bug 1344135](https://bugzilla.mozilla.org/show_bug.cgi?id=1344135).

<!-- 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/15837)
<!-- Reviewable:end -->
2017-03-07 13:51:33 -08:00
Paul Rouget
2a05534efb introduce frame_size and window_rect 2017-03-07 03:52:21 +01:00
Xidorn Quan
4f07826837 Return true in set_property only when declaration block is changed 2017-03-06 22:21:59 +11:00
Emilio Cobos Álvarez
71997e6ed9
style: Remove unused goal field from SharedStyleContext. 2017-03-03 03:46:10 +01:00
Emilio Cobos Álvarez
b4daadf7f2
style: Remove unused screen_size_changed layout context field. 2017-03-03 01:01:44 +01:00
Paul Rouget
79a5bf0cbf Let the embedder decide if servo should follow a link or not 2017-03-02 09:33:45 +01:00
Anthony Ramine
f8467a26c4 Kill serde_codegen 💣 2017-02-28 19:31:25 +01:00
Simon Sapin
288ef97055 Update cssparser for https://github.com/servo/rust-cssparser/pull/123 2017-02-28 17:16:36 +01:00
Xidorn Quan
b24614f894 Resolve color:currentcolor during computing
The keyword value "currentcolor" should be preserved rather than being
replaced by the CSS-wide keyword "inherit" during parsing.
2017-02-28 13:44:50 +11:00
bors-servo
eb8d0c3df8 Auto merge of #15568 - samgiles:15513-space-scroll, r=asajeffrey
Fix #15513: Stop spacebar scrolling directly from the glutin window.

This completely removes spacebar scrolling using the current method, fixing #15513.

See #15513 for a discussion, as the _right thing to do_ is perhaps a UX problem - and perhaps worth a follow up.

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

No tests for these changes yet, as I'm just kicking off a discussion about how this should work.

<!-- 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/15568)
<!-- Reviewable:end -->
2017-02-27 12:54:26 -08:00
Hiroyuki Ikezoe
8ced5db704 Fix wrong index for missing properties in the initial and final keyframes. 2017-02-27 07:34:19 +09:00
Simon Sapin
4ad844f7bd Rename PropertyBitField to LonghandIdSet 2017-02-26 19:24:50 +01:00
Simon Sapin
c81ebca7df Move PropertyBitField out of its module 2017-02-26 19:02:55 +01:00
bors-servo
94e563e4d9 Auto merge of #15735 - servo:cssparserup, r=emilio
Update cssparser to 0.11

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

<s>Depends on https://github.com/servo/rust-cssparser/pull/122.</s>

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

<!-- 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/15735)
<!-- Reviewable:end -->
2017-02-26 02:19:32 -08:00
Simon Sapin
33ef6f78e5 Update to cssparser 0.11 2017-02-26 11:09:53 +01:00
Emilio Cobos Álvarez
6875c65d37
Bug 1341083: Implement dynamic restyling for display: contents. r=heycam
MozReview-Commit-ID: KimTU2j4V4p
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-02-25 19:58:56 +01:00
Hiroyuki Ikezoe
bb3f2e9dba Drop Servo_AnimationValues_Populate. 2017-02-24 19:13:13 +09:00
Hiroyuki Ikezoe
f94ee515a3 Implement Servo_GetComputedKeyframeValues. 2017-02-24 19:13:09 +09:00
Shing Lyu
7596ee75df Added deep equal operator for animation value 2017-02-24 15:01:07 +08:00
bors-servo
063aec5ade Auto merge of #15707 - froydnj:geckolib-transmute-removal, r=Wafflespeanut
geckolib: remove std::mem::transmute usages

We can make these look nicer with the FFIArcHelpers trait.

I think there are tests for these changes?  Not sure.

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

<!-- 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/15707)
<!-- Reviewable:end -->
2017-02-23 11:02:24 -08:00
bors-servo
56a99577b3 Auto merge of #15535 - froydnj:global-style-thread-pool, r=bholley
geckolib: use a global thread pool for styling

By having a single thread pool, rather than one per document, we use less memory.  This addresses https://bugzilla.mozilla.org/show_bug.cgi?id=1324250.

This may be obvious to an experienced Rust programmer, but I went with raw pointers because trying to use `Option` global variables resulted in complaints about turning on feature flags in nightly Rust.  Since this is for stylo, nightly features are not appropriate here.

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

<!-- 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/15535)
<!-- Reviewable:end -->
2017-02-23 10:15:41 -08:00
Nathan Froyd
b1f8f03f6b geckolib: remove std::mem::transmute usages
We can make these look nicer with the FFIArcHelpers trait.
2017-02-23 12:33:17 -05:00
bors-servo
af292c4a71 Auto merge of #15682 - upsuper:arc-types, r=Manishearth
Simplify defining arc ffi types

r? @Manishearth

I don't have a good sense for creating syntax... so if you have any suggestion for the syntax of `impl_arc_ffi` macro, it would be appreciated.

<!-- 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/15682)
<!-- Reviewable:end -->
2017-02-22 15:58:35 -08:00
Xidorn Quan
0cac276891 Simplify defining arc ffi types 2017-02-23 10:22:39 +11:00
Nathan Froyd
a5d285f102 geckolib: merge NUM_THREADS and STYLE_THREAD_POOL into a GlobalStyleData struct
Doing this provides a handy place to drop any future global style things
and also takes up slightly less space with a single `lazy_static!`.
2017-02-22 16:15:58 -05:00
Nathan Froyd
fafcdda16a geckolib: move NUM_THREADS from style to geckolib
This change eliminates some gecko-only configuration in the style
component and moves NUM_THREADS closer to its only uses.
2017-02-22 11:35:08 -05:00
Nathan Froyd
3e81f8431e geckolib: use a global thread pool for styling
By having a single thread pool, rather than one per document, we use
less memory.  This addresses
https://bugzilla.mozilla.org/show_bug.cgi?id=1324250.
2017-02-22 11:25:07 -05:00
Hiroyuki Ikezoe
396db281e3 Fill computed property values where the propery is missing in initial and final keyframes.
@keyframes anim {
  from { opacity: 0; transform: none; }
  to { transform: none; }
}

In above case, we have to add opacity property and value in the 'to' keyframe.
2017-02-22 19:04:50 +09:00
Glenn Watson
0af27a3434 Rename ScreenPx to DeviceIndependentPixel. 2017-02-22 14:37:24 +10:00
bors-servo
14bbe9d872 Auto merge of #15670 - nox:die-plugins-die, r=Manishearth
Kill the plugins crate and its clippy support

<!-- 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/15670)
<!-- Reviewable:end -->
2017-02-21 05:15:15 -08:00
Anthony Ramine
63c4490e73 Kill the plugins crate and its clippy support
Sometimes clippy gets outdated by months, and its current support setup
means that each Servo component need to opt into it by depending on
the plugins crate manually, and not all components do that.
2017-02-21 11:50:36 +01:00
bors-servo
58aa6ce7ae Auto merge of #15629 - heycam:variables-leak, r=bholley,emilio
stylo: Destroy static Variables struct on shutdown.

Fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1340457.

r? @emilio

<!-- 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/15629)
<!-- Reviewable:end -->
2017-02-19 21:12:57 -08:00
Nazım Can Altınova
d7941d5e35 stylo: Support lang property 2017-02-18 20:37:07 -08:00
Manish Goregaokar
ade09844b7 stylo: Support quirksmode text-decoration color override 2017-02-18 20:37:05 -08:00
Manish Goregaokar
f27cd541b3 stylo: Support -x-span for <col span> 2017-02-18 20:37:04 -08:00
Manish Goregaokar
b85e1f5f0c stylo: Add helpers for converting Gecko keywords to Servo, use to support keyword pres attrs 2017-02-18 20:31:08 -08:00