Граф коммитов

562 Коммитов

Автор SHA1 Сообщение Дата
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
Hugh Gallagher c96830b1ea servo: Merge #12237 - Avoid many uses of unwrap in font_cache_thread.rs (from hgallagher1993:servo); r=jdm
Replaced `result.send(...blah...).unwrap()` with `let _ = result.send(...blah...);` in `components/gfx/font_cache_thread.rs`

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

- [X] These changes do not require tests because @jdm said if it compiles it's good enough

Source-Repo: https://github.com/servo/servo
Source-Revision: e3eeb643f0b64107bcec01c9075f8bd9cefe58b3
2016-07-05 00:06:44 -07:00
Travis Dean 60ed5d9499 servo: Merge #12243 - Add style check and test for else braces (from TravisDean:else-brace-check); r=ConnorGBrewster
<!-- Please describe your changes on the following line: -->
Added a regex check to enforce project style guidelines. Added unit check. Catches:
```
}
else {
```
when it should be
`} else {`

---
<!-- 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 (no core files changed)
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12234 (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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: e21b47c2cc14897380a8c4ef2dfa650b1dd48ab5
2016-07-04 16:52:19 -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
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
Ms2ger df0f6b8d3d servo: Merge #11900 - Various DisplayList cleanup (from Ms2ger:displaylist-cleanup); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: ffb8b35d3549ead90e0a05d492558bf8cabfbbe1
2016-06-29 03:32:52 -05:00
Patrick Walton d5442bd70e servo: Merge #11918 - gfx: Don't create paint threads when WebRender is in use (from pcwalton:wr-no-paint-threads); r=glennw
They're unused and just waste memory and process table entries.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 5c41cda9a51490b0764938a57218e7c19735104f
2016-06-28 21:01:42 -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
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
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
Ms2ger 874621db97 servo: Merge #11754 - Move ServoLayoutNode and related structs to script (from Ms2ger:wrapper-traits-prep2); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: ee8c5c5a67e1181eca163d3cd1189866d230b8f0

--HG--
rename : servo/components/script/reporter.rs => servo/components/script_layout_interface/reporter.rs
rename : servo/components/layout/incremental.rs => servo/components/script_layout_interface/restyle_damage.rs
2016-06-20 12:54:20 -05:00
Keith Yeung 2c8f932ff1 servo: Merge #11799 - Update string_cache to v0.2.20 (from KiChjang:update-string-cache); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: fa0f2898fb8917cff54e07a6bd3ad8730ef10605
2016-06-20 01:29:33 -05:00
Patrick Walton 2120477f7d servo: Merge #11680 - script: When using WebRender, keep the DOM-side scroll positions for elements with `overflow: scroll` up to date, and take them into account when doing hit testing (from pcwalton:wr-overflow-scroll-hit-testing); r=jdm
Closes #11648.

r? @jdm
cc @paulrouget

Source-Repo: https://github.com/servo/servo
Source-Revision: 2d9338085561e7908c80ec7b2dd6d30125489aac
2016-06-11 11:01:36 -05:00
Anthony Ramine 331b90272e servo: Merge #11702 - Don't load all font faces sources (from nox:fonts); r=metajack
We stop at the first one we manage to load.

Source-Repo: https://github.com/servo/servo
Source-Revision: ce88b8ed30feff9c7d3f067041fe5d781e012351
2016-06-10 14:52:55 -05:00
Ms2ger b390fb8a56 servo: Merge #11623 - Move some code out of util::str (from Ms2ger:str); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 9a4460bed101655e55c18be051ead955a70ea3ce
2016-06-06 02:16:07 -05:00
Ms2ger 4264bd5479 servo: Merge #11619 - Some cleanup in gfx (from Ms2ger:freetype); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: d768ee5d4c2ef0429e88191f01f977338c964359
2016-06-05 06:57:18 -05:00
Ms2ger a9b041b2e8 servo: Merge #11607 - Remove the layout and paint shutdown channels (from Ms2ger:shutdown-channels); r=asajeffrey
Source-Repo: https://github.com/servo/servo
Source-Revision: 80a58cadc5f864bfb44671e2e7228d7c6cdf4ab4
2016-06-04 14:24:56 -05:00
Alan Jeffrey 7ceb3d690c servo: Merge #11585 - Avoid deadlock when closing a pipeline (from asajeffrey:constellation-avoid-deadlock-during-pipeline-closure); r=larsbergstrom
<!-- Please describe your changes on the following line: -->
At the moment, the constellation blocks on a pipeline during closure. This PR makes pipeline closure asynchronous.

---
<!-- 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 #11546.
- [X] These changes do not require tests because testing for absence of deadlock is difficult.

<!-- 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: 6581e3504a60aa1e7c363cc93b1036b4a174c166
2016-06-03 22:22:49 -05:00
Ms2ger b36f668619 servo: Merge #11573 - Remove some options code (from Ms2ger:opts); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 1f5b0008ac763bbb2209a70afddb6434d18cff9d
2016-06-03 09:50:29 -05:00
Patrick Walton c3daa72338 servo: Merge #11398 - script: Keep the DOM-side viewport up to date when scrolling happens in WebRender (from pcwalton:webrender-viewport); r=glennw
This happens asynchronously, just as it does in non-WebRender mode.

This functionality is a prerequisite for doing proper display-list-based
hit testing in WebRender, since it moves the scroll offsets into Servo
(and, specifically, into the script thread, enabling iframe event
forwarding) instead of keeping them private to WebRender.

Requires servo/webrender_traits#55 and servo/webrender#277.

Partially addresses #11108.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 27d1f182713077395426a53a9c91ec35c95887ee
2016-05-31 20:54:29 -05:00
Josh Matthews 7f10c47c0a servo: Merge #11472 - Report blank lines that follow an open brace (from jdm:wip); r=mbrubeck
This automates something that I find myself frequently commenting on in PRs.

---
<!-- 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] There are tests for these changes OR

<!-- 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: 3ec20d9cf517c67f4d280e8958cc58c4c2b4fbb2
2016-05-27 18:14:25 -05:00
Cullen Rhodes 2bd22f97ce servo: Merge #11329 - Report use statements that use {} with only one entry (from c-rhodes:11320); r=jdm
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 --faster` does not report any errors
- [X ] These changes fix #11320  (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.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2f9796fa696e9514280777398467696dd4f004b3
2016-05-27 07:11:17 -05:00
Matt Brubeck d0d3845f0b servo: Merge #11394 - Reduce the size of StackingContextId (from mbrubeck:stacking-context-id); r=pcwalton
r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 2acb257a82601ad9b48a544cff20ce83f6311a47
2016-05-26 07:25:58 -05:00
Rahul Sharma c1289018c9 servo: Merge #11376 - Bump string-cache to 0.2.18 (from creativcoder:update-string-cache); r=nox
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [X] These changes do not require tests because its a crate version bump.

Source-Repo: https://github.com/servo/servo
Source-Revision: 116faa7617aa2cb648d57307505b23504900bc9f
2016-05-25 10:13:29 -05:00
Matt Brubeck 70b7a1aa47 servo: Merge #11303 - Always include the last-resort font (from mbrubeck:last-resort); r=pcwalton
This is used as a fallback for any characters that don't have glyphs in the specified font.  Without this, per-glyph font fallback doesn't work because the FontGroup always contains only one font.  Fixes missing glyphs on many pages on my Linux box.

As a follow-up, we should probably have a smarter strategy for finding fallback fonts, possibly varying by script.  (Currently we just have a few hard-coded family names.)

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: aa9f50a1d406e72d8b443f79439aaf9fd2ba4425
2016-05-24 10:39:44 -07:00
Matt Brubeck 033133b73c servo: Merge #11347 - Don't create HarfBuzz shaper if it isn't used (from mbrubeck:fast-shape); r=pcwalton
Move the fast shaping code out of `text::shaping::harfbuzz`, and initialize the HarfBuzz shaper lazily to avoid allocating unnecessary HarfBuzz objects.

Note: As the fast shaping code grows and gains OpenType support, I'll probably factor it out into a whole new `text::shaping::fast` module.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 8b633c979eb57c94e59d93888df9971193a3d533
2016-05-23 18:21:06 -07:00
Keith Yeung ae05ea6335 servo: Merge #11331 - Update string_cache to 0.2.17 (from KiChjang:update-string-cache); r=nox
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy --faster` does not report any errors
- [x] These changes do not require tests because crate version bump

