Commit graph

26425 commits

Author SHA1 Message Date
Nicholas Nethercote
6d5b1242db Introduce and start using the MallocSizeOf trait.
MallocSizeOf is similar to the existing HeapSizeOf trait from the
heapsize crate. The only difference is that MallocSizeOf's
malloc_size_of_children() function takes an additional MallocSizeOfFn
argument, which is used to measure heap blocks. This extra argument
makes MallocSizeOf match how Gecko's memory measurements work, and is
required for Stylo to integrate with DMD.

The patch also introduces a second trait, MallocSizeOfWithGuard, which
is much the same as MallocSizeOf, but with a |guard| argument for the
global style lock.

Finally, the patch uses the new traits to measure a small amount of
Stylo's memory usage.
2017-05-29 10:16:55 +10:00
Anthony Ramine
862fc4f88d Rename BorderRadiusSize to BorderCornerSize 2017-05-29 00:58:53 +02:00
Anthony Ramine
af3ede418b Refactor BorderRadius and move it to the border modules
BorderRadius now parses itself reusing Rect<T>.
2017-05-28 14:36:37 +02:00
Anthony Ramine
4144dc74db Make Rect<T> a struct tuple
It makes no sense to have named fields in some cases, notably to reuse
Rect<T> in BorderRadius<T>.
2017-05-28 14:36:36 +02:00
bors-servo
4ec2e8b4c5 Auto merge of #17003 - larsbergstrom:more_mac_builders, r=jdm
Split out some mac builds

Splits out the WPT and CSS tests on mac to twice as many builders, each.

<!-- 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/17003)
<!-- Reviewable:end -->
2017-05-27 21:08:18 -05:00
bors-servo
369d5cf124 Auto merge of #17058 - Manishearth:stylo-randomprops, r=emilio
stylo: Support remaning longhands

r=xidorn https://bugzilla.mozilla.org/show_bug.cgi?id=1367275

<!-- 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/17058)
<!-- Reviewable:end -->
2017-05-27 13:37:59 -05:00
Manish Goregaokar
ccccfb988a stylo: Support -moz-min-font-size-ratio 2017-05-27 11:37:36 -07:00
Manish Goregaokar
de269b6b36 stylo: Support -moz-context-properties 2017-05-27 10:47:44 -07:00
Manish Goregaokar
9ed5a7a05e stylo: Support font-variation-settings 2017-05-27 10:47:43 -07:00
bors-servo
6b1f039205 Auto merge of #17060 - upsuper:bug1363596, r=heycam
Support symbols() function and string value for list-style-type for stylo

This is the Servo side change of [bug 1363596](https://bugzilla.mozilla.org/show_bug.cgi?id=1363596).

<!-- 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/17060)
<!-- Reviewable:end -->
2017-05-27 07:09:30 -05:00
Xidorn Quan
a4674554e7 Update binding files. 2017-05-27 21:52:00 +10:00
Xidorn Quan
505809528c Add string support for list-style-type. 2017-05-27 21:51:58 +10:00
Simon Sapin
57438cffeb EventSource: decode UTF-8 code points across network packets 2017-05-27 13:34:24 +02:00
Simon Sapin
6ac106ca76 Remove some usage of rust-encoding 2017-05-27 13:34:23 +02:00
Xidorn Quan
1df685dc40 Add support for symbols() function. 2017-05-27 20:45:58 +10:00
Xidorn Quan
9f4a78c2d0 Merge nsCOMPtr<nsIAtom> into CounterStylePtr. 2017-05-27 20:45:51 +10:00
bors-servo
7275f65981 Auto merge of #17036 - servo:derive-all-the-things, r=emilio
Use values::generics::rect::Rect some more

<!-- 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/17036)
<!-- Reviewable:end -->
2017-05-27 05:41:12 -05:00
Xidorn Quan
856c296304 Update binding files from autoland. 2017-05-27 20:39:54 +10:00
bors-servo
b0c7c71729 Auto merge of #16989 - servo:packets, r=nox
Decode UTF-8 code points across network packets

<s>Depends on https://github.com/servo/html5ever/pull/272</s>

<!-- 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/16989)
<!-- Reviewable:end -->
2017-05-27 04:18:58 -05:00
bors-servo
00a5da36fb Auto merge of #16867 - MortimerGoro:update_offscreen_gl_ctx, r=jdm
Update offscreen_gl_context

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

