Commit graph

3197 commits

Author SHA1 Message Date
bors-servo
9eb0effaf6 Auto merge of #7750 - frewsxcv:html-table-section-element-rows, r=nox
HTMLTableSectionElement improvements

'thead' and 'tfoot' now create instances of HTMLTableSectionElement

HTMLTableSectionElement.rows has been implemented

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7750)
<!-- Reviewable:end -->
2015-10-04 11:57:10 -06:00
Mathieu Rheaume
e7a3220bc1 Implement Storage::SupportedPropertyNames 2015-10-04 10:22:13 -04:00
Corey Farwell
adbcb5345c HTMLTableSectionElement improvements
'thead' and 'tfoot' now create instances of HTMLTableSectionElement

HTMLTableSectionElement.rows has been implemented
2015-10-03 12:23:22 -04:00
minimus
d4ebec6496 make mediatype default to text/plain in data URIs
change `data:charset=` to `data:;charset=` and set US-ASCII as default encoding

style change
2015-10-03 12:02:04 -04:00
Eli Friedman
69ca066802 Fully implement the "align descendants" rule for div.
This adds -servo-left and -servo-right to complement -servo-center.

This intentionally doesn't try to address issue #7301.
2015-10-02 12:53:20 -07:00
bors-servo
e9842b7db2 Auto merge of #7777 - KiChjang:caseless-group-name-match, r=jdm
Add support for caseless group name matching in HTML input elements

Fixes #7749

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7777)
<!-- Reviewable:end -->
2015-10-02 13:26:05 -06:00
Keith Yeung
5c9a25d46b Add support for caseless group name matching in HTML input elements 2015-10-02 10:41:02 -07:00
bors-servo
8865410ffc Auto merge of #7823 - frewsxcv:htmltablerowelement-cells, r=Ms2ger
Implement HTMLTableRowElement::Cells

Extracted from #6936

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7823)
<!-- Reviewable:end -->
2015-10-02 02:54:55 -06:00
bors-servo
69db83476d Auto merge of #7821 - mbrubeck:class-damage, r=pcwalton
Incremental layout: Don't try to repair text fragment styles

Fixes #7814. r? @pcwalton

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7821)
<!-- Reviewable:end -->
2015-10-02 02:27:31 -06:00
David Zbarsky
4e64ff499b Implement HTMLTableRowElement::Cells
Extracted from #6936
2015-10-01 20:09:48 -04:00
Matt Brubeck
6426f714bd Incremental layout: Don't try to repair text fragment styles
Fixes #7814.
2015-10-01 15:07:39 -07:00
Matt Brubeck
0c6bb6125c Allow reftest to take 0 or more testname arguments 2015-10-01 08:53:42 -07:00
bors-servo
a7743052ca Auto merge of #6185 - luniv:viewport-meta, r=mbrubeck
Implement <meta name=viewport> handling

Translate <meta name=viewport> as according to [CSS Device Adaption § 9](http://dev.w3.org/csswg/css-device-adapt/#viewport-meta)

Note: as the PR currently stands, handling `<meta name=viewport>` elements always occurs. This is probably not desired for some contexts (e.g. desktop), but I'm unsure of how to conditionally handle elements based on that.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6185)
<!-- Reviewable:end -->
2015-09-30 22:49:41 -06:00
bors-servo
0860be4c28 Auto merge of #7811 - glennw:use-crates-au, r=larsbergstrom
Update servo to use published app units crate



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7811)
<!-- Reviewable:end -->
2015-09-30 22:21:36 -06:00
James Gilbertson
d0ace58452 Handle <meta name=viewport> elements when added to document 2015-09-30 20:31:35 -07:00
James Gilbertson
61f7a0a1ee Implement CSS Device Adaption § 9 (Viewport <META> element)
Spec: http://dev.w3.org/csswg/css-device-adapt/#viewport-meta
2015-09-30 20:11:39 -07:00
Corey Farwell
74e4c4fdc7 Implement size attribute for <font> element 2015-09-30 22:51:30 -04:00
Glenn Watson
1999ea5e43 Update servo to use published app units crate 2015-10-01 11:45:35 +10:00
Corey Farwell
ea5e4e3ad0 Make util::str::str_join consistent with SliceConcatExt::join
Prior to this commit, `str_join` would skip empty items at the start of
the `Iterator` until it found a non-empty item. This contradicts
`SliceConcatExt::join` which doesn't skip anything.

