Commit graph

17558 commits

Author SHA1 Message Date
Ulf Nilsson
c8db7da36a Fix inline size adjustment when stripping trailing whitespace from fragments
The whitespace range was not properly shifted which caused us to adjust the fragment's inline size by the advance of a different set of characters.
This was causing justified text lines to be too long or too short.
2016-05-11 23:52:33 +02:00
bors-servo
a85db48623 Auto merge of #11134 - mbrubeck:style-rerun-if-changed, r=metajack
Explicitly list inputs to the style crate's build script

This avoids unncessary build script runs caused by changes to unrelated files.

Note: Adds a dependency on https://crates.io/crates/walkdir which is MIT licensed and maintained by BurntSushi.

r? @metajack

<!-- 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/11134)
<!-- Reviewable:end -->
2016-05-11 13:22:39 -07:00
bors-servo
7f76e3ba74 Auto merge of #11122 - mbrubeck:unify-builds, r=larsbergstrom
Use the same build environment and features for CEF, Servo, Gonk, Geckolib

* Remove unnecessary dependencies and features from top-level Cargo.tomls.  The features for each crate will be computed based on the union of features specified in the dependency graph.  Specifying the same ones again just adds more ways for them to get out of sync.
* Move all cargo build environment variables into CommandBase

Fixes #11112. r? @metajack

(Not included: CI test to make sure #11112 doesn't regress again.)

<!-- 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/11122)
<!-- Reviewable:end -->
2016-05-11 12:35:32 -07:00
bors-servo
fcebfcc113 Auto merge of #11135 - mbrubeck:cargo-home, r=larsbergstrom
Override $CARGO_HOME only if cargo-home-dir is in .servobuild

This preserves the fix from #11097 in the situation where `$CARGO_HOME` and `cargo-home-dir` in `.servobuild` are both present: `.servobuild` should win.

But it changes the behavior when `$CARGO_HOME` is present and `.servobuild` is not:  Then `$CARGO_HOME` should be used.

We now check the following values in order of priority and use the first one that is found:

1. `cargo-home-dir` in `.servobuild`
2. `CARGO_HOME` in the environment
3. default value (`<servo-repo>/.cargo`)

r? @larsbergstrom

<!-- 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/11135)
<!-- Reviewable:end -->
2016-05-11 11:37:05 -07:00
Matt Brubeck
ce5d9bc819 Override $CARGO_HOME only if cargo-home-dir is in .servobuild
This preserved the fix from #11097 in the situation where `$CARGO_HOME` and
`cargo-home-dir` in `.servobuild` are both present: `.servobuild` should win.

But it changes the behavior when `$CARGO_HOME` is present and `.servobuild` is
not:  Then `$CARGO_HOME` should be used.

We now check the following values in order of priority and use the first one
that is found:

1. `cargo-home-dir` in `.servobuild`
2. `CARGO_HOME_DIR` in the enivironment
3. default value (`<servo-repo>/.cargo`)
2016-05-11 11:11:16 -07:00
Matt Brubeck
65e6938291 Explicitly list inputs to the style crate's build script
This avoids unncessary build script runs caused by changes to unrelated files.
2016-05-11 10:46:33 -07:00
bors-servo
392135bd0c Auto merge of #11076 - izgzhen:fileapi, r=Ms2ger
Implement File DOM object interface

* Rewrite constructors of `Blob` and `File` with `DataSlice` as argument
* Update WebIDL of `Blob` and `File`
* Implement missing interfaces of `File` (However, due to lack of working `ArrayBuffer/ArrayBufferView` in `Blob`, so it still differs from spec)
* Update WPT test `File-constructor.html`

<!-- 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/11076)
<!-- Reviewable:end -->
2016-05-11 10:28:05 -07:00
Matt Brubeck
b2e874e151 Remove unnecessary dependencies and features from top-level Cargo.tomls
The features for each crate will be computed based on the union of features
specified in the dependency graph.  Specifying the same ones again just adds
more ways for them to get out of sync.
2016-05-11 08:46:55 -07:00
bors-servo
81246a7b61 Auto merge of #11118 - servo:jdm-patch-1, r=metajack
Create pull request template.

r? @metajack

<!-- 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/11118)
<!-- Reviewable:end -->
2016-05-11 08:36:14 -07:00
Zhen Zhang
87fec3e026 Implement missing interfaces of File DOM object 2016-05-11 22:35:21 +08:00
bors-servo
91cabf8427 Auto merge of #11113 - jdm:trace_browsingcontext, r=Ms2ger
Trace and finalize BrowsingContext