Source-Repo: https://github.com/servo/servo
Source-Revision: 3c1b8e10c4fb9c200975df41d1c5c071534cf9bd
2016-05-23 07:17:58 -07:00
Rahul Sharma 934afa2733 servo: Merge #10961 - adding interface for custom responses (from creativcoder:custom_response_iface); r=jdm
Fixes #10960

Source-Repo: https://github.com/servo/servo
Source-Revision: 1a34137ac41276239850d91073bec2c0ef2344d9
2016-05-21 01:12:54 -07:00
Matt Brubeck 88b9e1fcd2 servo: Merge #11273 - Add a fast path for shaping ASCII text (from mbrubeck:fast-shape); r=pcwalton
On both my Linux laptop and iMac, this is about twice as fast as Harfbuzz text shaping on https://en.wikipedia.org/wiki/Barack_Obama.

I haven't tested this on any high-DPI (retina) displays, and I'm not 100% certain that the font unit scaling is correct there.

Depends on servo/core-text-rs#50.

Source-Repo: https://github.com/servo/servo
Source-Revision: c0c70ef0946da25ce31c44037f4a5ff2028b9aee
2016-05-20 17:58:23 -07:00
Ms2ger 3d3386f307 servo: Merge #11289 - Simplify PaintThread::create() (from Ms2ger:paintthread); 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 --faster` 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: a4e215974ca1b471db2b10c6a5eae64dd1523e00
2016-05-20 05:08:40 -07:00
Zhen Zhang 036cdcf2ea servo: Merge #11189 - Refactor resource thread code (from izgzhen:refactor-resource-thread); r=nox
- [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 it is refactoring

Source-Repo: https://github.com/servo/servo
Source-Revision: bcea0ada27de694cd0c465d04fd35eba70503d62
2016-05-19 19:15:08 -07:00
Ms2ger c69abc638b servo: Merge #11270 - Remove ConstellationChan (from servo:ConstellationChan); r=asajeffrey
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 --faster` 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.

It's a pointless abstraction that propagates the obsolete chan terminology,
swaps the order in which the sender and receiver are returned, and hides a
source of panics.

Source-Repo: https://github.com/servo/servo
Source-Revision: 27c25e859a45c3d79c85e96b85ec5226a3231e10
2016-05-19 12:38:26 -07:00
Bobby Holley 7d70cec87c servo: Merge #11242 - Add basic support for Gecko atoms (from bholley:gecko_atoms); r=emilio
This is a rough initial implementation of gecko atoms. This allows us to get rid of the custom rust-selectors branch we use to build stylo.

The gecko changes are at https://bugzilla.mozilla.org/show_bug.cgi?id=1273771

Source-Repo: https://github.com/servo/servo
Source-Revision: e3be7184fb79d9d0b7b2a491769a58c59a990460
2016-05-18 11:35:28 -07:00
Anthony Ramine 61bd80a453 servo: Merge #11191 - Update bitflags to 0.7 (from servo:bitflags); r=pcwalton
- [x] https://github.com/servo/cocoa-rs/pull/126 https://github.com/servo/cocoa-rs/pull/127 https://github.com/servo/cocoa-rs/pull/128 https://github.com/servo/glutin/pull/91
- [x] https://github.com/cyderize/rust-websocket/pull/78
- [x] https://github.com/sfackler/rust-openssl/pull/393
- [x] https://github.com/PistonDevelopers/image-png/pull/36
- [x] https://github.com/servo/rust-selectors/pull/87
- [x] https://github.com/vberger/wayland-kbd/pull/12
- [x] https://github.com/vberger/wayland-client-rs/pull/50
- [x] https://github.com/netvl/xml-rs/pull/122 https://github.com/netvl/xml-rs/pull/123

Source-Repo: https://github.com/servo/servo
Source-Revision: 6c08ad857ea4139bb266c481eebe4315bdd460d5
2016-05-17 15:43:14 -07:00
Ms2ger aae9059d1d servo: Merge #11229 - Simplify FontContext::create_layout_font (from Ms2ger:create_layout_font); 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 --faster` 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 refactoring

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: 8bfeea5f2097cb792a0272eef7198fab6ed0d5a1
2016-05-17 05:30:53 -07:00
Matt Brubeck 283598ac1a servo: Merge #11206 - Fix unused item warning on 32-bit platforms (from mbrubeck:warnings); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 3a28aad349473d7a9fcb6c5e4841abf3972fd733
2016-05-16 11:57:50 -07:00
Per Lundberg 28632dc3a1 servo: Merge #11192 - Removed unused imports (from perlun:remove-unused-imports); r=Manishearth
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #11185
- [X] These changes do not require tests because it only removes dead code.

----

This fixes #11185.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2c674d0397927ef6563feb70e54f46815af55600
2016-05-15 15:41:16 -07:00
Matt Brubeck 1d79544c32 servo: Merge #11180 - Minor cleanup and optimizations in glyph/style caching (from mbrubeck:text-cleanup); r=pcwalton
Gets rid of some unnecessary String and Arc clones during text shaping and style matching.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: e2990766dc1c7461b55c96f0ce7116d35d4fd3c6
2016-05-14 09:06:53 -07:00
Emilio Cobos Álvarez 93c0fa9130 servo: Merge #11166 - gfx: Add expect messages to FontCacheThread::exit() (from emilio:fontcache-exit); r=mbrubeck
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 they only add debug info.

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

One of these two unwraps is the one that is causing most occurrences
of #8815.

I'd go with removing the second unwrap entirely, but let's get some
debug info first, since it might probably be a race.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2e049a85330ebc71212b4629119d561652ac9bef
2016-05-12 16:39:03 -07:00
Patrick Walton b6bde70e16 servo: Merge #11103 - gfx: Map CSS `normal` font weight to Regular font weight on the Mac (from pcwalton:mac-font-matching); r=metajack
This series of commits fixes #9487, and improves the look of nytimes.com among others.

r? @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: 1fd9c5583455b873fca1c95b2784f969870073bd
2016-05-10 14:11:35 -07:00
Ulf Nilsson abe21b5d60 servo: Merge #11109 - Make `text-align: justify` incremental layout safe (from kaksmet:justify-fix); r=mbrubeck
Closes #10499
Closes #9057

Source-Repo: https://github.com/servo/servo
Source-Revision: 069be91e8451d197c8f66790fbf53086f22150d7
2016-05-10 12:54:26 -07:00
Patrick Walton 969a1ef5d7 servo: Merge #10937 - gfx: Map `sans-serif` to Helvetica on Mac and DejaVu Sans on Linux (from pcwalton:mac-helvetica); r=metajack
This matches what I believe the OS native defaults to be.

Partially addresses #9487.

r? @metajack
cc @paulrouget

Source-Repo: https://github.com/servo/servo
Source-Revision: 180a9813aa5ecce0a3013cdd30c1ef99ed1d1f6d
2016-05-09 13:02:23 -07:00
Matt Brubeck b40d3af015 servo: Merge #11032 - Filter out whitespace glyphs from display list (from mbrubeck:no-whitespace); r=pcwalton
Fixes #10244. r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: df8008cfe6a0113ae9153e9eb3424f8b3a4030e8
2016-05-07 11:05:14 -07:00
Patrick Walton 0d424df05f servo: Merge #10691 - layout: Fix float speculation with percentage inline sizes, rewrite vertical alignment, fix inline block ascent/descent computation, and fix absolute inline-block hypothetical boxes (from pcwalton:float-fixes); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 35ba29355f40f27b2febe87aad7d7ffba20160c0
2016-05-04 13:49:23 -07:00
Michael Howell ecd9f482b8 servo: Merge #10983 - Minor reduction in the amount of allocation display list building does (from notriddle:no_alloc_sort_display); r=mbrubeck
Use `mem::replace` to perform the lifetime-trick without allocating a whole new buffer.

(An older of this switched from the built-in heapsort to a non-allocating introsort. Unfortunately, introsort is not a stable sorting algorithm, and the display list system relies on it being stable.)

Source-Repo: https://github.com/servo/servo
Source-Revision: 2e849b7064bdb30beedc4af13033b3f6a407f4b1
2016-05-03 23:51:53 -07:00
Matt Brubeck ffeadc8422 servo: Merge #10975 - Update even more dependencies (from mbrubeck:more-deps); r=KiChjang
Adds a temporary exception to allow multiple versions of lazy_static. PRs have already been filed on the packages that are still using the old version.

Source-Repo: https://github.com/servo/servo
Source-Revision: 361b2b900eeea821a9a79d8566f8cd31dfb1b1ea
2016-05-02 16:48:45 -07:00
Matt Brubeck eacfe16cd2 servo: Merge #10913 - Use xi-unicode for line breaking (from mbrubeck:xi-unicode); r=pcwalton
This uses the xi-unicode crate by @raphlinus to detect line-break opportunities, replacing Servo's custom code that only detects ASCII whitespace.  xi-unicode is licensed under the Apache-2.0 license.

See mbrubeck/servo#2 for some discussion on an earlier draft of this code.  This PR implements the "search backward to find trailing whitespace" solution discussed there.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: fc1e4c808541ca11e25831c7c6b5cfa924945fa5
2016-04-30 21:20:38 -07:00
Matt Brubeck ff8a4f5c36 servo: Merge #10944 - Upgrade a bunch of dependencies (from mbrubeck:bitflags-0.6); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: 8db0367301b5ad5ab5ea4704d57755c166cfd5de
2016-04-30 15:21:22 -07:00
Matt Brubeck 22979e08c6 servo: Merge #10895 - Use byte indices instead of char indices for text runs (from mbrubeck:byteindex); r=pcwalton
Replace character indices with UTF-8 byte offsets throughout all code dealing with text runs.  This eliminates a lot of complexity when converting from one to the other, and interoperates better with the rest of the Rust ecosystem.

For most code this is just a simple replacement of char indices with byte indices.  In a few places like glyph storage and text fragment scanning, it also lets us get rid of code that existed only to map between bytes and chars.

Also includes some related fixes to text shaping, discovered while working on this conversion.  See the commit messages for details.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: cf121ad8dff90b8fa55558ca9bdcbfe29512a617
2016-04-28 20:22:09 -07:00
Matt Brubeck 6885947f82 servo: Merge #10880 - Code cleanup in gfx::text (from mbrubeck:char-at); r=nox
* Fix deprecation warnings by replacing `str::char_at` and related functions with iterators.
* Replace some uses of `range::Range` with `std::ops::Range`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 224bcd7057c9b5aeb8f0064de9e1d0551b75a01b
2016-04-28 05:01:24 -07:00
Simon Sapin 2f882b0cfb servo: Merge #10857 - Simplify TOML syntax (from servo:toml); r=nox
* Sections like `[dependencies.foo]` can be entries in a `[dependencies]` section with the `{key = value}` syntax.
* Per-target dependencies can be expressed with more general `cfg(…)` conditions instead of exact target triples: https://github.com/rust-lang/cargo/pull/2328

Source-Repo: https://github.com/servo/servo
Source-Revision: 2729864af73d62719ea0fd55cef417c43bdd951e
2016-04-26 15:46:37 -07:00
Martin Robinson 2b99437a80 servo: Merge #10810 - Merge DisplayListEntry into DisplayItem (from mrobinson:displayitem); r=pcwalton
We don't really need two levels of abstraction for every element in the
DisplayList. This simplifies the complexity of the data structure in
preparation for providing documentation and properly handling scrolling
roots.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1fee7185a77424915d517a64685d6f7be40fbd3c
2016-04-26 10:13:00 -07:00
Rebecca c6a0cc3d7f servo: Merge #10696 - Referer header (from rebstar6:referrerPolicy); r=jdm
PR1 for https://github.com/servo/servo/issues/10311

This puts the code and data structures in place to set the Referer header based on the Referrer Policy for a given document. Note that document:: get_referrer_policy() always returns the 'No Referrer' option, so for now, this should have no impact on production code, and that policy requires that the Referer header is not added.

Later PRs will determine the policy and edit that get_referrer_policy() accordingly.

Source-Repo: https://github.com/servo/servo
Source-Revision: 34900814fca3b21fbb27bed58d4f4af8a8e307e9
2016-04-25 13:52:01 -07:00
Simon Sapin 15f5299fe5 servo: Merge #9840 - Update to rust-url 1.0 (from servo:url-1.0); r=asajeffrey
**Do not merge yet:** rust-url 1.0 is not published yet and may still get breaking changes. The goal of this PR for now is to demonstrate API usage.

Depends on:

* <s>https://github.com/servo/rust-url/pull/176</s>
* <s>https://github.com/alexcrichton/cookie-rs/pull/42</s>
* <s>https://github.com/hyperium/hyper/pull/740</s>
* https://github.com/cyderize/rust-websocket/pull/70
* https://github.com/jgraham/webdriver-rust/pull/28

Source-Repo: https://github.com/servo/servo
Source-Revision: 84ab7e9fe8f4a6528995eff3eb6e814cb724c364
2016-04-23 11:28:31 -07:00
Zbynek Winkler 170606fd25 servo: Merge #10706 - Turn on unused-extern-crates warning (from zwn:unused-extern-crates); r=nox
As discussed in #9256. It should solve second half of the issue.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0a3a50a1293e4e8f3e04161014d03802765140c7
2016-04-22 13:40:38 -07:00
Zbynek Winkler c70e781908 servo: Merge #10751 - Report lines starting with && in tidy (from zwn:tidy-start-operator); r=Wafflespeanut
Partial implementation of the issue #10692 (the easy part).

Source-Repo: https://github.com/servo/servo
Source-Revision: d926b5d3762a101d5280266f806f2b979f73b695
2016-04-22 10:40:06 -07:00
Josh Matthews 39037852d3 servo: Merge #9942 - Moving the error handling out of network loader (from jdm:load_error); r=ms2ger
Rebase of #8851. Fixes #8678. Fixes #9944.

Source-Repo: https://github.com/servo/servo
Source-Revision: f051028ee8cd93168b1abe3742929d43d19cb002
2016-04-20 21:50:22 +05:01
Alan Jeffrey 0dd4afb363 servo: Merge #10641 - Dedicated panic channel (from asajeffrey:dedicated-panic-channel); r=Manishearth
Added a dedicated panic channel, and removed the panic messages for the script and layout threads. This is needed so that other threads can report panics, which is part of #10334.

Note that this PR includes the commit from #10572, so should land after it lands.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: bd4b3a66a2aa57ab6fa881e3cc11091edc494a68
2016-04-19 21:29:07 +05:01
Corey Farwell d9806fb51f servo: Merge #10672 - Improvements to network preferences, HTTP redirection limiting (from frewsxcv:net-network); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: 80662f1e4e3054415700f1d82896bd76626b022d
2016-04-19 03:37:25 +05:01
Peter ee38b14a80 servo: Merge #10667 - Updated euclid to version 0.6.5 (from peterjoel:euclid_0.6.5); r=frewsxcv
And updated existing usages of Matrix4 to use Matrix4D<T>

This version is necessary to complete DOMMatrix implementation.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6056ecd8519f574c2ea9037a919a63edba17d032
2016-04-18 22:48:14 +05:01
Alan Jeffrey d466d33083 servo: Merge #10587 - Added panic message to failures (from asajeffrey:add-failure-panic-message); r=Manishearth
Added the panic message to failures. This is a step towards #10334, since it gives us access to the panic error message when we fire a `mozbrowsererror` event. The remaining steps are also to record the backtrace, and to report the failure in the event.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2b910678db8b461dc50919832044bd95cdecb53e
2016-04-14 19:26:17 +05:01
Michael Howell 0bb050408c servo: Merge #10486 - Take transform:translate into account when computing clipping regions (from notriddle:overflow_premature_clip); r=pcwalton
Note that this only works for translation; a more general fix would
require major changes to how display lists work.

Closes #10431?

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e63c1be63716e6f190416b512caa12afb4cda52
2016-04-13 06:43:38 +05:01
Arnaud Marant 1257225e1e servo: Merge #10505 - Issue #10491 add HTMLInputElement attributes that reflect content ide… (from amarant:10491-HTMLInputElement-attr); r=KiChjang
…ntically

it uses a new version of string-cache https://github.com/servo/string-cache/pull/148

Source-Repo: https://github.com/servo/servo
Source-Revision: 61865f66b515503971146b472ae0f8b747569fd0
2016-04-12 05:29:16 +05:01
Patrick Walton a7b88944ec servo: Merge #10493 - gfx: Clamp the font size we supply to Core Text to 0.01pt (from pcwalton:inline-font-size-zero); r=mbrubeck
Core Text treats a font size of 0.0 as 12.0, which is obviously not what
we want.

Improves Twitter.
Improves Reddit /r/rust.

Closes #10492.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 65120756c06ee2d0357cca6357e30694a0ec6559
2016-04-12 04:10:37 +05:01
Per Lundberg c03ec4e764 servo: Merge #10324 - Renamed the style structs (from perlun:rename-style-structs); r=bholley
Renamed style structs.

The idea is to rename all style structs from Foo to ServoFoo, as described out in #10185.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4da38cdd7c26d24d6c9de75d3f3509ae372dd25b
2016-04-09 00:55:28 +05:01
Patrick Walton 3b41027007 servo: Merge #10450 - layout: Allow non-absolutely-positioned elements with `overflow: scroll` set to be scrolled (from pcwalton:overflow-scroll-non-positioned); r=mbrubeck
This makes them establish stacking contexts, which is a CSS 2.1 spec
violation. However, we were already violating the spec here for
absolutely-positioned elements with `overflow: scroll`. It will probably
be easier to fix this spec violation once we either switch entirely to
WebRender or we have multiple layers per stacking context.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: e66e437ae66346883cb2cc700f84d06c44962be1
2016-04-07 21:01:13 +05:01
Patrick Walton 7edb31d6c7 servo: Merge #10331 - gfx: Simplify complex clipping regions as we construct them (from pcwalton:simplify-complex-clipping-regions); r=glennw
This allows WebRender to correctly render complex clipping regions that
can be reduced to single rounded rectangles. WebRender still can't
render rounded rectangles with arbitrary intersections yet, but this
allows it to handle many more cases.

Closes servo/webrender#241.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 4e215177962a50f1cfd9f21d95ecfd3a76a31602
2016-04-02 04:34:07 +05:01
Per Lundberg 206f878009 servo: Merge #10277 - Renamed TComputedValues to ComputedValues (from perlun:rename-tcomputedvalues-to-computedvalues); r=SimonSapin
This is a followup to #10210, and a continuation of #10185.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0ec96ac02a6c40ffda98e1074ceb9874dd1fb3cb
2016-03-30 10:35:57 +05:01
Per Lundberg ad08fc1cc0 servo: Merge #10210 - ComputedValues is now ServoComputedValues (from perlun:rename-computedvalues-to-servocomputedvalues); r=SimonSapin
This is the first part of #10185. More to follow. I have built this locally with both servo and geckolib without errors; let's see if it succeeds on all platforms as well.

Source-Repo: https://github.com/servo/servo
Source-Revision: 639fdd6b128e0cfd418e4ae0dd78de3f5aecac4c
2016-03-29 17:56:40 +05:01
Michael Howell f47e88f413 servo: Merge #8641 - No more headless compositor. Just the normal one (from notriddle:no_headless); r=glennw
Fixes #8573

Source-Repo: https://github.com/servo/servo
Source-Revision: aac2da75f40f4c55a4b450b6d9d134429fcf741e
2016-03-29 12:13:01 +05:01
Bobby Holley 6e1def963d servo: Merge #10155 - Generalize the style structs (from bholley:generalize_style_structs); r=SimonSapin
This allows geckolib to pass gecko style structs and have the style system write to them directly, provided we implement all the traits.

Source-Repo: https://github.com/servo/servo
Source-Revision: 605842f193aedc1151ab38a99c49f693c76e5cf3
2016-03-25 02:58:33 +05:01
Emilio Cobos Álvarez 98d36374a9 servo: Merge #10150 - Canvas cleanup (from emilio:canvas-cleanup); r=jdm
This PR cleans up the layerization infrastructure for canvas, which was unused, and removes unused dependencies.

It also takes in account my recent username change to update angle's dependency (offscreen_gl_context requires extra work due to webrender depending on it).

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 2887623c4ae1960dfef52b14cd4afc3b279f9feb
2016-03-24 08:15:40 +05:01
Patrick Walton 9a7523f50e servo: Merge #9947 - Faster display list transfer (from pcwalton:faster-display-list-transfer); r=glennw
This series of commits improves performance of display list construction in browser.html by about 3x when using WebRender.

It requires https://github.com/servo/webrender_traits/pull/18 and https://github.com/servo/webrender/pull/231.

Anyone should feel free to review if they have time; I'll ask someone in particular once those two upstream commits land.

cc @paulrouget

Source-Repo: https://github.com/servo/servo
Source-Revision: 187ca442337313a76ce115ac92a2da44d91d5b96
2016-03-23 07:37:31 +05:01
Ms2ger 1ab0b58897 servo: Merge #10075 - Deny unsafe code in more crates (from Ms2ger:deny-unsafe); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 8c92e3f32b9aa6a75dc8980da49359ea63f9d67a
2016-03-20 07:31:53 +05:01
Anthony Ramine ace9b5c608 servo: Merge #10055 - Bump serde to 0.7 (from servo:serde); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 7a9dc577617b442ff0fe07eaa683207234c519ee
2016-03-17 17:58:36 +05:01
Patrick Walton 3d1ddf975a servo: Merge #9810 - Make border radii clip their contents (from pcwalton:border-radius-clip-contents); r=mbrubeck
Needed for browser.html rounded corners.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 5b28a416eb567fb25b8ffa4bdf5aeb6eca5c72b1
2016-03-15 06:41:54 +05:01
Martin Robinson f0ca9bc037 servo: Merge #9962 - Simplify the display list slightly (from mrobinson:display-list-simplification); r=pcwalton
Now that WebRender uses an Iframe display item, we do not need the Noop
item for the non-WebRender path. We can simply reuse the Iframe display
item. Also remove the layer_id member from the LayeredItem struct, as
it is unused.

Source-Repo: https://github.com/servo/servo
Source-Revision: 40083a7aa84c2459f2f1de7dd826d39f80e2195f
2016-03-11 10:53:29 +05:01
Anthony Ramine 3ba3376dfd servo: Merge #9943 - Preliminary bumps for bumping Serde (from servo:serde-preliminaries); r=jdm
We need to bump webrender before being able to bump Serde, but we also needs these bumps, so let's include them ASAP first because bumping a lot of things is always a pain.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0f526054ebfa164ca2545d881b8392a744af7870
2016-03-10 00:21:36 +05:01
Jack Moffitt 6f6499096b servo: Merge #9866 - Unrevert the fix for hit testing through shadows (from metajack:refix-shadow-hit-test); r=pcwalton
This was originally #9428 but got accidentally reverted during rebase in

Fixes #9865.

Source-Repo: https://github.com/servo/servo
Source-Revision: 12466b87062d8a20bd134bdd5824d46c5216ee48
2016-03-04 08:07:12 +05:01
Patrick Walton 73f8220db0 servo: Merge #9843 - Optimize flat display lists (from pcwalton:optimize-flat-display-lists); r=mrobinson
Flat display lists were a 2x regression on the spheres demo. This patch series fixes that.

See the individual commits for more details.

r? @mrobinson

Source-Repo: https://github.com/servo/servo
Source-Revision: 55fc48e4c46917a0f036d0054fac296bb5719434
2016-03-04 02:20:04 +05:01
Corey Farwell ccfd41c9c3 servo: Merge #9857 - Indicate components should not be published to crates.io (from servo:publish-false); r=ecoal95
http://doc.crates.io/manifest.html#the-publish--field-optional

Source-Repo: https://github.com/servo/servo
Source-Revision: 633f0414aaa177e439528f0fa848a41bc0fc094a
2016-03-04 01:08:14 +05:01
Martin Robinson 36406cdba8 servo: Merge #9756 - Flatten display list structure (from mrobinson:flat-display-lists-webrender); r=pcwalton
Instead of producing a tree of stacking contexts, display list
generation now produces a flat list of display items and a tree of
stacking contexts. This will eventually allow display list construction
to produce and modify WebRender vertex buffers directly, removing the
overhead of display list conversion.  This change also moves
layerization of the display list to the paint thread, since it isn't
currently useful for WebRender.

To accomplish this, display list generation now takes three passes of
the flow tree:

        1. Calculation of absolute positions.
        2. Collection of a tree of stacking contexts.
        3. Creation of a list of display items.

After collection of display items, they are sorted based upon the index
of their parent stacking contexts and their position in CSS 2.1
Appendeix E stacking order.

This is a big change, but it actually simplifies display list generation.

Source-Repo: https://github.com/servo/servo
Source-Revision: 62814f7cb486bc267a796b7ce58c51d59240fad0
2016-03-02 05:52:08 +05:01
Guillaume Gomez fe3e62b8a4 servo: Merge #9792 - Remove util::vec::Comparator (from GuillaumeGomez:remove_comparator); r=nox
r? @nox

Fixes #9696

Source-Repo: https://github.com/servo/servo
Source-Revision: 40c52d55e2037a8dc154718f43260bd347739260
2016-03-01 18:41:45 +05:01
Jonathan Schuster 6ae403af2c servo: Merge #9717 - Move util::range into its own crate (from schuster:move-range); r=frewsxcv
Fixes #9695

Source-Repo: https://github.com/servo/servo
Source-Revision: 4300ba221170785652fe7368e2900f9a5a946096

--HG--
rename : servo/components/util/range.rs => servo/components/range/lib.rs
2016-02-26 07:12:57 +05:01
Anthony Ramine 69b87ee72d servo: Merge #9742 - Make use of From<String> for Atom (from nox:atom-from-string); r=ecoal95
Source-Repo: https://github.com/servo/servo
Source-Revision: b3b6f092062eed2f323da88991553d0285da6a16
2016-02-25 08:10:44 +05:01
Corey Farwell 4332d6ca83 servo: Merge #9733 - Update webrender crate refs to reflect ownership change (from servo:servo-webrender); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 33f0040496bde88683cfadb4068183f7d08a5f1c
2016-02-24 06:23:40 +05:01
Glenn Watson c6d5efc75f servo: Merge #9589 - Add WebRender integration to Servo (from glennw:webrender); r=pcwalton
WebRender is an experimental GPU accelerated rendering backend for Servo.

The WebRender backend can be specified by running Servo with the -w option (otherwise the default rendering backend will be used).

WebRender has many bugs, and missing features - but it is usable to browse most websites - please report any WebRender specific rendering bugs you encounter!

Source-Repo: https://github.com/servo/servo
Source-Revision: ab07b06823ea9748a6091aee2281495f86f00bce

--HG--
rename : servo/tests/unit/net_traits/lib.rs => servo/resources/shaders/clear.fs.glsl
rename : servo/tests/unit/net_traits/lib.rs => servo/resources/shaders/debug_color.fs.glsl
rename : servo/tests/unit/net_traits/lib.rs => servo/resources/shaders/mask.fs.glsl
2016-02-19 00:25:06 +05:01
Anthony Ramine 31c444dd4c servo: Merge #9636 - Move util::cursor to style_traits (from nox:mv-cursor); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: f0d4c03bd9c9e181aa1225aec978c2f539e9aeb0

--HG--
rename : servo/components/util/cursor.rs => servo/components/style_traits/cursor.rs
2016-02-16 16:21:20 +05:01
Anthony Ramine c0e4adbd32 servo: Merge #9622 - Bump heapsize to 0.3 (from nox:heapsize); r=ecoal95
Source-Repo: https://github.com/servo/servo
Source-Revision: a164176876bb6abccf729eb5d6334e3c22230103
2016-02-13 18:21:41 +05:01
Ruud van Asseldonk 6661931910 servo: Merge #9523 - Upgrade to new Hasher API (from ruuda:hasher); r=Wafflespeanut
This fixes #9494.

Source-Repo: https://github.com/servo/servo
Source-Revision: 87aaa5ffe0ca7da8771883ea40d04d7c1449eea9
2016-02-05 07:03:13 +05:01
Anthony Ramine 08f5c3da70 servo: Merge #9532 - Say farewell to in-tree HeapSizeOf (from nox:dedup-heapsize); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 2a6707ce58df27d93e865bffb6b44d396b810c99
2016-02-05 03:11:36 +05:01
Tim van der Meij 29008e359b servo: Merge #9512 - Remove old features 'clone_from_slice' and 'convert' (from timvandermeij:feature-cleanup); r=frewsxcv
Fixes #9495.

Source-Repo: https://github.com/servo/servo
Source-Revision: 647637193d12eb4869afa93106d3aa14721a0935
2016-02-04 17:42:52 +05:01
Ms2ger 2eaac7c861 servo: Merge #9519 - Update Euclid (from Ms2ger:euclid); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 712b053f4f597a097767a0812013b95c7db8b3c9
2016-02-04 16:06:48 +05:01
Keith Yeung 5f946e83b6 servo: Merge #9498 - Update rust-url (from KiChjang:update-url); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 64ad9e17d9323862833daa60290b037ea8334424
2016-02-03 11:09:51 +05:01
Ms2ger bfaf0caf41 servo: Merge #9493 - Use the select macro on the paint thread (from Ms2ger:paint-thread-messages); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2d4a5eb983d07609247affe4fb7bf0a9a4a17755
2016-02-03 09:47:46 +05:01
Patrick Walton c5adf3e3d9 servo: Merge #9428 - Make hit tests against box shadows always fail (from pcwalton:incorporeal-shadows); r=mbrubeck
Closes #9268.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 71d49fc73dd0f3fe42757d87cb60b98c9454d5fa
2016-01-26 06:13:57 +05:01
Lars Bergstrom 5d2bc22040 servo: Merge #9385 - Win32 support (from larsbergstrom:win32); r=frewsxcv,pcwalton,jdm,ecoal95
r? @frewsxcv for python stuff
r? @pcwalton for the "remove usage of Gaol" stuff for Win32
r? anybody else for misc cargo.lock updates, etc.

This replaces #7878.

This works best with https://github.com/servo/mozjs/pull/71, too, to enable static linking, but can be run without (via some PATH hackery).

The instructions are here, and will be added to a .md file in the repo once the mozjs changes also land:
https://hackpad.com/Servo-on-Windows-C1LPcI2bP25

I'd like to get these changes landed because I've been rebasing them for months, they're otherwise quite stable, and don't affect our other platforms and targets.

Source-Repo: https://github.com/servo/servo
Source-Revision: 525e77f64fc65ea2397b4ff3849f5b1f39386698
2016-01-23 06:58:27 +05:01
Matthew Kuo 0e37316f1a servo: Merge #9352 - Convert private types to public (from mattkuo:cleanup-private-types); r=nox
fixes #9347

Source-Repo: https://github.com/servo/servo
Source-Revision: 380541bd48bb7ce0b36a8be90f756734e531ca5f
2016-01-18 01:29:01 +05:01
Brandon Fairchild 9ba81c08a5 servo: Merge #9344 - Remove multiple unused imports in gfx (from nerith:gfx); r=Wafflespeanut
Fixes #9342.

Source-Repo: https://github.com/servo/servo
Source-Revision: 41a3961ba57b720f1df9637090b78d40df7bc778
2016-01-17 19:57:45 +05:01
Maciej Skrzypkowski a29e3050be servo: Merge #9289 - Move FrameTreeId type to gfx_traits #9221 (from mskrzypkows:move_FrameTreeId); r=KiChjang
Fixes #9221.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3c6e16c9add63b421deae422cf98a65fabadb410
2016-01-14 01:37:47 +05:01
Ms2ger 5418f19918 servo: Merge #9275 - Remove some unused extern crates (from Ms2ger:extern-crate); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 0b5dda3e9c38f6cd4ec9b82f023bf3698addc65f
2016-01-13 20:47:35 +05:01
John DeSilva 1a9ecebaf4 servo: Merge #9230 - Move Epoch to gfx_traits (from Aesthetikx:move_epoch_to_gfx_traits); r=KiChjang
Resolves #9222. Moved Epoch from components/msg/compositor_msg to
components/gfx_traits/lib. Updated use statements to reflect the move.

Source-Repo: https://github.com/servo/servo
Source-Revision: e89dd05a169aa16267bdb2dbfe5bca01ad6cfe84
2016-01-11 08:50:23 +05:01
rohan.prinja d440ee6a41 servo: Merge #9201 - task -> thread (from ajnirp:8512-task-thread); r=jdm
for #8512

Source-Repo: https://github.com/servo/servo
Source-Revision: d3e2f94f2024f4735f836588ed11303a0abafdf8

--HG--
rename : servo/components/canvas/canvas_paint_task.rs => servo/components/canvas/canvas_paint_thread.rs
rename : servo/components/canvas/webgl_paint_task.rs => servo/components/canvas/webgl_paint_thread.rs
rename : servo/components/compositing/compositor_task.rs => servo/components/compositing/compositor_thread.rs
rename : servo/components/gfx/font_cache_task.rs => servo/components/gfx/font_cache_thread.rs
rename : servo/components/gfx/paint_task.rs => servo/components/gfx/paint_thread.rs
rename : servo/components/layout/layout_task.rs => servo/components/layout/layout_thread.rs
rename : servo/components/net/image_cache_task.rs => servo/components/net/image_cache_thread.rs
rename : servo/components/net/resource_task.rs => servo/components/net/resource_thread.rs
rename : servo/components/net/storage_task.rs => servo/components/net/storage_thread.rs
rename : servo/components/net_traits/image_cache_task.rs => servo/components/net_traits/image_cache_thread.rs
rename : servo/components/net_traits/storage_task.rs => servo/components/net_traits/storage_thread.rs
rename : servo/components/script/script_task.rs => servo/components/script/script_thread.rs
rename : servo/components/util/task.rs => servo/components/util/thread.rs
rename : servo/tests/unit/gfx/font_cache_task.rs => servo/tests/unit/gfx/font_cache_thread.rs
rename : servo/tests/unit/net/resource_task.rs => servo/tests/unit/net/resource_thread.rs
rename : servo/tests/unit/util/task.rs => servo/tests/unit/util/thread.rs
2016-01-10 15:20:04 +05:01
Martin Robinson 465fce5cd7 servo: Merge #9059 - Use DisplayListSection everywhere (from mrobinson:simplify-display-list-sections); r=pcwalton
DisplayListSection, StackingLevel, and BackgroundAndBorderLevel all
represent pretty much the same thing, a particular section of the
display list. Instead of maintaining three enums which do the same
thing, just use DisplayListSection everywhere. It's a superset of the
other two and this change will make it easier to flatten the DisplayList
in the future for WebRender.

Source-Repo: https://github.com/servo/servo
Source-Revision: be555a9409c949bea7287b0e21df009bce3cb328
2016-01-09 05:53:44 +05:01
Patrick Walton a32fe1fed9 servo: Merge #9177 - gfx: Eagerly transform clips into `ClippingRegion::max()` if possible (from pcwalton:filter-out-useless-clips); r=glennw
This helps WebRender look for useless clips and optimize them out.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 58111a6420d3edded1cb66efa7c9863f1b3cdd8e
2016-01-08 20:55:45 +05:01
Adrian Heine eab5174533 servo: Merge #9149 - Correctly handle local sources for CSS3 fonts (from adrianheine:webFonts); r=glennw
Currently, servo panics for me when loading something like this:

```
@font-face {
  font-family: "test family";
  src: local(test font face);
}
```

That's due to a bug in `FontCacheTask`. `FontCacheTask` tries to get the value for the key
"test font face" from `self.web_families`, but previously initialized a value for the key "test family".

These two commits add an awkward test and fix the bug by not shadowing the variable `family_name`. Since the argument to `local()` should explicitly not be the name of a font family, the previous variable name was wrong and misleading anyways.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8e75a05e6bea78d388e6409020f3279a090c9168
2016-01-08 04:18:55 +05:01
Patrick Walton 190477e3b4 servo: Merge #9173 - Remove the fontgroup address cache (from pcwalton:remove-font-group-address-cache); r=mbrubeck
It's not clear to me that it actually helps. Moreover, it's wrong and
results in fonts randomly changing e.g. on GitHub when mousing over
elements.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 6eb28c7fd829892842de6b5c4ae9166e8908a312
2016-01-07 08:46:45 +05:01
Tetsuharu OHZEKI 3a4fcad968 servo: Merge #9159 - gfx: handle the ResponseAction::ResponseComplete error case in font_cache_task (from saneyuki:9158); r=jdm
Fix #9158

Source-Repo: https://github.com/servo/servo
Source-Revision: e3dd36f0f3cb894d0eacedc99134e715135882bf
2016-01-06 02:00:26 +05:01
Johannes Linke 38405ee47e servo: Merge #9123 - Fix a bunch of clippy lints (from karyon:clippy_cleanup); r=Manishearth
This fixes about 130 clippy lints. Let me know if i should split up the commit.

I wasn't sure about some of the changes, especially map_or instead of map(...).unwrap_or(...) and if let instead of single arm match were not always a strict improvement in my opinion, but i'll leave that decision to the reviewer :)

