Commit Graph

8191 Commits

Author SHA1 Message Date
Boris Chiou
1bd7c8c532 servo: Merge #15150 - Update selectors to 0.15.1 (from BorisChiou:update_selectors); r=heycam
selectors 0.15.1 supports AFFECTED_BY_ANIMATIONS and
AFFECTED_BY_TRANSITIONS, which are used by stylo animations.

Reference:
https://bugzilla.mozilla.org/show_bug.cgi?id=1317209

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix Bug 1317209
- [X] These changes do not require tests because I only update the version, which only added two StyleRelations flags, and are not used yet

Source-Repo: https://github.com/servo/servo
Source-Revision: 0170138887005215b2b6e194d8765e33ff3a2657
2017-01-22 23:07:30 -08:00
Shing Lyu
4821e9de84 servo: Merge #14978 - Implemented display: inline-flex (from shinglyu:inline-flex); r=notriddle
<!-- 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 #14685 (github issue number if applicable).

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c75946c3ed52d262aae585055023becd5a2e9769
2017-01-22 19:57:49 -08:00
Tawhid Hannan
8d91d8e444 servo: Merge #15146 - Added compiletest to verify TrustedPromise does not implement Clone (from Verlet64:verlet64/no_clone_trusted_promise); r=jdm
As per issue: https://github.com/servo/servo/issues/14500

I have added a test to ensure that TrustedPromise does not implement Clone.

This is my first PR to the project, so feedback in terms of both code and the actual PR would be very welcome.

Thanks,
Verlet64

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14500
- [x] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: 27a7999d5d85c9b1156554f597cb0eea592624e1
2017-01-22 12:31:41 -08:00
Anthony Ramine
017a10312f servo: Merge #15137 - Kill eventdispatcher (from nox:dispatch); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: dc9706cf699dad0e0441b341b8d9d0b4ed7d7185
2017-01-22 06:32:10 -08:00
Manish Goregaokar
14e81907da servo: Merge #15140 - Regen bindings (from Manishearth:regen); r=emilio
r? @heycam @emilio

Don't land yet.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8544c8c489833d97483e46d8823307a369f772ca
2017-01-21 18:03:50 -08:00
kkkkkkkk
803829c0e5 servo: Merge #15134 - add font-stretch to font shorthand sub-property (from seankao31:font-stretch-shorthand); r=canaltinova
<!-- Please describe your changes on the following line: -->
Add `font-stretch` sub-property to font shorthand

---
<!-- 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 #15027 (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: c3c4805c826355ad272c78d6d413e6df57b1acf9
2017-01-21 07:14:29 -08:00
Anthony Ramine
07c7adaf87 servo: Merge #15133 - Various events-related improvements (from nox:events); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ef6e0bf72dad5db5e85963fff53bb1d577aee01c
2017-01-21 06:16:47 -08:00
Anthony Ramine
ada71b902e servo: Merge #15132 - Improve the end (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1b68f7946858ccd25132fe5e04923f23e269c6b0
2017-01-20 15:25:38 -08:00
Anthony Ramine
1f3445f08e servo: Merge #15128 - Simplify how we handle script scheduling and delaying the load event (from nox:load-fixes); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 830fe189adfa93a09af5e4018a110a718a8a95cd
2017-01-20 13:41:32 -08:00
Aneesh Agrawal
1f43cccad3 servo: Merge #15029 - Check all constellation files for panics (from aneeshusa:check-whole-constellation-for-panics); r=asajeffrey
Teaches the `etc/ci/check_no_panic.sh` script to handle directories,
so it can check all constellation files for panics.

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

r? @asajeffrey
There are currently 4 `unwrap()`s in `components/constellation/timer_scheduler.rs`; I'm not sure how you want to handle those.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it adds more testing coverage

<!-- 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: f9505c7fafcbabd24cfa613493ecacd3e29d273e
2017-01-20 12:10:32 -08:00
Nazım Can Altınova
6df0e3167c servo: Merge #14646 - Support origins in CSSOM stylesheets (from canaltinova:origin-clean); r=jdm
<!-- Please describe your changes on the following line: -->
I still need to pass the origin clean flag to constructors. `style::stylesheets::Stylesheet` has an origin field but I don't think that's relevant.
I can get href in htmllinkelement.rs like this:
```rust
let element = self.upcast::<Element>();
let href = element.get_string_attribute(&local_name!("href"));
```
But I'm not sure how to proceed after here.
@Manishearth any opinions?

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 15c542d3a10d2764fda14f8e54054eeb113bff1a
2017-01-20 11:12:59 -08:00
Ms2ger
f271bf7b53 servo: Merge #15127 - Privatize RootedTraceableSet (from servo:RootedTraceableSet); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 5cd04259334270daa93743aaa6a72c039082bf5e
2017-01-20 10:17:38 -08:00
Simon Sapin
21e15515ca servo: Merge #15099 - Remove usage of phf_macros (from servo:phf-no-macros); r=jdm
It’s a compiler plugin that uses unstable compiler APIs that are not on a path to stabilization.