This is a prerequisite for merging #11044, and is an important correctness fix on its own.

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/11113)
<!-- Reviewable:end -->
2016-05-11 05:43:41 -07:00
Josh Matthews
a85e659b29 Ensure that the fields of BrowsingContext are traced and the Rust object is freed when the reflector is finalized. 2016-05-11 08:34:50 -04:00
Josh Matthews
6123ce8649 Add logging for shutting down non-root pipelines in the script thread. 2016-05-11 08:34:49 -04:00
Josh Matthews
293d465c59 Make debug logging for tracing JS objects more informative. 2016-05-11 08:34:48 -04:00
bors-servo
b61ad4190f Auto merge of #11029 - izgzhen:filemanager_thread, r=Manishearth
Add FileManagerThread

This is intended to support the File API implementation. Basically an event loop with three kinds of messages:

+ Select a file
+ Read a file with ID
+ Delete the ID from manager-owned map

The design decision in this PR is not the final (or best I think) version, welcome reviews :)

TODOs:

- [x] Add multiple file selection

<!-- 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/11029)
<!-- Reviewable:end -->
2016-05-11 04:28:58 -07:00
bors-servo
3636b00e6f Auto merge of #11056 - ConnorGBrewster:formsubmitter_test, r=KiChjang
Added tests for formsubmitter methods

Fixes #11047.

I decided to add on to the other test since this test would have overlap with testing `encytype` from submitting with various different element.

<!-- 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/11056)
<!-- Reviewable:end -->
2016-05-11 02:35:58 -07:00
bors-servo
98863746ae Auto merge of #11125 - pcwalton:reddit-block-formatting-context-fix, r=mbrubeck
layout: Take margins in the inline direction into account when guessing the inline-size of block formatting contexts.

Fixes the layout on reddit.com.

Partially addresses #10571.

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/11125)
<!-- Reviewable:end -->
2016-05-11 00:41:00 -07:00
Zhen Zhang
c618ee21d0 add filemanager_thread 2016-05-11 15:14:03 +08:00
bors-servo
190103a7d7 Auto merge of #11104 - heycam:outline-width, r=bholley
Support outline-width in geckolib

While here, we make border-*-width round to pixels like Gecko does.

<!-- 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/11104)
<!-- Reviewable:end -->
2016-05-10 22:20:51 -07:00
Matt Brubeck
cce565466d Move all cargo build environment variables into CommandBase 2016-05-10 20:16:55 -07:00
Cameron McCormack
0c92350479 Support outline-width in geckolib. 2016-05-11 12:58:10 +10:00
Cameron McCormack
4c249968d9 Round border-*-width values to pixels in geckolib. 2016-05-11 12:55:46 +10:00
bors-servo
20f0be20d7 Auto merge of #10987 - shinglyu:flex-reverse, r=shinglyu
Bug #10181 - Implement *-reverse flex-directions

<!-- 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/10987)
<!-- Reviewable:end -->
2016-05-10 19:51:04 -07:00
Shing Lyu
89586ed3d8 Bug #10181 - Implement *-reverse flex-directions 2016-05-11 10:30:02 +08:00
bors-servo
a834bc1ec7 Auto merge of #11086 - heycam:radius, r=bholley
Support border/outline-radius properties in geckolib.

<s>Because of the way Gecko stores outline-width in nsStyleOutline::mOutlineWidth (i.e., as its specified value for keywords) we need separate property implementations for servo/gecko products.</s>

The -moz-outline-radius parsing is a bit of a hack; I was just avoiding the effort of factoring out the parsing into a separate method. Let me know if I should do that.

<s>Gecko-side changes are https://bugzilla.mozilla.org/show_bug.cgi?id=1271168.</s>

<!-- 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/11086)
<!-- Reviewable:end -->
2016-05-10 19:00:09 -07:00
Cameron McCormack
ad7cfcbb7e Support -moz-outline-radius shorthand in geckolib. 2016-05-11 11:10:44 +10:00
Cameron McCormack
2b8f809852 Allow shorthands to be restricted to specific products. 2016-05-11 11:10:42 +10:00
Cameron McCormack
a12493f5fe Support -moz-outline-radius-* in geckolib. 2016-05-11 11:10:41 +10:00
Cameron McCormack
3491e16f06 Support border-*-radius in geckolib. 2016-05-11 11:10:40 +10:00
Patrick Walton
b6bed345f5 layout: Take margins in the inline direction into account when
guessing the inline-size of block formatting contexts.

Fixes the layout on reddit.com.

Partially addresses #10571.
2016-05-10 17:11:28 -07:00
Connor Brewster
f67b1667a5 Added tests for formsubmitter methods 2016-05-10 17:20:19 -06:00
bors-servo
8fab68d6a9 Auto merge of #11119 - mbrubeck:trace-path, r=jdm
Make --profile-trace-path work without -p

Currently `--profile-trace-path` has no effect if `-p` isn't also passed, because the time profiler doesn't start.