There are about 150 lints left which i thought were clippy bugs or i didn't know how to fix.

cc @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 9da739acefc7d1776bf727c8bf782eb79f241028
2016-01-03 08:47:34 +05:01
Olaf Buddenhagen 2b7fba373e servo: Merge #9070 - Derive Debug for more font-related types (from antrik:debug-fonts); r=nox
Needs to pull in newer ipc-channel and azure.

Source-Repo: https://github.com/servo/servo
Source-Revision: ebf4ce8288987af1a65390cbf7e56d1e564fa335
2016-01-03 07:42:57 +05:01
Josh Matthews 647c5be7dd servo: Merge #8190 - Implemementing context-based MIME type sniffing (from jdm:4138); r=eefriedman
This is a rebase of #7842 that also adds a test.
Fixes #4183.

@Yoric, how's this look to you?

Source-Repo: https://github.com/servo/servo
Source-Revision: af1690f3036bc329101bbd6f4e877672d58ca5e0
2015-12-31 20:44:10 +05:01
David Raifaizen f718d1505b servo: Merge #8420 - Enabled use of FontFamily enum type (from craftytrickster:8371/generic-font-family); r=glennw
https://github.com/servo/servo/issues/8371

In addition to replacing loose strings with the FontFamily enum in `font_cache_task.rs`, I also centralized the add_generic_font calls into one single function. If centralizing into one function is not desired or if anything else needs to be changed, please let me know.

