Commit graph

12815 commits

Author SHA1 Message Date
Glenn Watson
1999ea5e43 Update servo to use published app units crate 2015-10-01 11:45:35 +10:00
bors-servo
35888e5a1d Auto merge of #7795 - glennw:app-units-crate, r=SimonSapin
Split Au type into separate crate, with minimal dependencies.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7795)
<!-- Reviewable:end -->
2015-09-30 15:19:33 -06:00
Glenn Watson
339a3f869b Split Au type into separate crate, with minimal dependencies. 2015-10-01 07:16:11 +10:00
bors-servo
fb6d0946cb Auto merge of #7794 - mbrubeck:setdata, r=pcwalton
Dirty text nodes when their content changes

Fixes #7793. r? @pcwalton

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7794)
<!-- Reviewable:end -->
2015-09-30 11:49:52 -06:00
bors-servo
3e377bb24e Auto merge of #7800 - mbrubeck:unused, r=nox
Remove unused import in net_traits



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7800)
<!-- Reviewable:end -->
2015-09-30 11:03:01 -06:00
Matt Brubeck
584fb66e81 Remove unused import in net_traits 2015-09-30 10:00:57 -07:00
bors-servo
61be58a87f Auto merge of #7798 - Ms2ger:dead, r=jdm
Remove dead code from net_traits.

It was added in commit ecf02a3656.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7798)
<!-- Reviewable:end -->
2015-09-30 08:14:05 -06:00
Ms2ger
49936b6ce7 Remove dead code from net_traits.
It was added in commit ecf02a3656.
2015-09-30 11:34:50 +02:00
bors-servo
b1d9f438b7 Auto merge of #7751 - mrobinson:refactor-hit-testing, r=pcwalton
Make DisplayList hit testing a method on DisplayList

This will allow us to hit test into DisplayLists that are not directly
contained in StackingContexts, but instead are children of PaintLayers.
It also makes things slightly simpler.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7751)
<!-- Reviewable:end -->
2015-09-30 03:04:16 -06:00
bors-servo
4e749eb714 Auto merge of #7790 - frewsxcv:expand-python-executable-names, r=mbrubeck
Expand list of Python executable names to search in PATH

Fixes #7784

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7790)
<!-- Reviewable:end -->
2015-09-29 20:26:14 -06:00
bors-servo
9a4eb565c4 Auto merge of #7789 - 6112:master, r=mbrubeck
allow `./mach test` to run tests in tests/wpt/mozilla/

Allows running WPT tests in the tests/wpt/mozilla/ directory by using commands such as: 

```
./mach test tests/wpt/mozilla/tests/mozilla/union.html
```

Fixes #7772.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7789)
<!-- Reviewable:end -->
2015-09-29 19:58:28 -06:00
bors-servo
a0cb657fe8 Auto merge of #7423 - pcwalton:iframe-stacking-context-position, r=glennw
layout: Make the compositor rather than layout determine the position of each iframe.

The old code that attempted to do this during layout wasn't able to work
for multiple reasons: it couldn't know where the iframe was going to be
on the page (because of nested iframes), and at the time it was building
the display list for a fragment it couldn't know where that fragment was
going to be in page coordinates.

This patch rewrites that code so that only the size of an iframe is
determined during layout, and the position is determined by the
compositor. Layout layerizes iframes and marks the iframe layers with
the appropriate subpage ID so that the compositor can place them
correctly.

Closes #7377.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7423)
<!-- Reviewable:end -->
2015-09-29 19:26:49 -06:00
bors-servo
2049357d14 Auto merge of #7759 - jdramani:cmp_dromaeo_output_tool, r=mbrubeck
Add a tool for comparing Dromaeo outputs



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7759)
<!-- Reviewable:end -->
2015-09-29 18:58:28 -06:00
Matt Brubeck
7e199f9bda Dirty text nodes when their content changes
Fixes #7793.
2015-09-29 16:40:46 -07:00
bors-servo
4823ec947e Auto merge of #7776 - frewsxcv:str-join, r=mbrubeck
Avoid allocations when joining strings



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7776)
<!-- Reviewable:end -->
2015-09-29 16:59:14 -06:00
Corey Farwell
1a9263c2b4 Expand list of Python executable names to search in PATH
Fixes #7784
2015-09-29 18:13:43 -04:00
bors-servo
a144d086d9 Auto merge of #7786 - mbrubeck:harfbuzz-sys, r=pcwalton
Use Harfbuzz 1.0 and unicode-script for text shaping

