Commit graph

13470 commits

Author SHA1 Message Date
bors-servo
ea000471d3 Auto merge of #8143 - frewsxcv:new-wpt-tests-missing-assets, r=Manishearth
Add a few missing assets lost in reftest migration

These are used in:

* tests/wpt/mozilla/tests/css/background_size_ref.html
* tests/wpt/mozilla/tests/css/background_size_a.html

Relevant to #5618

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8143)
<!-- Reviewable:end -->
2015-10-21 18:42:48 -06:00
bors-servo
9a34decec2 Auto merge of #8086 - froydnj:premultiply-tables, r=jdm
add (un)premultiply tables for canvas {Get,Put}ImageData operations

Pretty straightforward use of lookup tables to replace a bunch of expensive float operations.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8086)
<!-- Reviewable:end -->
2015-10-21 17:48:49 -06:00
Corey Farwell
08bd5bc0c1 Add a few missing assets lost in reftest migration
These are used in:

* tests/wpt/mozilla/tests/css/background_size_ref.html
* tests/wpt/mozilla/tests/css/background_size_a.html

Relevant to #5618
2015-10-21 19:03:55 -04:00
Nathan Froyd
9e348e2e8e add premultiply table for PutImageData 2015-10-21 18:30:35 -04:00
bors-servo
12c618450b Auto merge of #8103 - frewsxcv:bump, r=nox
Upgrade some dependencies

Check each commit for a link to the changelog

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8103)
<!-- Reviewable:end -->
2015-10-21 16:02:20 -06:00
bors-servo
af6a64e176 Auto merge of #7761 - fiji-flo:input_caret, r=pcwalton
display input caret for textarea. fixes #7758

This adds the input caret for textareas. Although, it does not handle multiline textareas correctly. The caret gets displayed for each line.

I'll look into that but that will take more time. Some feedback on this small patch would be appreciated though.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7761)
<!-- Reviewable:end -->
2015-10-21 15:23:52 -06:00
Florian Merz
80e8a674e2 display input caret for textarea. fixes #7758 2015-10-21 22:38:23 +02:00
bors-servo
f9e17d33bb Auto merge of #8136 - mbrubeck:typo, r=jdm
Fix type in MutHeap docs



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8136)
<!-- Reviewable:end -->
2015-10-21 14:15:28 -06:00
Matt Brubeck
e9f9eaa61c Fix type in MutHeap docs 2015-10-21 12:27:04 -07:00
bors-servo
50ec235384 Auto merge of #8042 - bholley:dirty_siblings, r=pcwalton
Remove HAS_DIRTY_SIBLINGS.

This isn't doing anything right now, and we're not even setting it properly
in dirty_impl the |dirty_subtree(self)| was causing us to hit the skip case
for step 3.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8042)
<!-- Reviewable:end -->
2015-10-21 12:18:02 -06:00
Bobby Holley
228eff7272 Remove HAS_DIRTY_SIBLINGS.
This isn't doing anything right now, and we're not even setting it properly
in dirty_impl the |dirty_subtree(self)| was causing us to hit the skip case
for step 3.
2015-10-21 09:56:07 -07:00
bors-servo
3342cd9531 Auto merge of #8132 - akiss77:codegen-u8, r=Ms2ger
Fix char types in script binding codegen

Use `libc::c_char` instead of `i8` for character data since that's more
portable. (Some architectures, e.g. AArch64, have unsigned characters,
i.e. `u8`.)

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8132)
<!-- Reviewable:end -->
2015-10-21 10:44:14 -06:00
bors-servo
2de5407cda Auto merge of #7450 - benschulz:constellation-timer, r=jdm
Ordering guarantees for timers

This is an rough solution to the issue described in #3396. XHRs still do their own thing and an overall clean up is in order. Before I do that, though, I'd really like someone to sign off on the overall idea.

There's one major difference to what jdm layed out #3396: The timers remain with the window/worker and only the earliest expiring one is coordinated with the dedicated timer thread.
That means both the timer thread and the window/worker have to keep track of which timer expires next, which feels a bit wonky. However, the upshot is that there's no need for communication with the timer thread when a pipeline is frozen, thawed or dropped.