Source-Repo: https://github.com/servo/servo
Source-Revision: 66c8aa8cdac24ad956be5e99be3b7bc07c5f798c
2015-12-31 16:20:48 +05:01
Bobby Holley a5868c1c28 servo: Merge #9051 - Split layout wrappers into style+layout and layout-only functionality (from bholley:split_style_and_layout_wrappers); r=SimonSapin
This is a step towards removing the dependency of stylo on layout/.

This PR depends on #9004.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0f5c614609fd8867a9e7c27b8a398ea7d877c714
2015-12-30 09:35:14 +05:01
Simon Martin 6f8d33fe11 servo: Merge #9055 - Issue #9042: Report incorrect number of spaces around => in the style checker (from simartin:issue_9042); r=Wafflespeanut
Fixes https://github.com/servo/servo/issues/9042

Source-Repo: https://github.com/servo/servo
Source-Revision: f77c7928868469ef4f326a269147ae2aee6151ee
2015-12-24 10:26:48 +05:01
Brandon Fairchild 845411a627 servo: Merge #8938 - Move LayerKind and ScrollPolicy enums to gfx_traits (from nerith:gfx); r=Ms2ger
Fixes #8836.

Source-Repo: https://github.com/servo/servo
Source-Revision: 68c4f290c7c9ad7ea45fcea66e3c6b172e42be62
2015-12-23 18:09:51 +05:01
Maciej Skrzypkowski 8fd965896a servo: Merge #9022 - Move PaintMsg enum to gfx_traits #8844 (from mskrzypkows:PaintMsg_refactoring); r=jdm
re-PR of https://github.com/servo/servo/pull/9007, because homu seems stuck