Depends on servo/rust-harfbuzz#53 and introduces a dependency on the new servo/unicode-script crate.  r? @pcwalton

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7786)
<!-- Reviewable:end -->
2015-09-29 15:37:11 -06:00
Matt Brubeck
569b434023 Fix shaping of tab characters with Harfbuzz 1.0
Harfbuzz now renders tabs with a "missing character" glyph by default, so we
need to filter them out ourselves after computing an advance.
2015-09-29 14:34:51 -07:00
Matt Brubeck
6304186f4f Fix text-transform:capitalize across text runs 2015-09-29 14:34:50 -07:00
Matt Brubeck
371e6897e1 Break text runs by unicode script 2015-09-29 14:34:49 -07:00
Matt Brubeck
062493fac6 Upgrade to the new harfbuzz-sys crate 2015-09-29 14:34:48 -07:00
Nicolas
a3eee70727 allow ./mach test to run tests in tests/wpt/mozilla/ 2015-09-29 17:27:04 -04:00
bors-servo
0c64e4a2c9 Auto merge of #7764 - j3parker:input-caret-only-for-text, r=pcwalton
Only display text carets in text inputs

For #7756

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7764)
<!-- Reviewable:end -->
2015-09-29 14:13:32 -06:00
bors-servo
d92e781a87 Auto merge of #7778 - paulrouget:decorationLessOption, r=jdm
Add a command line option to disable native titlebar



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7778)
<!-- Reviewable:end -->
2015-09-29 13:45:57 -06:00
bors-servo
c356593fd3 Auto merge of #7582 - paulrouget:navigator.platform, r=jdm
implement navigator.platform

Fix #7573

I used this as a reference: http://stackoverflow.com/questions/19877924/what-is-the-list-of-possible-values-for-navigator-platform-as-of-today

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7582)
<!-- Reviewable:end -->
2015-09-29 11:42:45 -06:00
Patrick Walton
c72d0c2ed0 layout: Make the compositor rather than layout determine the position of
each iframe.

The old code that attempted to do this during layout wasn't able to work
for multiple reasons: it couldn't know where the iframe was going to be
on the page (because of nested iframes), and at the time it was building
the display list for a fragment it couldn't know where that fragment was
going to be in page coordinates.

This patch rewrites that code so that both the sizes and positions of
iframes are determined by the compositor. Layout layerizes all iframes
and marks the iframe layers with the appropriate pipeline and subpage
IDs so that the compositor can place them correctly. This approach is
similar in spirit to Gecko's `RefLayer` infrastructure. The logic that
determines when it is time to take the screenshot for reftests has been
significantly revamped to deal with this change in delegation of
responsibility.

Additionally, this code removes the infrastructure that sends layout
data back to the layout task to be destroyed, since it is now all
thread-safe and can be destroyed on the script task.

The failing tests now fail because of a pre-existing bug related to
intrinsic heights and borders on inline replaced elements. They happened
to pass before because we never rendered the iframes at all, which meant
they never had a chance to draw the red border the tests expect to not
render!

Closes #7377.
2015-09-29 09:47:28 -07:00
Paul Rouget
5be60f2c79 Add a command line option to disable native titlebar 2015-09-29 08:50:39 +02:00
Paul Rouget
132724be2b implement navigator.platform 2015-09-29 08:14:30 +02:00
bors-servo
ed0d70e234 Auto merge of #7775 - frewsxcv:tracking-issue, r=jdm
Link to 'ask for a reset' tracking issue

FIXME added in  https://github.com/servo/servo/pull/7745

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7775)
<!-- Reviewable:end -->
2015-09-28 21:34:19 -06:00
Martin Robinson
a2cf8e583d Make DisplayList hit testing a method on DisplayList
This will allow us to hit test into DisplayLists that are not directly
contained in StackingContexts, but instead are children of PaintLayers.
It also makes things slightly simpler.
2015-09-28 18:34:07 -07:00
bors-servo
e68bd8d4ff Auto merge of #7771 - mbrubeck:rtl-stacking-context, r=pcwalton
Use the correct container size in compute_overflow

