Commit Graph

973 Commits

Author SHA1 Message Date
Simon Sapin
ce39d5cda4 servo: Merge #12319 - Use a stable compiler for build-geckolib (from servo:stable-geckolib); r=larsbergstrom+SimonSapin
<!-- 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 #11815 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because CI already runs `./mach build-geckolib`

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

Source-Repo: https://github.com/servo/servo
Source-Revision: e50e4f99bf4668d183226251d8ea55fa36f72fe0
2016-07-08 16:20:14 -07:00
Xidorn Quan
dfc5204fe3 servo: Merge #12338 - Fix geckolib build for Windows (from upsuper:win-geckolib-fix); r=bholley
It contains several fixes to make `./mach build-geckolib` work on Windows.

Source-Repo: https://github.com/servo/servo
Source-Revision: 35a23bfef394fe451879f09979167b048a7bdc88
2016-07-08 11:14:48 -07:00
Ms2ger
aa21d1fab9 servo: Merge #12311 - Move the cache module out of util (from Ms2ger:cache); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: d475a277eebaa7d91d1b070b169e205b4c533c4f

--HG--
rename : servo/tests/unit/util/cache.rs => servo/tests/unit/style/cache.rs
2016-07-08 07:46:00 -07:00
Bobby Holley
77781c7a5d servo: Merge #12329 - Geckolib: Trivial binding regeneration (from bholley:binding_regen); r=emilio
Mostly just want to get the blacklist fix in-tree.

r? emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: bc45f85a60cc1f0e7a3419e84f809fcfa16d3baf
2016-07-07 22:04:04 -07:00
gozala
5631cd2452 servo: Merge #12302 - Update browserhtml version to 0.1.15 (from Gozala:bhtml@0.1.15); r=ConnorGBrewster
Update browserhtml version to 0.1.15

---
<!-- 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~~
- [x] These changes do not require tests because it just updates dependency

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 0eed0e0b1e5ab2fc69ce64d5a0dd8c21d770092b
2016-07-07 17:20:02 -07:00
Jim Berlage
3c9046aeb4 servo: Merge #12299 - Fix up shell scripts (from jimberlage:fixup-scripts); r=emilio
<!-- Please describe your changes on the following line: -->
This brings these two scripts in line with the style guidelines.

---
<!-- 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
- [X] These changes do not require tests because it's a small change to bring some shell scripts in line with the style guide

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 1f5c26a320af170a44f43dee4dcb076a6c5593e2
2016-07-07 16:24:52 -07:00
Matt Brubeck
cb17b2da08 servo: Merge #12294 - Update num_cpus, libc, openssl, threadpool, smallvec, string_cache, gleam, gl_generator, x11 (from mbrubeck:always-be-updating); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: d0ab03bb294b91e47ca929464ab71e7c42ff2e9a
2016-07-07 15:22:13 -07:00
Josh Matthews
57518b13d8 servo: Merge #11950 - Support non-QWERTY keyboards (from jdm:keylayout2); r=emilio
Using the ReceivedCharacter event from glutin, we can obtain the actual key characters that the user is pressing and releasing. This gets passed to the script thread along with the physical key data, since KeyboardEvent needs both pieces of information, where they get merged into a single logical key that gets processed by clients like TextInput without any special changes.

Tested by switching my macbook keyboard to dvorak and looking at the output of keypress/keyup/keydown event listeners, as well as playing with tests/html/textarea.html. Non-content keybindings like reload work as expected, too - the remapped keybinding triggers the reload action.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #4144
- [X] These changes do not require tests because I can't think of a way to test remapped keyboard input

Fixes  #11991.

Source-Repo: https://github.com/servo/servo
Source-Revision: 68fb9ebc413f9cfc1ad4ca578d904c164836db74
2016-07-06 02:51:50 -07:00
Emilio Cobos Álvarez
ee9d35391e servo: Merge #12212 - stylo: Move all binding-generator logic code to a python script (from emilio:stylo-regen-script); r=bholley
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because tooling

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

---

This not only makes us more consistent with the rest of the codebase but also:

 * Makes us repeat less code like common flags and all that stuff.
 * Reduces the noise of the build: You only get the output of the commands on
   failure or when you pass the -v flag.
 * Makes you able to select a single kind of build or multiple in the same
   place.