Fixes #8844.

Source-Repo: https://github.com/servo/servo
Source-Revision: 95eabdb4dbdc00937eeea5b495002d5526217f93
2015-12-20 01:05:26 +05:01
Mathieu Agopian 2ee894fb9d servo: Merge #9019 - Use Url.join instead of UrlParser.base_url(...).parse (#9002) (from magopian:9002-use-url.join); r=SimonSapin
Fix issue #9002

Source-Repo: https://github.com/servo/servo
Source-Revision: f9141ef2db693518fef676740f25abee3b938cac
2015-12-19 01:29:56 +05:01
Olaf Buddenhagen c17165f0d9 servo: Merge #9013 - Derive Debug for FontGroup and Homu is a bully (from antrik:debug-fontgroup); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 6490d1e1c59c6de3d7ef030c209ad33e22bc6b26
2015-12-18 13:54:15 +05:01
Glenn Watson 7ead86e251 servo: Merge #8612 - Add test to constellation to avoid writing reftest image if there are pending frames (from glennw:pending-frames); r=jdm
This changes several tests that contain <iframe></iframe> from FAIL to TIMEOUT. This is correct
since there is a bug that prevents these iframes from ever rendering.

~~~There are also a few previous FAILs that changed to OK. These may be intermittents or they
may genuinely be fixed by this change.~~~