With this changes, there is one less thing that might break when we update the compiler. For example: https://github.com/sfackler/rust-phf/pull/101

<!-- 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
- [ ] 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: eade32ed16569806a849e74a395d92a2dbd980a0
2017-01-20 08:59:26 -08:00
Ms2ger
c8cd8ecea4 servo: Merge #15117 - Fix and annotate some FileAPI test failures (from servo:fileapi); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: e6f661c984e4762a91a38d481bd50c0151411079
2017-01-20 08:03:41 -08:00
Ms2ger
50f1421ce8 servo: Merge #15125 - Support dictionaries in unions (from servo:unions-dictionaries); r=nox
Fixes #11612.

Source-Repo: https://github.com/servo/servo
Source-Revision: be3f35878af1d9210abc65358c99782c119ceaa6
2017-01-20 07:08:09 -08:00
Aneesh Agrawal
7867bd9341 servo: Merge #14974 - Use Salt for mach bootstrap (from aneeshusa:add-mach-bootstrap); r=metajack
<!-- Please describe your changes on the following line: -->

This is currently WIP, but allows Salt for `mach bootstrap`. Not looking for review yet, just posting for visibility. You can run `./mach bootstrap` and Salt will run, letting you know what changes it would make for bootstrapping (doesn't actually run yet though).

Currently, this reads from saltfs using gitfs, meaning it always tracks the master branch. (Note that this is blocked on https://github.com/servo/saltfs/pull/577 landing; in the meantime, I've included a small workaround in this PR to pull from my updated saltfs branch, which will need to be removed.) In the future, the relevant Salt code may be merged in tree as part of Docker support for TC, and the bootstrapper should be updated to read from in tree.

Also, our Windows machines have not been Salted, so the existing Windows bootstrappers are retained.

TODO:
- [x] Hook into existing bootstrapping code less hackily
- [x] Actually bootstrap instead of always using `test=True` mode (includes sudo)
- [x] Default to interactive mode (test first, then ask), with a force flag
- [x] Don't require running from the repository root directory
- [x] Make it easy to add support for other distros

---
<!-- 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
- [x] These changes do not require tests because they should be verified manually

<!-- 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: 1f76aa6ef7ec7db0a0c40223874a72e8f4059deb
2017-01-19 20:58:19 -08:00
Bobby Holley
ffb83d6686 servo: Merge #15119 - Add style performance statistics to Servo (from bholley:traversal_stats); r=emilio
Gecko bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1331856

Source-Repo: https://github.com/servo/servo
Source-Revision: f8418a328435b114f6d8bb41c378a5bf0dfa4428
2017-01-19 15:27:34 -08:00
Pavel Potocek
d8e5f53d57 servo: Merge #15083 - Fix #14497: WeakMediaQueryListVec assumes its contents are still alive (from potocpav:issue-14497); r=KiChjang
<!-- Please describe your changes on the following line: -->
First time contributor here. Noticed this issue is easily solved, so I did it. I am very unsure about how things work here: Is a test needed? What should it look like? Should the "unwrap" be avoided (making bigger changes to the code)?

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 29d4f7d467a1e50b7bcff651743fd5b5bfac2c66
2017-01-19 14:10:33 -08:00
ddh
bba84e16bc servo: Merge #15104 - added lets encrypt authority x3 to trusted roots pem (from avadacatavra:letsencryptauth); r=SimonSapin
<!-- Please describe your changes on the following line: -->
servo gave an ssl error on servoexperiments.com because it didn't have the Let's Encrypt X3 authority (https://letsencrypt.org/certificates/)

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ X] These changes do not require tests because webpage couldn't load before, can now :)

<!-- 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: 3a8167350b2544859745b1b89c96ca262b510e12
2017-01-19 12:03:26 -08:00
Anthony Ramine
a13b47dbcd servo: Merge #15098 - Mark the page source as loaded only after parsing is done (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 6272cb5a519d2b5e92ac7112c177043970feedaa
2017-01-19 07:32:45 -08:00
Ms2ger
d57a68187f servo: Merge #15108 - Don't try to get the global of an object while it's being destroyed (from servo:callbackobject-drop); r=KiChjang
Fixes #15070.
Fixes #15097.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2c816a2e9dfe3eb6952fd61f5a96cf26668ad9c8
2017-01-19 03:05:17 -08:00
UK992
132fb1d5fd servo: Merge #15035 - Tidy: Report invalid listed ignored directories and files (from UK992:tidy-validate-ignore); r=Wafflespeanut
r? @Wafflespeanut

Source-Repo: https://github.com/servo/servo
Source-Revision: f4c6d0009209d83fdb66f8a7348065edf75a22ff
2017-01-19 01:12:06 -08:00
Dexter Haslem
e4d25d668e servo: Merge #15107 - convert less interesting debug! logs to traces (from DexterHaslem:15100-convert-debug-to-traces); r=cbrewster
<!-- Please describe your changes on the following line: -->
converted some debug! invocations to trace!

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because only logging changed

<!-- 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: b8df502491b880cb942badee4ddbf7ec65b174fb
2017-01-18 21:29:59 -08:00
Manish Goregaokar
65bdc5d4d0 servo: Merge #15089 - Reduce allocator churn when parsing property declaration blocks (from Manishearth:less-vec); r=SimonSapin
fixes #15060

cc @emilio

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 5e888b5504a9daad86663837ca9e996d63a48821
2017-01-18 17:41:05 -08:00
Vladimir Vukicevic
be8f0e0ee8 servo: Merge #15096 - Implement downloadable fonts on Windows (from vvuk:custom-font-files); r=emilio
This PR implements downloadable font support for Servo.  It depends on new changes in webrender and dwrote, and adds a dependency on the `truetype` crate for pulling out basic font information.  The original DirectWrite API does not provide an easy way to query font information direct from a `FontFace` (which is what you create from a `FontFile`).  There are new DirectWrite APIs starting with Windows 10 that allow for this, but they are Win 10+ only, and `winapi-rs` does not yet have bindings for those versions of the interfaces (specificially, `IDirectWriteFontFace3`).  The way to do this with DW is to go through a lot of pain in creating a custom collection and enumerator, add your font to your custom collection, then query the collection for its properties.

Instead, we just parse the truetype tables directly to pull out the few bits of information that we need.  The `truetype` crate is ok, but I discovered some bugs (an update needs to get pushed to crates.io before this will build).  It might be more worthwhile to just implement the tiny bit of truetype parsing that we need ourselves in Servo.

I'm guessing there are existing tests for downloadable fonts...

---
<!-- 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: 1a7404e38c0f0e9c58487299956bec78589191c7
2017-01-18 16:09:51 -08:00
Ms2ger
820079fcfc servo: Merge #15095 - Omit the 'ServoUrl()' wrapping in ServoUrl's Debug implementation (from servo:debug-servourl); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 0cca7ca85dc611952eeabd5b799e6c933dab7557
2017-01-18 11:17:05 -08:00
Permutator
731d66d2f4 servo: Merge #14839 - Make offset parent queries less buggy (from Permutatrix:iss-12939); r=emilio
<!-- Please describe your changes on the following line: -->
Offset parent queries, which are used in the getters for HTMLElement's `offsetParent`, `offsetTop`, `offsetLeft`, `offsetWidth`, and `offsetHeight`, are pretty busted. The most egregious bug is that, as reported in #12939, inline elements are treated as if they're not present in the document. This PR fixes that and all of the other bugs I could trace directly to the offset parent query code, but `offsetTop` and `offsetLeft` are still unreliable in certain circumstances for reasons I haven't looked into (#13708). Inline elements with no content are still treated as not present due to #13982, so #13944 isn't fixed with this PR, either.

---
<!-- 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 #12939 and fix #12595

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

Source-Repo: https://github.com/servo/servo
Source-Revision: b08d4a7d395e41a344085d4cf79801c62019c976
2017-01-18 10:03:37 -08:00
Emilio Cobos Álvarez
6e5f74d476 servo: Merge #15053 - Return the intrinsic image dimension when the image is not rendered (from emilio:image-width); r=jdm
See individual commits for details.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: ba59ee662752891f9f9b452c1f4b847fad9f64ac
2017-01-18 08:43:19 -08:00
Connor Brewster
f9efa88d2f servo: Merge #15091 - Ensure FrameState consistency (from cbrewster:frame_state_consistency); r=asajeffrey
<!-- Please describe your changes on the following line: -->
As we begin to add more state to `FrameState`, we need to make sure that when we do replacements and when we finish traversals that the state is properly updated. This also fixes an issue where we were not updating the `url` of the `FrameState` when navigating with replacement enabled (I wonder if it would be possible to write a test to detect this. The url only matters when reloading a document after it was discarded by the max session history).

---
<!-- 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: 68fa988bf32fab97a2d6ad3231de81c3bcb1939d
2017-01-18 07:47:54 -08:00
Glenn Watson
66e90835ac servo: Merge #15094 - Update WR (driver stall workaround, shared clips, dwrote update) (from glennw:update-wr-driver-stalls); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: c1238291e9c71b4e2ea24604d9714395832992fb
2017-01-18 06:52:04 -08:00
Emilio Cobos Álvarez
119f1f2d8d servo: Merge #15077 - Media query parsing and evaluation in stylo using nsMediaFeatures (from emilio:stylo-medialist); r=heycam,Manishearth,upsuper
<!-- Please describe your changes on the following line: -->

Reviewed in the bug.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1755ad7b75e056a534e12f375a6677f5c069f4c2
2017-01-18 05:39:57 -08:00
Anthony Ramine
bbf4aad179 servo: Merge #15072 - Refactor some things related to script loading (from nox:load-fixes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 80c6383140cfcac0a9ee7363e0a49f1a061a5c84
2017-01-18 02:17:17 -08:00
Xidorn Quan
c374fd6e7e servo: Merge #15090 - Fix initial value of -moz-user-{input,focus} (from upsuper:moz-user-input); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 90522d93793edbf5d8e755791b6a1f473a3182e1
2017-01-18 01:22:00 -08:00
Manish Goregaokar
971a8aa41e servo: Merge #15065 - Use Box<CalcLengthOrPercentage> in specified values to avoid bloating inline sizes (from Manishearth:box-calclop); r=heycam
For #15061

CalcLOP is a large struct, and gets used quite often. While #15063 reduces its size a bit,
it will still be much larger than any of the other variants in the `specified::Length*` types,
so it will still bloat sizes, especially for specified values that contain many lengths.

This change boxes it in the length types, so that it just takes one word.

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: f010fb58fdb4526a76581ba6536f807f2b2a4955
2017-01-17 11:49:52 -08:00
Paul Rouget
53573083db servo: Merge #15074 - Remove browserhtml dependency from components/servo (from paulrouget:removeBhtmlFromComponent); r=Ms2ger
Fix #15066

Source-Repo: https://github.com/servo/servo
Source-Revision: a73fd01f01945d88a565c4c65f4049d64dc89bf0
2017-01-17 10:56:22 -08:00
Ms2ger
9daf6ebddb servo: Merge #15073 - Apply minor dependency updates (from servo:always-be-updating); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 06f66abd4a4769bc0528b77a6d7f336900e2edef
2017-01-17 10:00:46 -08:00
Xidorn Quan
3cf38c31b7 servo: Merge #15071 - Fix typo in glue code for page-break-after (from upsuper:page-break-after); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 4b3fbc005966295b8fd6c368e4bba63fc03c45db
2017-01-17 09:05:33 -08:00
Cameron McCormack
710803def2 servo: Merge #15069 - Update geckolib build-time bindgen build script for recent regex changes (from heycam:bindgen-regex-update); r=emilio
`./mach build-geckolib --with-gecko ...` is broken due to regex's API changing a bit.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: b4980f9037805c04eed4387cd1f848c29f9ac557
2017-01-17 08:13:47 -08:00
Martin Robinson
68043687bf servo: Merge #14979 - Only create scrolling overflow regions when necessary (from mrobinson:scroll-roots-when-necessary); r=emilio
Only create scroll roots for overflow regions when the overflow region
is actually larger than the container size. This prevents creating
scrolling roots for elements that do not have overflow scroll as a
side-effect of the way their height and width is defined. For example,
tables should never respect overflow:scroll since their height and
width should always be large enough to prevent overflow. This also
decreases the size and complexity of the display list in many other
circumstances.

As part of this change, transformed overflow calculation is moved from
display list construction to layout. This should mean that overflow is
handled more accurately earlier.

Fixes #14574.

<!-- 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 #14574 (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: 3ab514302f964a76938b8c87b4f27edb00d0f537
2017-01-17 07:18:42 -08:00
Josh Matthews
6562864142 servo: Merge #15078 - Disable test-unit on TravisCI (from servo:jdm-patch-1); r=Ms2ger
Due to #15076, I want to make sure that the TravisCI status is meaningful as much as possible.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5fca03418fb4c04d2282b5ae1cac862eafe7afe8
2017-01-17 05:58:00 -08:00
Ms2ger
5ab6df8ab7 servo: Merge #14936 - Implement the incumbent global (from servo:incumbent-global); r=jdm
Fixes #10963.

Source-Repo: https://github.com/servo/servo
Source-Revision: 463a8bbdb63ba37db788d577517ed6b9e689fb0e
2017-01-17 04:45:29 -08:00
Ravi Shankar
9ffe122fd3 servo: Merge #15063 - Cleaning up CalcLengthOrPercentage (from Wafflespeanut:calc); r=heycam
<!-- Please describe your changes on the following line: -->

We don't really need enum variants in `CalcLengthOrPercentage`. Given that we already have the information (whether it's `vw`, `ch`, etc.) in the struct fields, we could just store `Option<CSSFloat>` there, and modify our `ToCss` implementation a bit.

cc #15061

r? @Manishearth or anyone interested

---
<!-- 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 it's a refactor

<!-- 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: a70af60eec11fa0a19cfd889c56b09dc834b35af
2017-01-17 02:18:15 -08:00
Ms2ger
f65f07eed7 servo: Merge #15048 - Update mozjs_sys (from servo:update-mozjs); r=jdm
Fixes #15025.

Source-Repo: https://github.com/servo/servo
Source-Revision: 363f590019e495fffab0cc0fa0464e05d2fc96e8
2017-01-16 19:26:52 -08:00
Xidorn Quan
19d4b8027d servo: Merge #15056 - Never blockify display: none (from upsuper:blockify-none); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 7c1112408e2d73d291bcb7c38cd935a07f83f045
2017-01-16 18:01:43 -08:00
Florian Merz
9de12614ae servo: Merge #15047 - gfx: Don't mutate the same point multiple times while translating it … (from emilio:click-regression); r=notriddle,emilio
…to other stacking context space.

I don't know how neither review or a test caught this.

r? @pcwalton  or @notriddle

Fixes #15015

Source-Repo: https://github.com/servo/servo
Source-Revision: a4551d0ceea8f2aceb68775452ea3010760f2825
2017-01-16 15:46:05 -08:00
Ms2ger
720fdf561d servo: Merge #15044 - Remove the dependency on the num crate (from servo:remove-num); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2fa4df8ae8cd6f90bbd86b71bfd8b9f582eb3751
2017-01-16 14:51:33 -08:00
Manish Goregaokar
5b9059bd76 servo: Merge #15040 - stylo: support 1-arg CSS.supports() (from Manishearth:stylo-supports); r=heycam
r=heycam in https://bugzilla.mozilla.org/show_bug.cgi?id=1331316

Source-Repo: https://github.com/servo/servo
Source-Revision: b9c6f9f76e4e9170837484394600b9c9c6065059
2017-01-16 13:56:51 -08:00
Emilio Cobos Álvarez
706baa3dd4 servo: Merge #15018 - gfx: Use proper freetype bindings (from emilio:freetype); r=jdm
<!-- Please describe your changes on the following line: -->

Needs https://github.com/servo/rust-freetype/pull/48, and https://github.com/servo/webrender/pull/716

Source-Repo: https://github.com/servo/servo
Source-Revision: c8c38249a3ee38e72e4a427b05ab96b95d08f8fa
2017-01-16 13:01:59 -08:00
Emilio Cobos Álvarez
b973c771f4 servo: Merge #15031 - Bug 1331272: style: Unify restyle-damage display: none checks (from emilio:stylo-display-none-pseudo); r=bholley
They were formerly different because we used the element check to cull the
traversal.

Now this is no longer true, so we can just unify them.

Also, update a no-longer up-to-date comment on that.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: e01417e936b93694b3038095827cc3e3cf3e0e82
2017-01-16 12:07:02 -08:00
Josh Matthews
7c098e953e servo: Merge #15020 - Do not use the script element's line number for external scripts (from jdm:external_script_line); r=Ms2ger
This was yielding incorrect line numbers when looking at JS backtraces in gdb.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: ecd1d2dbc9a94c88c718cb311603d35a4f667356
2017-01-16 11:11:46 -08:00