I've basically kept the regen.sh script because of the LIBCLANG_PATH checks, but
at least from Linux I don't need them anymore. Also, that logic could be moved
to the new script.

The whole point of this isn't only making it prettier and easier to use, but
also allowing me to write more complex logic in the binding generator scripts,
that I will probably need to integrate the DOM enum types we need for animations
and such easily (can't be just an include, because that pulls in another header
with the same name bringing a lot of DOM and IDL churn).

For reference, here's a successful regen round with the script:

```
./regen.py --target all /home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/
[BINDGEN] structs::release in "/home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/"... OK
[RUSTC]... OK
[RUSTC_TEST]... OK
test result: ok. 168 passed; 0 failed; 0 ignored; 0 measured
[BINDGEN] structs::debug in "/home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/"... OK
[RUSTC]... OK
[RUSTC_TEST]... OK
test result: ok. 169 passed; 0 failed; 0 ignored; 0 measured
[BINDGEN] bindings::None in "/home/emilio/projects/moz/stylo/gecko/obj-x86_64-pc-linux-gnu/"... OK
```

---

r? @bholley

Maybe @jgraham and/or @Wafflespeanut want to take a look to criticize my (lack of) pythonism ;-)

Source-Repo: https://github.com/servo/servo
Source-Revision: e78459e6670b218970dfebb189a0c8ef7614951f
2016-07-06 00:12:58 -07:00
Bobby Holley
ba2f2c1399 servo: Merge #11886 - Refactor attribute handling to avoid marshalling attributes from Gecko into Servo (from bholley:attr_refactor); r=SimonSapin
This marshaling is slow, because Gecko stores attributes as UTF-16 and does not atomize them in all cases, and it turns out that the need for them in Servo is pretty minimal. With some refactoring across servo and rust-selectors we can fix this.

Source-Repo: https://github.com/servo/servo
Source-Revision: abdf2f28a0bd25a76a31b4fd2410c7a87448ed54
2016-07-05 18:55:36 -07:00
Simon Sapin
a7297026ea servo: Merge #12263 - Make geckolib possible to build on stable Rust (from servo:stable-geckolib); r=nox
<!-- Please describe your changes on the following line: -->

More for https://github.com/servo/servo/issues/11815

r? @nox

---
<!-- 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
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d557b6f25eb9dbd084cb53bbc9a9cf93bad825b
2016-07-05 15:04:42 -07:00
mrmiywj
4b5a78e0a8 servo: Merge #11794 - when window gains focus, update mouse coordinate (from mrmiywj:update-mouse-coordinate-when-focus); r=KiChjang
<!-- 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: -->
- [ ] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #11130 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because these cannot be tested automated.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: d99ff8d8570dbf56b1812ef9451a6a8c3784c6c8
2016-07-05 10:18:49 -07:00
Gabriel Poesia
2ef28aab03 servo: Merge #11945 - Add mach build-stable to build with stable rustc (from gpoesia:master); r=SimonSapin
<!-- Please describe your changes on the following line: -->

Added mach subcommand (build-stable) to build servo and its dependencies using a stable version of rustc.

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

<!-- Either: -->
- [X] These changes do not require tests because they're in the build process. I've manually tested both build and build-stable several times and in different orders and it seems to work. If the mach subcommands are tested automatically somewhere, I'll be happy to add a test, but I couldn't find it.

This is an example of output I get, which is what I'd expect:

```plain
[gpoesia@gabriel-notebook servo]$ ./mach build
looking for rustc at /home/gpoesia/dev/servo/.servo/rust/2016-06-24/rustc-nightly-x86_64-unknown-linux-gnu/rustc/bin/rustc
Downloading Rust compiler...
Downloading Rust compiler: 100.0%
Extracting Rust compiler...
Rust compiler ready.
Downloading Host rust library for target x86_64-unknown-linux-gnu...
Downloading Host rust library for target x86_64-unknown-linux-gnu: 100.0%
Extracting Rust stdlib for target x86_64-unknown-linux-gnu...
Rust x86_64-unknown-linux-gnu libs ready.
Build completed in 0:00:01
[gpoesia@gabriel-notebook servo]$ ./mach build
Build completed in 0:00:02
[gpoesia@gabriel-notebook servo]$ ./mach build-stable
looking for rustc at /home/gpoesia/dev/servo/.servo/rust/rustc-1.9.0-x86_64-unknown-linux-gnu/rustc/bin/rustc
Rust compiler already downloaded. Use |bootstrap-rust --force| to download again.
Rust lib for target x86_64-unknown-linux-gnu already downloaded. Use |bootstrap-rust --force| to download again.
   Compiling log v0.3.6
   Compiling tenacious v0.2.1
   Compiling traitobject v0.0.1
   Compiling azure v0.4.6 (https://github.com/servo/rust-azure#4d72934a)
   Compiling crossbeam v0.2.9
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:1:1: 1:42 error: #[feature] may not be used on the stable release channel
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:1 #![feature(plugin_registrar, box_syntax)]
                                                                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:3:1: 3:27 error: #[feature] may not be used on the stable release channel
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/tenacious-0.2.1/src/lib.rs:3 #![feature(rustc_private)]
                                                                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
error: aborting due to 2 previous errors
Build failed, waiting for other jobs to finish...
error: Could not compile `tenacious`.

To learn more, run the command again with --verbose.
Build completed in 0:00:03
[gpoesia@gabriel-notebook servo]$ ./mach build-stable
looking for rustc at /home/gpoesia/dev/servo/.servo/rust/rustc-1.9.0-x86_64-unknown-linux-gnu/rustc/bin/rustc
Rust compiler already downloaded. Use |bootstrap-rust --force| to download again.
Rust lib for target x86_64-unknown-linux-gnu already downloaded. Use |bootstrap-rust --force| to download again.
   Compiling js v0.1.3 (https://github.com/servo/rust-mozjs#707bfb4f)
   Compiling serde_item v0.2.0
   Compiling encoding-index-tradchinese v1.20141219.5
   Compiling angle v0.1.0 (https://github.com/servo/angle?branch=servo#d0a2db05)
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/serde_item-0.2.0/src/lib.rs:3:43: 3:74 error: #[feature] may not be used on the stable release channel
/home/gpoesia/dev/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/serde_item-0.2.0/src/lib.rs:3 #![cfg_attr(not(feature = "with-syntex"), feature(rustc_private, plugin))]
                                                                                                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
error: aborting due to previous error
Build failed, waiting for other jobs to finish...
error: Could not compile `serde_item`.

To learn more, run the command again with --verbose.
Build completed in 0:00:37
[gpoesia@gabriel-notebook servo]$
```

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

Github issue: #11806
Building with current stable rust (1.9.0) still fails because of
feature pragmas in some dependencies (e.g. serde_item).

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e1db061c039d6e7635310c0c728cfb959322249

--HG--
rename : servo/resources/shaders/debug_color.fs.glsl => servo/ports/stable-rust/src/lib.rs
2016-07-05 07:17:48 -07:00
Anthony Ramine
0f1c59e62d servo: Merge #12256 - Move some stuff from util to style (from nox:die-util-die); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: bb916bb38bc4298477bfc8134b94dc906054bce1

--HG--
rename : servo/components/util/str.rs => servo/components/style/str.rs
rename : servo/components/util/tid.rs => servo/components/style/tid.rs
rename : servo/tests/unit/util/str.rs => servo/tests/unit/style/str.rs
2016-07-05 02:04:42 -07:00
Ms2ger
8cd2913d9b servo: Merge #12216 - Move some types from msg to script_traits (from servo:msg); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 181261004d3b217605cb2d8fbdc00ad0785532ba

--HG--
rename : servo/components/msg/webdriver_msg.rs => servo/components/script_traits/webdriver_msg.rs
2016-07-05 00:58:51 -07:00
Anthony Ramine
cc183b15a7 servo: Merge #12224 - Remove some stuff from util (from nox:die-util-die); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 3b0dadda529a5ba45a8a0dc394187f43a66e7c1f