Source-Repo: https://github.com/servo/servo
Source-Revision: c6ae32abdde715dbdc3097a40ab7abdbc98cf4b0
2015-12-17 15:50:16 +05:01
Patrick Walton 9964a8693a servo: Merge #8995 - gfx: Measure text shaping time in the time profiler (from pcwalton:measure-text-shaping); r=mbrubeck
r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 338f66003e78250ce141584e87190661249c5589
2015-12-17 10:28:29 +05:01
Patrick Walton e2cd3f51e6 servo: Merge #8990 - Optimize `TextRun::advance_for_range` (from pcwalton:advance-for-range-optzns); r=mbrubeck
The combined effects of these optimizations move `advance_for_range` from #1 in the layout profile on all sites I tested to #2, #3, or #4, depending on the site.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 67c3cb37073068fe8be7b35b26469e2e329ce385
2015-12-17 09:18:03 +05:01
Ms2ger e998b88c1e servo: Merge #8947 - Use core-text from crates.io (from Ms2ger:core-text); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 23b220644c3cca7e90152c62a04133e72a95570c
2015-12-12 12:58:45 +05:01
Ms2ger 5cc95f9ea6 servo: Merge #8946 - Remove unused imports (from Ms2ger:warnings); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 16de31c13ce1dd002bd25dfb5b51a2fd7079b14a
2015-12-12 12:18:39 +05:01
Tomas Cernaj 250daed104 servo: Merge #8939 - Move PaintListener to gfx_traits, Fixes #8834 (from cnaj:msg_refactoring); r=Ms2ger
Adding layers and msg dependency to gfx_traits.