Fixes #7768 - positioning of RTL stacking contexts. r? @pcwalton

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7771)
<!-- Reviewable:end -->
2015-09-28 18:57:08 -06:00
Corey Farwell
f14f09e886 Use util::str::str_join in more places
Instead of intermediate allocations of `Vec`s, we should utilize
`str_join` which operates on iterators
2015-09-28 19:57:06 -04:00
Corey Farwell
2857e547be Make util::str::str_join operate on Iterators 2015-09-28 19:45:01 -04:00
Corey Farwell
2c67f89e9d Link to 'ask for a reset' tracking issue
FIXME added in  https://github.com/servo/servo/pull/7745
2015-09-28 18:45:55 -04:00
bors-servo
8547d132f9 Auto merge of #7745 - frewsxcv:html-option-element-selected, r=nox
Implement <option> 'defaultSelected' and 'selected' attributes

Continued from #7743

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7745)
<!-- Reviewable:end -->
2015-09-28 15:46:48 -06:00
bors-servo
0fc9410f10 Auto merge of #7275 - KiChjang:fetch-refactor, r=jdm
Initial fetch refactor

Partial #4576
I am really unsure of how things would look like, so would really appreciate some feedback on this.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7275)
<!-- Reviewable:end -->
2015-09-28 13:59:08 -06:00
Keith Yeung
ecf02a3656 Initial fetch refactor 2015-09-28 12:24:15 -07:00
bors-servo
a72d7a4f52 Auto merge of #7760 - aopicier:form_getter, r=Manishearth
Add form getters for additional elements; update test expectations

This adds form getters for fieldset, label, object, output, select and
textarea elements.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7760)
<!-- Reviewable:end -->
2015-09-28 13:23:18 -06:00
Matt Brubeck
441cc479a3 Use the correct container size in compute_overflow
Fixes #7768 - positioning of RTL stacking contexts.
2015-09-28 11:57:40 -07:00
bors-servo
076f44a02d Auto merge of #7769 - mbrubeck:notify-linux2, r=frewsxcv
Fix build notifications in Python 2.x on Linux

In Python 2.x on Linux, `sys.platform == 'linux2'`.

https://docs.python.org/2/library/sys.html#sys.platform

r? @frewsxcv

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7769)
<!-- Reviewable:end -->
2015-09-28 12:47:29 -06:00
bors-servo
7933b48430 Auto merge of #7596 - pcwalton:async-web-font-loading, r=mbrubeck
layout: Load Web fonts asynchronously.

Improves page load times significantly.

Closes #7343.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7596)
<!-- Reviewable:end -->
2015-09-28 12:11:50 -06:00
bors-servo
007c22737d Auto merge of #7766 - glennw:au-tidy, r=pcwalton
A few clean ups for Au type



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7766)
<!-- Reviewable:end -->
2015-09-28 11:35:04 -06:00
Philipp Hartwig
e6ea7b0feb Update test expectations for additional form getters 2015-09-28 19:29:47 +02:00
Matt Brubeck
aa7e9ddb73 Fix build notifications in Python 2.x on Linux
In Python 2.x on Linux, `sys.platform == 'linux2'`.

https://docs.python.org/2/library/sys.html#sys.platform
2015-09-28 10:01:29 -07:00
Glenn Watson
5684a75187 A few clean ups for Au type 2015-09-28 16:05:16 +10:00
bors-servo
7a3d2c8cb4 Auto merge of #7765 - pcwalton:less-ambitious-low-hanging-dromaeo-fruit, r=jdm
script: Stop reallocating so much when converting DOM strings to JS values.

This is split out from #6900.

`size_hint()` in `utf16_units()` seems busted, so we do it ourselves.

r? @jdm

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7765)
<!-- Reviewable:end -->
2015-09-27 17:47:38 -06:00
Jacob Parker
9cf43877f2 Only display text carets in text inputs 2015-09-27 19:23:20 -04:00
bors-servo
45a0c48efd Auto merge of #7711 - aopicier:root_layout, r=pcwalton
Use computed `display` property for hypothetical box of root element

Closes #7558.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7711)
<!-- Reviewable:end -->
2015-09-27 17:03:58 -06:00
Patrick Walton
f2f91886ee script: Stop reallocating so much when converting DOM strings to JS
values.

`size_hint()` in `utf16_units()` seems busted, so we do it ourselves.
2015-09-27 15:40:48 -07:00
Patrick Walton
1892b27daf layout: Do a couple of minor style cleanups. 2015-09-27 15:38:22 -07:00