Most relvant parts are
 - the [`TimerScheduler`](6f5f661958 (diff-74137a6f50ab38e7a1e4d16920a66ce7R73)), which is the new per-constellation timer task and
 - the [`ActiveTimers`](6f5f661958 (diff-86707d952414a2860b78bcf6c1db8e2eR34)) which is what's left on the window/worker side.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7450)
<!-- Reviewable:end -->
2015-10-21 09:07:30 -06:00
benshu
553a0dbefd Timers are scheduled by a dedicated per-constellation thread. 2015-10-21 16:40:49 +02:00
bors-servo
252e73ff9b Auto merge of #8115 - nerith:canvas, r=jdm
Don't require the CanvasFillOrStrokeStyle enum to be public

CanvasFillOrStrokeStyle is only used in a single file,
so it does not need to be a public enum.

Fixes #8105.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8115)
<!-- Reviewable:end -->
2015-10-21 08:32:36 -06:00
Akos Kiss
8405ac70c9 Fix char types in script binding codegen
Use `libc::c_char` instead of `i8` for character data since that's more
portable. (Some architectures, e.g. AArch64, have unsigned characters,
i.e. `u8`.)
2015-10-21 14:31:07 +00:00
bors-servo
674589c370 Auto merge of #8041 - nox:castable, r=jdm
Introduce trait Castable