Fixes #8834.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9f0c6d75d1abef030b1f98f07cb598100b96c05e
2015-12-12 03:58:55 +05:01
Patrick Walton fddb845d66 servo: Merge #8943 - Cache font style struct addresses in a separate font group cache (from pcwalton:font-cache-addresses); r=mbrubeck
On http://en.wikipedia.org/wiki/Spotted_hyena, I was seeing a 100% miss
rate in the first fast cache lookup and 45% of total layout time in this
function. After making this change, the first cache lookup almost always
succeeds, and the time spent in this function drops to 8%.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: ebe3295424a4e2895657ef0defa5c90b4cd16718
2015-12-12 02:05:38 +05:01
Tetsuharu OHZEKI 1541b677a4 servo: Merge #8922 - Fix warnings: Use Vec.extend_from_slice instead of Vec.push_all (from saneyuki:warning); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: d01233a7b417c87b18d31f10709ed83141887b94
2015-12-11 04:28:58 +05:01
Ms2ger 6ce36f8878 servo: Merge #8820 - Fix warnings (from Ms2ger:warnings); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: bb117abcd3fee0c3435cefd3d4f196345770ca69
2015-12-04 14:40:00 +05:01
Alexander Mankuta e779396565 servo: Merge #8796 - Replaced ZERO_POINT with Point2D::zero() (from pointlessone:zero-point); r=SimonSapin
This is a proposed in servo/servo#8792 clean up.

Fixes #8792.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2dbc314e2dec39b8798d4e922dd5220d32083b56
2015-12-04 10:40:59 +05:01
Alexander Mankuta bd67fabcbf servo: Merge #8797 - Replaced rect_contains_point with Rect.contains() (from pointlessone:rect-contains); r=Manishearth
This is a proposed in servo/servo#8791 clean up.

Fixes #8791.

Source-Repo: https://github.com/servo/servo
Source-Revision: 68922e0ac2e36d10dd5f079ecae5de7c07cd1253
2015-12-04 03:32:44 +05:01
Alexander Mankuta 01d0a231d9 servo: Merge #8795 - Replace ZERO_RECT with Rect::zero() (from pointlessone:zero-rect); r=SimonSapin
This is a proposed in servo/servo#8792 clean up.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3995a7672d4b4ee3f2d6f348f2fe0a88964fc9c6
2015-12-03 21:12:03 +05:01
Simon Sapin d4a1557a4b servo: Merge #8757 - Use skia and deps from crates.io (from servo:skia); r=mbrubeck
This makes the initial download for skia go from a 300 MB git repository to a 5 MB tarball. This should help with issues like #6132 and #7687.

Fix https://github.com/servo/skia/issues/70

This builds, but the at the moment causes a number of tidy errors for duplicated crates.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8b95d7b8d860ec4c0834192083361a9fb78ddbeb
2015-12-03 12:29:29 +05:01
Guillaume Gomez 732bf0a03c servo: Merge #8692 - Ensure crate are alphabetically sorted (from GuillaumeGomez:patch-1); r=Wafflespeanut
cc @nox

Source-Repo: https://github.com/servo/servo
Source-Revision: dbff1ab33636bc7d60a4c97b63f39b59985726ce
2015-11-28 19:05:11 +05:01
Manish Goregaokar 693578b06a servo: Merge #8446 - Rust upgrade to rustc 1.6.0-nightly (5b4986fa5 2015-11-08) (from servo:rustup_20151110); r=SimonSapin+Ms2ger+jdm+Manishearth
<s>DO NOT r+ or try+ this</s>