<!-- 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/11119)
<!-- Reviewable:end -->
2016-05-10 16:00:45 -07:00
bors-servo
40be84df26 Auto merge of #11115 - mbrubeck:openssl-verify, r=jdm
Use openssl-verify to check certificate + hostname

Fixes #4954.  r? @jdm

This is based on hyperium/hyper#472, though it doesn't re-use that code directly because Servo configures its own OpenSSL context.

<!-- 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/11115)
<!-- Reviewable:end -->
2016-05-10 15:00:48 -07:00
bors-servo
1fd9c55834 Auto merge of #11103 - pcwalton:mac-font-matching, r=metajack
gfx: Map CSS `normal` font weight to Regular font weight on the Mac.

This series of commits fixes #9487, and improves the look of nytimes.com among others.

r? @metajack

<!-- 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/11103)
<!-- Reviewable:end -->
2016-05-10 14:11:35 -07:00
Matt Brubeck
c4f9576368 Make --profile-trace-path work without -p 2016-05-10 14:03:10 -07:00
bors-servo
069be91e84 Auto merge of #11109 - kaksmet:justify-fix, r=mbrubeck
Make `text-align: justify` incremental layout safe

Closes #10499
Closes #9057

<!-- 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/11109)
<!-- Reviewable:end -->
2016-05-10 12:54:26 -07:00
Josh Matthews
3345d15f42 Create pull request template. 2016-05-10 15:38:47 -04:00
bors-servo
82cc51280e Auto merge of #11041 - fabricedesre:armv7, r=larsbergstrom
armv7 update

<!-- 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/11041)
<!-- Reviewable:end -->
2016-05-10 11:54:42 -07:00
Matt Brubeck
5695da0c38 Use openssl-verify to check certificate + hostname
Fixes #4954.
2016-05-10 11:30:11 -07:00
Matt Brubeck
c344461017 Move http_loader::Connector to a separate module 2016-05-10 11:20:32 -07:00
bors-servo
0c673ef3a2 Auto merge of #11049 - asajeffrey:webdriver-delete-session, r=jgraham
Added webdriver delete session command.

Delete session is needed by the web platform test `webdriver/navigation.py`.

<!-- 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/11049)
<!-- Reviewable:end -->
2016-05-10 11:05:12 -07:00
Alan Jeffrey
bbf9eca042 Added delete session command. 2016-05-10 13:00:12 -05:00
Patrick Walton
6d0e4de2c2 tests: Update test expectations. 2016-05-10 10:34:30 -07:00
Patrick Walton
376c6b34ce gfx: Implement Debug for FontTemplate instances. 2016-05-10 10:34:29 -07:00
Patrick Walton
3addd775a5 gfx: Change the mapping from Mac weights to CSS weights so that 0.0 maps
to 400, not 500.

CSS `normal` font-weight is specified as 400, while Mac "Regular" font
weight is reported as 0.0. On the Mac, we need to center the two ranges
on the same value to avoid choosing "Light" fonts where "Regular" would
have been more appropriate.

Closes #9487.

fix for mac
2016-05-10 10:34:29 -07:00
Patrick Walton
479c6c9c42 gfx: Perform fuzzy matching on font weights if an exact match wasn't
found.

Partially addresses #190.
Partially addresses #9487.
2016-05-10 10:34:28 -07:00
bors-servo
0617727f5b Auto merge of #11097 - saneyuki:cargo_home, r=larsbergstrom
Override always 'CARGO_HOME' env variable.

This use always `cargo-home-dir` in `/.servobuild` even if you set `CARGO_HOME` in your shell.

If you use [racer][racer] with [rustup (multirust.rs)][rustup], you may set `CARGO_HOME` env variable to your shell. Then the previous code would be a problem which does not use `cargo-home-dir` in `/.servobuild`.

[racer]: https://github.com/phildawes/racer
[rustup]: https://github.com/rust-lang-nursery/rustup.rs

<!-- 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/11097)
<!-- Reviewable:end -->
2016-05-10 08:20:47 -07:00
Ulf Nilsson
0f983cd11f Make text-align: justify incremental layout safe 2016-05-10 15:46:22 +02:00
bors-servo
835f443865 Auto merge of #11098 - fitzgen:update-trace-dump, r=jdm
Update `trace-dump.{js,css}` from upstream

Part of making the trace-dump.js code unit testable was moving it out to another
repo. This brings in all the changes made while writing unit tests, and making
the code more unit testable.

Unfortunately, there are a lot of whitespace changes; here is the diff ignoring whitespace: https://pastebin.mozilla.org/8870346

Fixes #10905.

r? @jdm

<!-- 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/11098)
<!-- Reviewable:end -->
2016-05-10 06:34:32 -07:00
Zhen Zhang
f43009333f Rewrite Blob constructor interface 2016-05-10 20:19:10 +08:00