Removes all those messy FooCast structures in InheritTypes.rs.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8041)
<!-- Reviewable:end -->
2015-10-21 07:57:32 -06:00
Corey Farwell
355af70ec2 Upgrade bigflags: 0.1.1 -> 0.3.2
78241d80cb...274b488dff
2015-10-21 08:06:45 -04:00
Corey Farwell
f50c0efd14 Upgrade hyper: 0.6.14 -> 0.6.15
https://github.com/hyperium/hyper/compare/v0.6.14...v0.6.15
2015-10-21 08:06:42 -04:00
Corey Farwell
0aeed410e4 Upgrade lazy_static: 0.1.14 -> 0.1.15
0cef85e2af...0e32807d81
2015-10-21 08:05:33 -04:00
Corey Farwell
7ddbc75b38 Upgrade cocoa: 0.1.4 -> 0.1.5
https://github.com/servo/cocoa-rs/compare/v0.1.4...v0.1.5
2015-10-21 08:05:32 -04:00
Corey Farwell
8c78446ce5 Upgrade serde: 0.6.0 -> 0.6.1
https://github.com/serde-rs/serde/compare/v0.6.0...v0.6.1
2015-10-21 08:05:31 -04:00
Corey Farwell
0124f5c62c Upgrade openssl: 0.6.6 -> 0.6.7
https://github.com/sfackler/rust-openssl/compare/v0.6.6...v0.6.7
2015-10-21 08:05:30 -04:00
Corey Farwell
d6b1a5e33b Upgrade num_cpus: 0.2.6 -> 0.2.7
145dbf21f4...b393c1d4a8
2015-10-21 08:05:29 -04:00
Corey Farwell
bf65e577bf Upgrade core-graphics: 0.1.0 -> 0.1.1
https://github.com/servo/core-graphics-rs/compare/6937fdfe5012adf60d01400d90c33b26bb43ff1c...v0.1.1
2015-10-21 08:05:28 -04:00
bors-servo
20ea0f4755 Auto merge of #8124 - Ms2ger:js-assign, r=saneyuki
Remove unused JS::assign.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8124)
<!-- Reviewable:end -->
2015-10-21 05:15:15 -06:00
Anthony Ramine
d0e022b64e Document the new inheritance machinery (fixes #8125) 2015-10-21 13:12:45 +02:00
Ms2ger
4e8033b739 Remove unused JS::assign. 2015-10-21 12:17:50 +02:00
Anthony Ramine
68014af78e Clean up the cast calls 2015-10-21 11:40:34 +02:00
Anthony Ramine
13ea3ac413 Introduce trait Castable
This trait is used to hold onto the downcast and upcast functions of all
castable IDL interfaces. A castable IDL interface is one which either derives
from or is derived by other interfaces.

The deriving relation is represented by implementations of marker trait
DerivedFrom<T: Castable> generated in InheritTypes.

/^[ ]*use dom::bindings::codegen::InheritTypes::.*(Base|Cast|Derived)/ {
    /::[a-zA-Z]+(Base|Cast|Derived);/d
    s/([{ ])[a-zA-Z]+(Base|Cast|Derived), /\1/g
    s/([{ ])[a-zA-Z]+(Base|Cast|Derived), /\1/g
    s/, [a-zA-Z]+(Base|Cast|Derived)([},])/\2/g
    s/, [a-zA-Z]+(Base|Cast|Derived)([},])/\2/g
    /\{([a-zA-Z]+(Base|Cast|Derived))?\};$/d
    s/\{([a-zA-Z_]+)\};$/\1;/
}

s/([a-zA-Z]+)Cast::from_ref\(\&?\**([a-zA-Z_]+)(\.r\(\))?\)/\2.upcast::<\1>()/g
s/([a-zA-Z]+)Cast::from_ref\(\&?\**([a-zA-Z_]+)(\.[a-zA-Z_]+\(\))?\)/\2\3.upcast::<\1>()/g
s/\(([a-zA-Z]+)Cast::from_ref\)/\(Castable::upcast::<\1>\)/g

s/([a-zA-Z]+)Cast::from_root/Root::upcast::<\1>/g

s/([a-zA-Z]+)Cast::from_layout_js\(\&([a-zA-Z_.]+)\)/\2.upcast::<\1>()/g

s/([a-zA-Z]+)Cast::to_ref\(\&?\**([a-zA-Z_]+)(\.r\(\))?\)/\2.downcast::<\1>()/g
s/([a-zA-Z]+)Cast::to_ref\(\&?\**([a-zA-Z_]+)(\.[a-zA-Z_]+\(\))?\)/\2\3.downcast::<\1>()/g
s/\(([a-zA-Z]+)Cast::to_ref\)/\(Castable::downcast::<\1>\)/g

s/([a-zA-Z]+)Cast::to_root/Root::downcast::<\1>/g

s/([a-zA-Z]+)Cast::to_layout_js\(&?([a-zA-Z_.]+(\(\))?)\)/\2.downcast::<\1>()/g

s/\.is_document\(\)/.is::<Document>()/g
s/\.is_htmlanchorelement\(\)/.is::<HTMLAnchorElement>()/g
s/\.is_htmlappletelement\(\)/.is::<HTMLAppletElement>()/g
s/\.is_htmlareaelement\(\)/.is::<HTMLAreaElement>()/g
s/\.is_htmlbodyelement\(\)/.is::<HTMLBodyElement>()/g
s/\.is_htmlembedelement\(\)/.is::<HTMLEmbedElement>()/g
s/\.is_htmlfieldsetelement\(\)/.is::<HTMLFieldSetElement>()/g
s/\.is_htmlformelement\(\)/.is::<HTMLFormElement>()/g
s/\.is_htmlframesetelement\(\)/.is::<HTMLFrameSetElement>()/g
s/\.is_htmlhtmlelement\(\)/.is::<HTMLHtmlElement>()/g
s/\.is_htmlimageelement\(\)/.is::<HTMLImageElement>()/g
s/\.is_htmllegendelement\(\)/.is::<HTMLLegendElement>()/g
s/\.is_htmloptgroupelement\(\)/.is::<HTMLOptGroupElement>()/g
s/\.is_htmloptionelement\(\)/.is::<HTMLOptionElement>()/g
s/\.is_htmlscriptelement\(\)/.is::<HTMLScriptElement>()/g
s/\.is_htmltabledatacellelement\(\)/.is::<HTMLTableDataCellElement>()/g
s/\.is_htmltableheadercellelement\(\)/.is::<HTMLTableHeaderCellElement>()/g
s/\.is_htmltablerowelement\(\)/.is::<HTMLTableRowElement>()/g
s/\.is_htmltablesectionelement\(\)/.is::<HTMLTableSectionElement>()/g
s/\.is_htmltitleelement\(\)/.is::<HTMLTitleElement>()/g
2015-10-21 11:37:16 +02:00
Anthony Ramine
bd363b009d Make test-tidy ignore braces surrounded by backticks 2015-10-21 10:59:36 +02:00
Anthony Ramine
c77d3b965f Introduce IDLInterface::derives()
This method is given a DOMClass value and returns whether it derives from Self.

Interfaces with no descendants directly check whether the given DOMClass is the
same as their own.
2015-10-21 10:59:36 +02:00
bors-servo
7fb3c51bbb Auto merge of #8119 - paulrouget:updateImage, r=Manishearth
update image to 0.4.0



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8119)
<!-- Reviewable:end -->
2015-10-21 00:47:27 -06:00
Paul Rouget
b90a4eee12 update image to 0.4.0 2015-10-21 08:37:41 +02:00
Brandon Fairchild
60beb78bf3 Don't require the CanvasFillOrStrokeStyle enum to be public
CanvasFillOrStrokeStyle is only used in a single file,
so it does not need to be a public enum.