--HG--
rename : servo/components/util/print_tree.rs => servo/components/gfx_traits/print_tree.rs
rename : servo/components/util/workqueue.rs => servo/components/style/workqueue.rs
2016-07-04 12:57:00 -07:00
Eduard Burtescu
da092febcb servo: Merge #11872 - Replace return_address usage for rooting with stack guards and convenience macros (from eddyb:back-to-roots); r=Ms2ger
The existing `Rooted` and `RootedVec` users were migrated the the following two macros:
```rust
let x = Rooted::new(cx, value);
// Was changed to:
rooted!(in(cx) let x = value);
// Which expands to:
let mut __root = Rooted::new_unrooted(value);
let x = RootedGuard::new(cx, &mut __root);
```
```rust
let mut v = RootedVec::new();
v.extend(iterator);
// Was changed to:
rooted_vec!(let v <- iterator);
// Which expands to:
let mut __root = RootableVec::new();
let v = RootedVec::new(&mut __root, iterator);
```

The `rooted!` macro depends on servo/rust-mozjs#272.
These APIs based on two types, a container to be rooted and a rooting guard, allow implementing both `Rooted`-style rooting and `Traceable`-based rooting in stable Rust, without abusing `return_address`.

Such macros may have been tried before, but in 1.9 their hygiene is broken, they work only since 1.10.

Sadly, `Rooted` is a FFI type and completely exposed, so I cannot prevent anyone from creating their own, although all fields but the value get overwritten by `RootedGuard::new` anyway.
`RootableVec` OTOH is *guaranteed* to be empty when not rooted, which makes it harmless AFAICT.

By fixing rust-lang/rust#34227, this PR enables Servo to build with `-Zorbit`.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix rust-lang/rust#34227
- [x] These changes do not require tests because they are not functional changes

Source-Repo: https://github.com/servo/servo
Source-Revision: 80cb0cf8214fd52d2884724614c40cb278ee7575
2016-07-04 11:03:35 -07:00
Zhen Zhang
182611cd28 servo: Merge #11875 - Integration and improvements of File API backends (from izgzhen:file-manager-backend); r=Manishearth
Basically three major changes:

1. More complete origin check in `FileManagerThreadMsg`
2. Add reference counting logic to file manage store and script API
3. Integrate the support of slicing

r? @Manishearth

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 36974f0746261b971c93ed7dfb9bd726675ccf69
2016-07-04 09:15:23 -07:00
Johann Hofmann
cadd7fcc4b servo: Merge #12050 - Switch to a faster Brotli crate (from johannhof:brotli); r=jdm
<!-- 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 #11933.

<!-- Either: -->
- [x] These changes do not require tests (I hope) because no new behavior was introduced

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c8b048e368d4f9de08011b89e530ba9075e08ec3
2016-07-03 18:32:15 -07:00
Corey Farwell
df29454b47 servo: Merge #12178 - Refactor util::prefs operations to be methods on static struct (from frewsxcv:prefs); r=emilio
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: b0a8ce5341f5148e36523fee0b0fcbc2684c0a68
2016-07-03 08:19:04 -07:00
Emilio Cobos Álvarez
a30280736f servo: Merge #11972 - Staticize CASCADE_PROPERTIES, (temporarily) fix stylo path for animations, and introduce the long-term path to follow (from emilio:style-thingies); r=bholley
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because refactoring + geckolib

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

@bholley: I was going to do this "the good way", but that involves quite a few properties, so I thought I'd rather unlock stylo before :)

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: a77cc9950fb13ccd674a10e46c2327bfa0735dab
2016-07-02 13:27:25 -07:00
Matt Brubeck
0a92a35afc servo: Merge #12112 - Update image (from mbrubeck:always-be-updating); r=ConnorGBrewster
Fixes #12094

Source-Repo: https://github.com/servo/servo
Source-Revision: c47b7944b03febb624ee36654e2e2cc2d20fb783
2016-07-02 10:49:09 -07:00
Emilio Cobos Álvarez
b3b8f4ed55 servo: Merge #11946 - style: Remove the Mutex from new_animations_sender by moving it to the local StyleContext (from emilio:animations-sender); r=bholley
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because refactoring.

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

As a follow-up, we could move all the data living under a mutex in the
SharedLayoutContext only in order to create the local context to the same place.

This should increase animation performance when there are multiple animations in
one page that happen to be on different threads.

r? @SimonSapin/@mbrubeck for the style/layout, @bholley for the geckolib changes