Brought up in:

https://github.com/servo/servo/pull/7776#issuecomment-144317281
2015-09-30 19:23:18 -04: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
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
Matt Brubeck
7e199f9bda Dirty text nodes when their content changes
Fixes #7793.
2015-09-29 16:40:46 -07: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
6304186f4f Fix text-transform:capitalize across text runs 2015-09-29 14:34:50 -07:00
Matt Brubeck
062493fac6 Upgrade to the new harfbuzz-sys crate 2015-09-29 14:34:48 -07: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
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
132724be2b implement navigator.platform 2015-09-29 08:14:30 +02: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
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
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
Philipp Hartwig
e6ea7b0feb Update test expectations for additional form getters 2015-09-28 19:29:47 +02: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
Philipp Hartwig
8d67914c7f Add form getters for additional elements; update test expectations
This adds form getters for fieldset, label, object, output, select and
textarea elements.
2015-09-27 19:08:53 +02:00
Corey Farwell
dec0031112 Implement <option> 'defaultSelected' and 'selected' attributes
Continued from #7743
2015-09-26 15:38:54 -04:00
bors-servo
37ce248f31 Auto merge of #7733 - nox:checked, r=Manishearth
Properly consider radio button groups

Radio button groups with missing or empty names are always the only element of their respective radio button group.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7733)
<!-- Reviewable:end -->
2015-09-26 11:21:11 -06:00
Corey Farwell
a844b080d6 Imlement 'bgcolor' IDL attrs for table elements
The content attributes and presentational hints were implemented in
the #4289 pull request. This just implements the relevant IDL
attributes.
2015-09-26 10:15:58 -04:00
Matt Brubeck
5667dfe7b0 Update unicode-bidi to 0.2.2
Fixes #7701 via servo/unicode-bidi#17.
2015-09-25 13:01:53 -07:00
bors-servo
8027777e24 Auto merge of #7497 - psdh:devtest7473, r=jdm
tests for devtools integration with network requests/responses

Fixes #7473

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7497)
<!-- Reviewable:end -->
2015-09-25 11:35:57 -06:00
bors-servo
0f8c1b4601 Auto merge of #7682 - ecoal95:webgl-texture2d, r=jdm
webgl: Support texImage2D with a canvas as an argument

This involved some refactoring of the 2d context code, which lead to some more test passed there.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7682)
<!-- Reviewable:end -->
2015-09-25 10:52:52 -06:00
Emilio Cobos Álvarez
17a9472745 webgl: Add test for passing a canvas with no context as texture source 2015-09-25 18:47:37 +02:00
Prabhjyot Singh Sodhi
920bb5e4b8 tests for devtools integration with network requests/responses 2015-09-25 22:07:01 +05:30
Emilio Cobos Álvarez
5d7d745ab4 webgl: Add tests for canvas texturing 2015-09-25 16:20:31 +02:00
Emilio Cobos Álvarez
e2b7a01055 webgl: texImage2D with a canvas argument 2015-09-25 16:20:31 +02:00
bors-servo
e04c2c78ee Auto merge of #7651 - jgraham:prefs_reset, r=Ms2ger
Implement resettable and String-valued prefs.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7651)
<!-- Reviewable:end -->
2015-09-25 08:18:06 -06:00
Ms2ger
0ad6e78b23 Update CSS tests to revision 939546644b4d333218fd9c2c0f68c60752ff1e95 2015-09-25 12:54:36 +02:00
bors-servo
b26fac3f78 Auto merge of #7685 - bjwbell:add-twitter-fail-whale-attribution, r=pcwalton
Replace twitter fail whale with redirect to archive.org version

Sorry @pcwalton should have gotten the attribution approved first (https://twitter.com/subcide/status/645149674546966528)

r? @pcwalton

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7685)
<!-- Reviewable:end -->
2015-09-24 20:40:49 -06:00