Adds https://github.com/emilio/rust-offscreen-rendering-context/pull/97 and https://github.com/emilio/rust-offscreen-rendering-context/pull/98 required to run some WebGL demos

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

<!-- 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/16867)
<!-- Reviewable:end -->
2017-05-27 02:50:34 -05:00
Simon Sapin
4e4b5ab5c8 Decode UTF-8 code points across network packets 2017-05-27 09:01:45 +02:00
Manish Goregaokar
dd1cc6bb45 stylo: Support -moz-window-shadow 2017-05-26 22:34:03 -07:00
Manish Goregaokar
fae851b995 stylo: Support column-span 2017-05-26 22:33:05 -07:00
bors-servo
6706c81837 Auto merge of #17057 - Manishearth:nonac, r=emilio
Don't set root font size when styling NAC

try at https://treeherder.mozilla.org/#/jobs?repo=try&revision=ad4acc4941dd91d10e3646ecd7fa03576fc75342

<!-- 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/17057)
<!-- Reviewable:end -->
2017-05-27 00:18:01 -05:00
Manish Goregaokar
314d7d36e2 Don't set root font size when styling NAC
MozReview-Commit-ID: 12CEdFLSJTh
2017-05-26 22:06:44 -07:00
Lars Bergstrom
bf5728c750 Split out some mac builds 2017-05-26 18:50:24 -05:00
bors-servo
0bc7e2fddf Auto merge of #16997 - asajeffrey:webdriver-browsing-contexts-not-pipelines, r=jgraham
Webdriver browsing contexts not pipelines

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

At the moment, a webdriver session stores a `pipeline_id`s, which causes a mismatch with the spec, which asks a session to store a browsing context and a top-level browsing context. This PR fixes this mismatch.

---
<!-- 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 do not require tests because we are not testing webdriver

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

<!-- 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/16997)
<!-- Reviewable:end -->
2017-05-26 16:38:12 -05:00
Imanol Fernandez
a3e6db115d Update offscreen_gl_context to 0.8.9 2017-05-26 20:56:13 +02:00
Alan Jeffrey
3f761bed53 Responding to review comments. 2017-05-26 12:42:45 -05:00
bors-servo
0f5ccdb589 Auto merge of #17042 - mbrubeck:always-be-updating, r=jdm
Update dependencies

No Cargo.toml changes except `base64` which is updated from 0.4.2 to 0.5.2.  Does not affect stylo.  No new crates in the dependency graph.

<!-- 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/17042)
<!-- Reviewable:end -->
2017-05-26 12:18:12 -05:00
bors-servo
8747ccc9e8 Auto merge of #16920 - synlestidae:servo-16705, r=asajeffrey
Implement window.closed

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

Implements #16705. window.closed should evaluate to true if BrowsingContext is discarded

---
<!-- 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 #16705 (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. -->

<!-- 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/16920)
<!-- Reviewable:end -->
2017-05-26 10:10:36 -05:00
bors-servo
dbadf5a8b6 Auto merge of #17046 - dbaron:bug1367577, r=Manishearth
Fix stylo bindings for Gecko changes to nsITheme constants in bug 1367577

These changes fix the stylo bindings for the changes to the Gecko nsITheme constants in [bug 1367577](https://bugzilla.mozilla.org/show_bug.cgi?id=1367577).

I believe there isn't anything in these changes that should affect the stylo build (as opposed to the servo build, which I've tested on try in that bug).

<!-- 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/17046)
<!-- Reviewable:end -->
2017-05-26 08:48:39 -05:00
bors-servo
531fd12e13 Auto merge of #17050 - birtles:fix-base-styles, r=hiro
Fix calculation of base styles to drop animation rules

It seems that changeset 97ce9ed5b0 mistakenly changed the check that a cascade level to keep is *not* an animation level to a check that it *is* an animation level.

This patch has been reviewed by @hiikezoe in [Mozilla bug 1367960](https://bugzilla.mozilla.org/show_bug.cgi?id=1367960).

<!-- 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/17050)
<!-- Reviewable:end -->
2017-05-26 07:34:16 -05:00
bors-servo
7682de499c Auto merge of #17053 - chenpighead:stylo-svg-unitless-length, r=heycam
style: Compute and store SVG unitless length as a factor number

There are 3 SVG properties that accept SVG unitless length, stroke-width, stroke-dasharray, and stroke-dashoffset. We compute and store SVG unitless length as a factor number for stroke-dasharray, but not for stroke-width and stroke-dashoffset.