Source-Repo: https://github.com/servo/servo
Source-Revision: ec0d3e084dbaecf749a67ba52e5f680262960a29
2016-07-01 14:12:54 -07:00
Patrick Walton
97fc7c2171 servo: Merge #11979 - Update Glutin to pick up borderless window performance fixes on Mac (from ConnorGBrewster:glutinupupup)
Source-Repo: https://github.com/servo/servo
Source-Revision: 4f81384d6132aa3778293ce3bb26a489325fddc3
2016-07-01 00:07:23 -05:00
Lars Bergstrom
53a7f8591b servo: Merge #11977 - Rollup of 2 pull requests (from larsbergstrom:rollup); r=larsbergstrom
- Successful merges: #11975, #11976
- Failed merges:

Source-Repo: https://github.com/servo/servo
Source-Revision: 63d99c188cbc37a907e887a61e762300f60960d6
2016-06-30 21:26:47 -05:00
Glenn Watson
d4a69ab631 servo: Merge #11973 - Update WR for demo fixes (from glennw:demo-fix); r=ConnorGBrewster
<!-- 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: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 851931124d1258b235a696a28d9c2277984726eb
2016-06-30 19:41:47 -05:00
Paul Rouget
5e7bbb293a servo: Merge #11954 - update browserhtml (from paulrouget:bhtmlUpdate); r=Wafflespeanut
Another browserhtml update to pick performance improvements.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2ff6c3526313b9c0467e26f0236ae2578b7e57c5
2016-06-30 07:14:33 -05:00
Nikhil Shagrithaya
12a37a2249 servo: Merge #11952 - Creates KeyModifiers value using empty() instead of from_bits() (from cynicaldevil:master); r=Ms2ger
<!-- 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 #11935 .

<!-- Either: -->
- [X] These changes do not require tests because: @jdm said so :P

Source-Repo: https://github.com/servo/servo
Source-Revision: 87d08eb4e8282f591261250d6b1d061fbb0584b6
2016-06-30 06:19:29 -05:00
Paul Rouget
a73c6e33fa servo: Merge #11951 - browerhtml update (from paulrouget:bhtmlUpdate); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 2b2b6a3d0c011143ea133e415c6adf3a34bcfbdd
2016-06-30 05:18:11 -05:00
Patrick Walton
81b140e5d1 servo: Merge #11949 - compositing: Only recomposite after a scroll if layers actually moved, and fix the jerky scrolling "pops" during flings on Mac (from servo:wr); r=glennw
See the comments in compositor.rs for more details.

Fixes #11658.

Source-Repo: https://github.com/servo/servo
Source-Revision: 26d2ee635589776a08e5671b6b6d673d165a5dc6
2016-06-30 04:03:43 -05:00
Emilio Cobos Álvarez
95f8445e20 servo: Merge #11925 - stylo: Simplify setup_bindgen.sh now that servo/rust-bindgen exists (from emilio:stylo-simplify-bindgen-setup); r=bholley
<!-- 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

<!-- Either: -->
- [x] These changes do not require tests because they are infra changes.

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

The clang-3.8 instead of clang++-3.8 check is because on some Linux distros
clang++-3.8 doesn't exists, while the former does.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 77a0e269674fc09f4f8b37c4f91e05f2f2d3d6bd
2016-06-29 14:44:53 -05:00
Paul Rouget
6b1ebd715d servo: Merge #11922 - browserhtml update (from paulrouget:bhtmlUpdate); r=glennw
<!-- Please describe your changes on the following line: -->

Fix #11905

Source-Repo: https://github.com/servo/servo
Source-Revision: 62f7e8fe4bff080b42831e087ee69428424927cc
2016-06-29 00:26:38 -05:00
Emilio Cobos Álvarez
c399260cd8 servo: Merge #11766 - Add @keyframes and animation-* support (from emilio:keyframes-parsing); r=SimonSapin,pcwalton
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [x] There are tests for these changes

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

This adds support for parsing `@keyframes` rules, and animation properties. Stylo will need it sometime soonish, plus I want to make animations work in Servo.

The remaining part is doin the math and trigger the animations correctly from servo. I don't expect it to be *that* hard, but probaby I'll need to learn a bit more about the current animation infra (e.g. why the heck is the `new_animations_sender` guarded by a `Mutex`?).

I'd expect to land this, since this is already a bunch of work, this is the part exclusively required by stylo (at least if we don't use Servo's machinery), the media query parsing is tested, and the properties land after a flag, but if you prefer to wait until I finish this up it's fine for me too.