Fixes #8105.
2015-10-21 00:25:44 -04:00
bors-servo
fde40edfdc Auto merge of #8112 - nerith:buttontype, r=frewsxcv
Remove Button prefix from names of variants of ButtonType enum

Fixes #8106.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8112)
<!-- Reviewable:end -->
2015-10-20 21:28:38 -06:00
Brandon Fairchild
a0e2dfc913 Remove Button prefix from names of variants of ButtonType enum
Fixes #8106.
2015-10-20 22:36:37 -04:00
bors-servo
941c06eb99 Auto merge of #8099 - Darktori:master, r=mbrubeck
Remove explicit lifetimes which can be elided

Fixes https://github.com/servo/servo/issues/8069

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8099)
<!-- Reviewable:end -->
2015-10-20 17:30:57 -06:00
Adam Szopa
88991013ab Remove explicit lifetimes which can be elided. 2015-10-21 01:27:48 +02:00
bors-servo
11d23a41b3 Auto merge of #7950 - mrobinson:layerize-iframes, r=pcwalton
Integrate iframes into the display list

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.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7950)
<!-- Reviewable:end -->
2015-10-20 16:01:38 -06:00
bors-servo
c3ab71109e Auto merge of #7951 - eefriedman:white-space, r=pcwalton
Add support for `pre-wrap` and `pre-line` values for `white-space`.

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.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7951)
<!-- Reviewable:end -->
2015-10-20 12:38:54 -06:00
Eli Friedman
3a451ff845 Add support for pre-wrap and pre-line values for white-space.
This is mostly straightforward.  I had to modify a couple of places
which were accidentally discarding whitespace.

Fixes #1513.
2015-10-20 10:44:51 -07:00
bors-servo
5e4f132b3b Auto merge of #8096 - Ms2ger:test-ref, r=frewsxcv
Use wptrunner for some old-style reftests.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8096)
<!-- Reviewable:end -->
2015-10-20 09:31:43 -06:00
Martin Robinson
ac5525aeeb Integrate iframes into the display list
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.

Fixes #7566.
Fixes #7796.
2015-10-20 07:29:06 -07:00
Ms2ger
cb379861cc Move border_spacing_a.html to wpt reftests. 2015-10-20 15:55:59 +02:00
Ms2ger
50a6f9986c Move border_rounding_1px_invisible_issue_7184_a.html to wpt reftests. 2015-10-20 15:55:58 +02:00
Ms2ger
467bf11595 Move border_radius_zero_sizes_a.html to wpt reftests. 2015-10-20 15:55:57 +02:00
Ms2ger
95566ec622 Move border_radius_shorthand_a.html to wpt reftests. 2015-10-20 15:55:56 +02:00
Ms2ger
caf9d0e3cd Move border_radius_overlapping_a.html to wpt reftests. 2015-10-20 15:55:55 +02:00
Ms2ger
6b5b10924b Move border_radius_elliptical_a.html to wpt reftests. 2015-10-20 15:55:54 +02:00