Servo-side changes from [bug 1367327] https://bugzilla.mozilla.org/show_bug.cgi?id=1367327.

<!-- 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/17053)
<!-- Reviewable:end -->
2017-05-26 03:40:38 -05:00
Jeremy Chen
800433aacb style: Compute and store SVG unitless length as a factor number.
Servo-side changes from [bug 1367327] https://bugzilla.mozilla.org/show_bug.cgi?id=1367327.
2017-05-26 16:05:36 +08:00
antunovicm
510bea7a7a Implement window.closed 2017-05-26 20:00:17 +12:00
bors-servo
ebb3dd8787 Auto merge of #17049 - jklepatch:fix_typo_in_browsingcontext.rs, r=jdm
Fixed typo in components/constellation/browsingcontext.rs

Changed a typo in a comment:
"Each browsing contest..." into "Each browsing context..."

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #17048
- [X] These changes do not require tests because its a typo 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/17049)
<!-- Reviewable:end -->
2017-05-26 00:24:06 -05:00
Glenn Watson
bcb0e58963 Update WR (mostly optimizations).
* Correctly handle degenerate border corner radii.
* Hold glyphs and images in resource cache longer.
* Optimize the primitive instance code.
* Texture cache coalescing optimizations.
* Workarounds for a couple of driver shader parsing issues.
* Optimize vertex format sizes.
2017-05-26 15:01:22 +10:00
Brian Birtles
4deab0f06a Fix calculation of base styles to drop animation rules
It seems that changeset 97ce9ed5b0
mistakenly changed the check that a cascade level to keep is *not* an
animation level to a check that it *is* an animation level.
2017-05-26 13:53:23 +09:00
jklepatch
bcdf6503fb Fixed typo in components/constellation/browsingcontext.rs 2017-05-26 12:26:43 +08:00
L. David Baron
de7411c43c
Servo changes for updated Gecko theme constants in bug 1367577.
This is a little bit odd, because I didn't want to do all the work to
convert the theme constants to an enum class (although that would be
nice to do in the future).  So this makes them a regular enum, but still
uses gecko_constant_prefix rather than gecko_enum_prefix because that
makes it possible to add the NS_THEME_ prefix that's still present.
2017-05-25 22:03:17 -04:00
L. David Baron
3332385186
Update bindings with Gecko change to nsITheme constants in bug 1367577.
This update picks up both the nsThemeConstants.h and ServoBindings.toml changes
in [bug 1367577](https://bugzilla.mozilla.org/show_bug.cgi?id=1367577).
2017-05-25 21:59:41 -04:00
bors-servo
764da7ba39 Auto merge of #17025 - emilio:layout-data, r=jdm
script/layout: Stop doing unsafe transmutes between refcell references.

This commit splits the style and layout data in two separate refcells.

These transmutes have been a source of trouble (for example on Android), and
they feel like a hack anyway.

Fixes #16982

<!-- 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/17025)
<!-- Reviewable:end -->
2017-05-25 19:58:47 -05:00
bors-servo
a961f6a1eb Auto merge of #17041 - Manishearth:root_font_size, r=emilio
Move root_font_size to the device

ComputedValues is heap allocated, and the number of CVs grows with the number of elements, so we should keep it small. The root_font_size is the same for the document, so we should stash it on the device and use that instead.

Gecko actually just manually walks up the tree here, but we can't do that. A simple AtomicRefcell should be enough.

Nothing else can be styled in parallel with the root so the refcell should never panic.

<!-- 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/17041)
<!-- Reviewable:end -->
2017-05-25 18:29:52 -05:00
Alan Jeffrey
79743b5358 Webdriver uses browsing context ids rather than pipeline ids. 2017-05-25 17:14:28 -05:00
Manish Goregaokar
ce2237e123 Move root_font_size to the device 2017-05-25 13:32:34 -07:00
Matt Brubeck
c58508dc52 Update dependencies 2017-05-25 12:34:36 -07:00
Eloy Coto
2151a1f459 FMT 2017-05-25 21:04:48 +02:00
UK992
0e072df8c3 Improve clean-cargo-cache 2017-05-25 20:44:16 +02:00
bors-servo
83f82cb4d3 Auto merge of #17039 - servo:jdm-patch-1, r=nox
Update openssl source download location.

The openssl.org webpage has been reorganized and the old URL no longer works.

<!-- 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/17039)
<!-- Reviewable:end -->
2017-05-25 12:20:20 -05:00