r? @SimonSapin

cc @pcwalton @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: d3a81373e44634c30d31da0457e1c1e86c0911ed
2016-06-28 17:31:01 -05:00
Darin Minamoto
cb4941f6d7 servo: Merge #11824 - Use get_mut instead of get-remove-set in XHR send() (from DarinM223:master); r=KiChjang
<!-- Please describe your changes on the following line: -->
Mutates the header directly with get_mut instead of using get(), remove(), and set().
---
<!-- 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 #11811  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because there are existing web tests

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

Source-Repo: https://github.com/servo/servo
Source-Revision: a3f43076b6b30491dcb4d9b8cc1ae32261a82f99
2016-06-28 14:06:17 -05:00
Anthony Ramine
82df62fcd8 servo: Merge #11892 - Use wrappers for GL IDs (from nox:webgl-wrappers); r=emilio
See https://github.com/servo/webrender_traits/pull/62.

Source-Repo: https://github.com/servo/servo
Source-Revision: dca85ae98d620723eb7466615d11a032c58d5ca3
2016-06-28 13:13:44 -05:00
Simon Sapin
4e964a6581 servo: Merge #11884 - Replace usage of std::intrinsics::discriminant_value with match (from servo:antidiscrimination); r=nox
<!-- Please describe your changes on the following line: -->

Replace usage of `std::intrinsics::discriminant_value` with per-enum generated code that uses `match` expressions. The LLVM IR shows that this optimizes well in release mode.

---
<!-- 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 part of #11815.

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require new tests because they shouldn’t change any behavior.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 810735a846c65b2a6a2dd2ef6b7e476931ff55a1
2016-06-28 09:02:43 -05:00
Ms2ger
f660aeb599 servo: Merge #11883 - Some bindings improvements (from Ms2ger:bindings-refactor); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 00af25b6855b1c3cd2ddf5119478e9119efaffd9
2016-06-27 18:07:07 -05:00
Anthony Ramine
68261846c3 servo: Merge #11871 - Update Rust to 1.11.0-nightly (ad7fe6521 2016-06-23) (from servo:rustup); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e3e5a51ff692635e7eabd2b244a975686f1064c4
2016-06-27 09:47:34 -05:00
Dan Robertson
827980c736 servo: Merge #10826 - Add webdriver commands for (Get|Add)Cookie (from danlrobertson:cookies); r=asajeffrey
Add the webdriver commands for GetCookie and AddCookie. In addition the basic messages for sending cookie data back and forth from the resource thread needed to be created and the handlers for those messages were created as well.

Do we plan to have some sort of test suite for the webdriver at some point? At this point I primarily test my PRs with basic shell scripts with a lot of `curl` and `jq`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 054bb381e94b82fad4e502bc0f3229f39195c713
2016-06-26 03:19:14 -05:00
Ms2ger
304be268ab servo: Merge #11852 - Move ChromeToPaintMsg to gfx_traits (from Ms2ger:ChromeToPaintMsg); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 9ee0a01f66b4b6fcbfd86e0316d6aed35ef99ebf
2016-06-25 00:26:37 -05:00
Cameron McCormack
e9b215b857 servo: Merge #11787 - Stop parsing style attributes during restyle in geckolib (from heycam:style-attr); r=bholley
<!-- Please describe your changes on the following line: -->

This allows `PropertyDeclarationBlock`s parsed for `style=""` attributes to be stored on a Gecko node so that we don't have to re-parse it each time we compute style for an element.  Works with [Gecko bug 1280772](https://bugzilla.mozilla.org/show_bug.cgi?id=1280772).

r? @bholley
CC @emilio

---

<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 581c8ba1c867ad378dee79b05b11648726ce5efb
2016-06-23 21:46:25 -05:00
Jack Moffitt
58d151c6f1 servo: Merge #11845 - Update angle and rust-mozjs to fix linking symbols for CEF (from metajack:updates-for-cef); r=jdm
<!-- Please describe your changes on the following line: -->
CEF linking is currently failing. This makes linking work. This is a partial fix for #8883.
---
<!-- 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
- [x] These changes do not require tests because no tests exist yet

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