<s>It causes an OOM (https://github.com/rust-lang/rust/issues/29740) and can crash the OS. Probably will set our CI on fire. </s>

Source-Repo: https://github.com/servo/servo
Source-Revision: f13c72d68e1e7f49e241938bfd6e8a588c68e86b
2015-11-27 10:18:00 +05:01
Greg Guthe 0619875813 servo: Merge #8598 - Split paint task messages from ScriptMsg (from g-k:split-scriptmsg); r=KiChjang
Refs: https://github.com/servo/servo/issues/8592
Source-Repo: https://github.com/servo/servo
Source-Revision: 5e7306bf1965988551cafe6a27baab13eb927bbe
2015-11-26 02:33:47 +05:01
Alan Jeffrey f4ab2bfdb5 servo: Merge #8667 - Update string cache (from asajeffrey:update-string-cache); r=SimonSapin
Updated string_cache to 0.2, and updated the dependencies that depend on string_cache.
Removed references to string_cache_plugin.
Import atom! and ns! from string_cache.
Replaced ns!("") by ns!().
Replaced ns!(XML) and co by ns!(xml) and co.
Replaced Atom::from_slice by Atom::from.
Replaced atom.as_slice() by &*atom.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 188fa9378c103093f1f8dac24bff0d9d237fd2bc
2015-11-25 23:41:39 +05:01
Patrick Walton a2c55b5db1 servo: Merge #8660 - Update `ipc-channel` to pick up the improved error reporting (from pcwalton:ipc-channel-errors); r=larsbergstrom
Intended to help diagnose intermittent failures.

r? @jdm or @larsbergstrom (or whoever)

Source-Repo: https://github.com/servo/servo
Source-Revision: 13a96fcaf78c299beb2021d3ae9dae8d9e916762
2015-11-25 07:02:15 +05:01
Patrick Walton 8c7de61738 servo: Merge #8599 - compositing: Split Servo up into multiple sandboxed processes (from jdm:e10s-redux); r=metajack
Multiprocess mode is enabled with the `-M` switch, and sandboxing is
enabled with the `-S` switch.

Rebase of #6884.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8b39b9afed6ef8a3d7d3e6609fd301a37825d3e1
2015-11-20 03:30:48 +05:01
Keith Yeung 5b3f4b220a servo: Merge #8530 - Split ConstellationMsg into ScriptMsg and CompositorMsg (from KiChjang:split-constellation-msg); r=jdm
Fixes #8356.

Source-Repo: https://github.com/servo/servo
Source-Revision: acbe41305230a926458596444ca955eff063d9dd
2015-11-19 04:10:20 +05:01
Michael Wu 64aafda294 servo: Merge #8552 - Avoid overflow in freetype/font_context.rs (from michaelwu:avoid_overflow); r=glennw
When new_actual_size < old_actual_size, there is an overflow panic since we're using usize. This breaks Reddit for me.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8950345e0e2c803cfa87105374dfdb30a550cfe0
2015-11-17 12:35:47 +05:01
Michael Howell 2591ecef99 servo: Merge #8524 - Draw layers that are under sub-displaylists (from notriddle:paint_task_deep); r=jdm
Fixes #8325

Source-Repo: https://github.com/servo/servo
Source-Revision: 8f2a3a64f141f175e417e240766f9d7f06be0482
2015-11-14 21:57:22 +05:01
Michael Howell 6310520c6e servo: Merge #8493 - Clean up use of Option in `font_cache_task` (from notriddle:fct_cleanup); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 118fbd6120fdcbec04858ecddb3ac8be882f4da1
2015-11-13 07:35:50 +05:01
Ms2ger d1fefa91f1 servo: Merge #8355 - Cleanup exit messages and related code (from Ms2ger:Exit); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 9a465c58429547b59b8a6e1258eaaea46bf7e5a2
2015-11-07 22:05:45 +05:01
Maciej Skrzypkowski c78e45310c servo: Merge #7696 - Draft. Change PaintContext rects to TypedRects #7023 (from mskrzypkows:PaintContext_Units); r=mbrubeck
I created draft. I'm not sure if we need any units conversion in PaintContext. There is also strange 'clear' method, we use PagePx origin and ScreenPx size is it OK?

Source-Repo: https://github.com/servo/servo
Source-Revision: 8d8ffa8265d67e0ec89cf2d37d1c549b47187cca
2015-11-06 23:53:59 +05:01
Martin Robinson 3d6034f11c servo: Merge #8337 - Remove DisplayListBuildingResult (from mrobinson:remove-display-list-result); r=pcwalton
Always produce a DisplayList when processing nodes for display list
construction. StackingContexts are now added to the positioned content
section of DisplayLists. This makes the code a bit simpler and opens up
the possibility of producing a StackingContext in another section of
the DisplayList. This doesn't change behavior, but is a cleanup
prerequisite for proper inline stacking context support.

Source-Repo: https://github.com/servo/servo
Source-Revision: da25b8c848886d2fc875008de5adcaf13d7c9e99
2015-11-06 05:07:35 +05:01
Martin Robinson 92570bfa5e servo: Merge #8266 - Mix stacking contexts into the positioned content list (from mrobinson:stacking-context-mix); r=pcwalton
Sometimes positioned content needs to be layered on top of stacking
contexts. The layer synthesis code can do this, but the current design
prevents it because stacking contexts are stored in a separate struct
member. In order to preserve tree order, mix stacking contexts into the
positioned content list, by adding a new StackingContextClass
DisplayItem. Such items do not have a base DisplayItem.

In some ways this simplifies the code, because we no longer have to
have a separate code path in the StackingContextLayerCreator.

Source-Repo: https://github.com/servo/servo
Source-Revision: 86e3add8fdc35fc6980bb63695781925607437b8
2015-11-04 06:53:43 +05:01
Martin Robinson 5672e44e9c servo: Merge #8244 - Expand DisplayList layer bounds to whole pixels (from mrobinson:layer-size); r=pcwalton
Before passing these layers to the paint task, expand them to pixel
boundaries. This ensures that subpixel edges of the layer will not be
clipped away and helps prevent rounding issues with layer contents.

Fixes #8166.

Source-Repo: https://github.com/servo/servo
Source-Revision: 94ca87e7ddc07160b9205c0112b60b0a951f0742
2015-10-29 06:26:10 +05:01
Manish Goregaokar 0869f53e87 servo: Merge #8241 - Update euclid to 0.3 (from Manishearth:euclid_up); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 0d699a2b4419632e31b35352c518e2ef5ffcc9a3
2015-10-28 21:32:15 +05:01
Martin Robinson 7f9d8e7d86 servo: Merge #7950 - Integrate iframes into the display list (from mrobinson:layerize-iframes); r=pcwalton
Instead of always promoting iframes to StackingContexts, integrate them
into the display list. This prevents stacking bugs when
non-stacking-context elements should be drawn on top of iframes.

To accomplish this, we add another step to ordering layer creation,
where LayeredItems in the DisplayList are added to layers described by
the LayerInfo structures collected at the end of the DisplayList.
Unlayered items that follow these layered items are added to
synthesized layers.

Another result of this change is that iframe layers can be positioned
directly at the location of the iframe fragment, eliminating the need
for the SubpageLayerInfo struct entirely.

Iframes are the first type of content treated this way, but this change
opens up the possibility to properly order canvas and all other layered
content that does not create a stacking context.

Source-Repo: https://github.com/servo/servo
Source-Revision: 11d23a41b31c2b2846d1e9c6b40e87ba7e2a095f
2015-10-20 16:01:38 -06:00
Eli Friedman 75c42c7efd servo: Merge #7951 - Add support for `pre-wrap` and `pre-line` values for `white-space` (from eefriedman:white-space); r=pcwalton
This is mostly straightforward.  I had to modify a couple of places
which were accidentally discarding whitespace.

Fixes #1513.

This fixes some relevant tests from the CSS testsuite... but a lot of
them are either manual, or don't pass because of unrelated issues.  (For
example, white-space-mixed-002 renders correctly, but
white-space-mixed-002-ref doesn't because of a float bug.)

I'd appreciate any suggestions for how to go about adding tests for this.

Source-Repo: https://github.com/servo/servo
Source-Revision: c3ab71109ee2ffcc31b40890f4c6739d8f5b1333
2015-10-20 12:38:54 -06:00
Corey Farwell 7ef53c6ece servo: Merge #7987 - Fix issues found by rust-clippy (from frewsxcv:clippy); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: eb7039d04d4c83800ba9d92dc251222f79b83040
2015-10-12 18:33:30 -06:00