Commit graph

29067 commits

Author SHA1 Message Date
Anthony Ramine
ef9d614349 Fix impl of ToComputedValue for TrackSize<T> 2017-08-28 22:48:08 +02:00
Daniel Johnson
5d28dd64d9 "javascript:" urls: clean up js evaluation code
- move it to its own function
- move the `url = "about:blank" code into the same block
- move the `use` statement to the top of the file
2017-08-28 12:57:38 -07:00
Emilio Cobos Álvarez
f6e4c5547c
style: Remove uninlineable function in PropertyDeclarationIterator.
That literally made no sense, and is probably leftover from where we passed Map
directly there.
2017-08-28 21:25:25 +02:00
Emilio Cobos Álvarez
344d53bd29
style: Avoid scanning the longhand id twice in the fast path of PropertyDeclarationBlock::push_common.
This makes the overhead of this function much lower according to `perf`.

And in general makes sense, removing overhead from the fast path.

MozReview-Commit-ID: 4dJRap9dxNG
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-08-28 21:20:46 +02:00
Emilio Cobos Álvarez
8a0a690384
style: Avoid dropping a parse error on the floor when checking whether a prop is enabled. 2017-08-28 21:05:06 +02:00
Tom Tromey
546ecaeee9 Use cssparser's new_with_line_number_offset
cssparser provides a way to set the initial line number on a
ParserInput.  This patch changes servo to use this facility, rather than
reimplement the same functionality itself.
2017-08-28 12:49:30 -06:00
bors-servo
04fb310847 Auto merge of #18247 - Majora320:master, r=emilio
Silenced camel case warning for the iOS enum variant

Fix a simple warning.
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

This change is obviously too trivial for tests.

<!-- 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/18247)
<!-- Reviewable:end -->
2017-08-28 13:39:25 -05:00
Josh Matthews
4a949e112d Prioritize parsing non-custom property names. 2017-08-28 11:20:24 -07:00
Pu Xingyu
9103743d0c layout: Stop calling normal block size assignment for flex container
No need to call the `assign_block_size_block_base()` method of normal
block since it is implemented for CSS2.
2017-08-29 01:30:09 +08:00
bors-servo
3b11145ef7 Auto merge of #18233 - ferjm:paint.timing.intermitent, r=jdm
Buffer perf notifications in paint timing test

Paint timing notifications may be fired before the observer starts observing, so we need to buffer these notifications.

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

<!-- 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/18233)
<!-- Reviewable:end -->
2017-08-28 12:28:59 -05:00
bors-servo
c2deac171d Auto merge of #18269 - rlustin:filter-buffer-by-name-and-type, r=ferjm
Use `Filter buffer by name and type` algorithm implementation

Following #18176, it uses the new implementation and removes the old one.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #18186
- [x] These changes do not require tests because it’s only internal changes in `components/script/dom/performance.rs`

<!-- 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/18269)
<!-- Reviewable:end -->
2017-08-28 11:18:52 -05:00
bors-servo
a266e96d28 Auto merge of #18239 - servo:derive-all-the-things, r=emilio
Refactor how we handle trait bounds in style_derive

<!-- 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/18239)
<!-- Reviewable:end -->
2017-08-28 10:13:13 -05:00
bors-servo
96b4e064a1 Auto merge of #18267 - emilio:dirty-on-viewport-size-change, r=SimonSapin
style: Don't look for viewport units in stylesheets.

Use whether we've computed any viewport unit instead.

This is more accurate (we avoid restyling unnecessarily if we've found anything
ever on the stylesheet, but that hasn't matched).

This has the benefit of also matching Gecko, and simplify some code and
fishyness around, and also hopefully speeding up stylesheet parsing.

<!-- 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/18267)
<!-- Reviewable:end -->
2017-08-28 08:48:47 -05:00
Emilio Cobos Álvarez
dcbe196ed5
style: Remove NODE_NEEDS_DIRTY_ON_VIEWPORT_SIZE_CHANGE.
Recascading is enough.
2017-08-28 14:40:48 +02:00
Emilio Cobos Álvarez
2291ce4767
style: Remove CascadeInfo. 2017-08-28 14:40:47 +02:00
Emilio Cobos Álvarez
6e9a96a6f8
style: Recascade the document instead of using the dirty_on_viewport_percentage bit. 2017-08-28 14:40:46 +02:00
bors-servo
94c870726f Auto merge of #18261 - emilio:silly-pseudo-style, r=heycam
style: Really only resolve applicable ::before / ::after.

<!-- 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/18261)
<!-- Reviewable:end -->
2017-08-28 07:01:51 -05:00
Emilio Cobos Álvarez
14d60a7e89
style: Really only resolve applicable ::before / ::after.
MozReview-Commit-ID: 4dIykkUdIxZ
2017-08-28 14:00:43 +02:00
Mateusz Naściszewski
1c0f569bb3
Correct sortedness check in profile statistics 2017-08-28 13:17:26 +02:00
Gregory Terzian
6bca3402a6 implement clone for embedder and compositor proxies 2017-08-28 18:39:31 +08:00
Gregory Terzian
01c24e017d move embedder related messages, and window event handling, out of compositor 2017-08-28 18:39:10 +08:00
Anthony Ramine
ba4136b5a8 Document how style traits can be derived 2017-08-28 12:26:43 +02:00
Anthony Ramine
41c3be54ea Implement #[distance(fallback)] for #[derive(ComputeSquaredDistance)] 2017-08-28 12:26:42 +02:00
Anthony Ramine
4faadb489f Implement #[css(derive_debug)]
This makes #[derive(ToCss)] derive Debug with a simple call to the to_css method.
2017-08-28 12:26:40 +02:00
Anthony Ramine
1ace6d4c7f Derive Animate for computed::Angle 2017-08-28 12:26:39 +02:00
Anthony Ramine
b543b17cf0 Derive Animate for BackgroundSize<L> 2017-08-28 12:26:38 +02:00
Anthony Ramine
318d8696e5 Derive Animate and ComputeSquaredDistance for computed font-size-adjust 2017-08-28 12:26:37 +02:00
Anthony Ramine
4a4bf89575 Implement #[animate(fallback)] for #[derive(Animate)]
This allows us to derive the Animate trait, providing a fallback function
for when the 2 values aren't similar.
2017-08-28 12:26:36 +02:00
Anthony Ramine
3751fe9fdc Derive ToComputedValue for TrackBreadth<L> 2017-08-28 12:26:35 +02:00
Emilio Cobos Álvarez
15e71c5670
style: Don't look for viewport units in stylesheets.
Use whether we've computed any viewport unit instead.

This is more accurate (we avoid restyling unnecessarily if we've found anything
ever on the stylesheet, but that hasn't matched).

This has the benefit of also matching Gecko, and simplify some code and
fishyness around, and also hopefully speeding up stylesheet parsing.
2017-08-28 12:05:22 +02:00
Raphaël Lustin
d090ce6689 Use Filter buffer by name and type algorithm implementation (fixes #18186) 2017-08-28 11:36:55 +02:00
Anthony Ramine
735e093de7 Implement #[compute(clone)] for #[derive(ToComputedValue)] 2017-08-28 10:39:53 +02:00
Anthony Ramine
efc852f6e3 Improve handling of trait bounds when deriving fmap-like traits 2017-08-28 10:39:50 +02:00
Anthony Ramine
8101887d31 Support #[animation(constant)] when deriving ToAnimatedZero 2017-08-28 10:39:32 +02:00
Anthony Ramine
405e34aa74 Derive a bunch of animation traits for some SVG types 2017-08-28 10:39:17 +02:00
Anthony Ramine
eaf2f1ec33 Introduce #[animation(constant)] for the Animate trait
This allows us to handle fields that should be the same during animations.
2017-08-28 10:39:10 +02:00
bors-servo
ced303b9cb Auto merge of #18176 - rtbo:perf_observer_buffered, r=ferjm
PerformanceObserverInit.buffered

Per #18108, add `buffered` flag in the `PerformanceObserverInit` dict.
Per W3C spec, when `buffered` is set, `PerformanceObserver.observe()` method adds the entries buffered in the `Performance` instance into the observer's entry buffer.
One step is the implementation of the [filter by name and type](https://w3c.github.io/performance-timeline/#filter-buffer-by-name-and-type) algorithm. Don't think that the sort operation is useful in this case, but the spec states that this algorithm is to be used.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #18108
- [X] These changes do not require tests (yet) because the timeline API is not powered.

<!-- 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/18176)
<!-- Reviewable:end -->
2017-08-28 02:20:29 -05:00
Daniel Johnson
fc23cb1a63 "javascript:" urls: move test to correct location
- move test to correct directory
- update it to be more concise

I also confirmed that this test passes in Firefox.
2017-08-27 23:17:03 -07:00
bors-servo
478da86bb9 Auto merge of #18265 - hiikezoe:dont-fallback-to-discrete-animation, r=birtles
Don't fallback to discrete animations within animate().

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

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

<!-- 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/18265)
<!-- Reviewable:end -->
2017-08-28 00:29:36 -05:00
Hiroyuki Ikezoe
21db77eb4e Don't fallback to discrete animations within animate(). 2017-08-28 14:16:34 +09:00
Daniel Johnson
ff786a050a "javascript:" urls: clean up after aborting a page load
Problem:
  After aborting on a 204 or 205 status code, you could no longer
  follow links on the page.

Cause:
  `constellation.rs` ignores new LoadUrl requests since the aborted
  one is in its `pending_changes` list.

Solution:
  Send a message to constellation that lets it clean up its
  `pending_changes` list.
2017-08-27 21:58:11 -07:00
bors-servo
e53bf5d675 Auto merge of #18264 - glennw:update-wr-api, r=KiChjang
Update WR (debugger, renderer API changes).

<!-- 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/18264)
<!-- Reviewable:end -->
2017-08-27 23:14:05 -05:00
Glenn Watson
78f73b6d56 Update WR (debugger, renderer API changes). 2017-08-28 12:08:24 +10:00
Anthony Ramine
e49dbc4dfa Derive Animate for ShapeRadius<L> 2017-08-27 23:31:17 +02:00
Anthony Ramine
af560a8fab Support #[animation(error)] in more cases
The trait ToAnimatedZero now supports it, and it now applies to things with generics,
avoiding the trait bounds for field types of the variant on which it applies.
2017-08-27 23:31:17 +02:00
Anthony Ramine
dc827c14e1 Fix the name of the #[animation] attribute, oops 2017-08-27 23:31:16 +02:00
Anthony Ramine
04ad28b564 Refactor how we handle trait bounds in style_derive
For the traits we derive which methods don't depend on associated types (i.e.
all of them but ToAnimatedValue and ToComputedValue), we now add trait bounds
for the actual field types directly, instead of bounding the type parameters.
2017-08-27 23:31:16 +02:00
Anthony Ramine
13d47ba69a Remove some garbage code from style_derive 2017-08-27 23:31:16 +02:00
bors-servo
5ddc446a64 Auto merge of #18226 - glennw:update-wr-render-tasks, r=jdm
Update WR (render task tree optimization, shader includes, long text run fix).

<!-- 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/18226)
<!-- Reviewable:end -->
2017-08-27 16:28:05 -05:00
bors-servo
08b9588011 Auto merge of #18257 - emilio:debug-stuff-helps, r=bholley
stylo: Make a few functions output more useful debug information.

Reviewed by Bobby on bug 1389645.

<!-- 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/18257)
<!-- Reviewable:end -->
2017-08-26 18:13:40 -05:00