Source-Repo: https://github.com/servo/servo
Source-Revision: ba30d72679f59fbabef9dbaa107d756903dde2af
2016-06-23 19:22:47 -05:00
mrmiywj
f80f6f7953 servo: Merge #11735 - add reload keyboard shortcut (from mrmiywj:reload-page-shortcut); r=jdm
<!-- 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 #11686  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this cannot be automated tested.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: eeed5b6ec26f7d78a938abb2d4b6a1cce8bf2472
2016-06-23 10:58:54 -05:00
Shing Lyu
e2034c0afe servo: Merge #11743 - Implementing Box Sizing for Stylo (from shinglyu:stylo-box-sizing); r=emilio
<!-- Please describe your changes on the following line: -->
Implementing box-sizing for Stylo
---
<!-- 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: c04d245bf2858fea1ef6ad4587b8b55be0f4b1eb
2016-06-23 10:09:11 -05:00
Simon Sapin
7649cc9cad servo: Merge #11835 - Use our copy of RefCell for style data (from servo:diy-as-unsafe-cell); r=nox
<!-- Please describe your changes on the following line: -->

This allows removing `#![feature(as_unsafe_cell)]` in geckolib and make progress towards #11815.

---
<!-- 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 part of #11815.

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require new tests because they don’t introduce no functional changes.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 3de14d9ca0cf54e6a2ae4eac5ff47e38e724b77b
2016-06-23 09:19:28 -05:00
Manish Goregaokar
c6abaf0e6a servo: Merge #11830 - Support column-width property in geckolib (from Manishearth:stylo-column-width); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 0080a148597cd7c9fa4ea7f76275fabf16c785d3
2016-06-23 06:55:15 -05:00
Simon Sapin
51cb7b11ec servo: Merge #11827 - Generate geckolib structs with -no-bitfield-methods (from servo:geckolib-no-const-fn); r=emilio
<!-- Please describe your changes on the following line: -->

This makes rust-bindgen not generate a bunch of methods that were not used, including `const fn` ones.

This helps with #11815 since `const fn` is unstable.

(Note that running `regen_style_structs.sh` without changing it made a bunch of unrelated changes to `structs_*.rs`, probably because I had a different Gecko version. I first made a commit of that, then added `-no-bitfield-methods`, regenerated, made another commit, then removed the first commit with `git rebase -i master@{u}`.)

r? @emilio

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require new tests because they’re only removing dead code.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 053c2aee0aff738bccde5df1ccdfdfceddaa2fa2
2016-06-22 17:06:30 -05:00
Simon Sapin
993d896521 servo: Merge #11816 - Make the style crate (almost) build with a stable compiler (from servo:stable-style); r=nox
<!-- Please describe your changes on the following line: -->

The bulk of this is adding cargo features to make derived implementations of `heapsize` and `serde` traits optional.

"Almost" because `std::intrinsics::discriminant_value` is currently unstable and doesn’t have any stable replacement that I know of. For now, this PR conditionally replaces it with `unimplemented!()`.

r? @nox

---
<!-- 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 <s>fix</s> are part of #11815 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not <s>require tests</s> *have tests yet* because that requires https://github.com/servo/servo/issues/11806, but I still want to land this before it bitrots. (Tests should check that the build succeeds with a stable compiler.)

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 0fb5d634a007f3d0424f95569ac3f83d500d054c
2016-06-22 09:43:20 -05:00
Cameron McCormack
46d23041f1 servo: Merge #11784 - Look at nsIAtom.mHash directly rather than call Gecko_HashAtom (from heycam:atom); r=bholley
<!-- Please describe your changes on the following line: -->

We hash Gecko-backed atoms pretty often.  Using bindgen to access to the stored hash in nsIAtom helps with perf a little.

r? @bholley

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: bc5a52b32886e82ec35c4cada9db38c031cf969c
2016-06-21 16:33:44 -05:00
Mike Blumenkrantz
369843a3aa servo: Merge #11817 - embedding README updates (from zmike:master); r=metajack
<!-- Please describe your changes on the following line: -->

More current directions for running/testing cef.

@jdm @larsbergstrom @metajack literally anyone

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ X] These changes do not require tests because I said so

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 239b221b435c3503e04e103dfa1c544958bfbed9
2016-06-21 14:15:17 -05:00