Commit graph

1358 commits

Author SHA1 Message Date
Ms2ger
466faac2a5 Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d. 2014-12-17 15:19:45 -05:00
bors-servo
df4c3ff284 auto merge of #4393 : Adenilson/servo/fixInsetOutsetColor01, r=pcwalton 2014-12-16 17:03:43 -07:00
Adenilson Cavalcanti
bdb8afd351 Cropping the ref images to save some bytes (as also adjust test borders
to match results).
2014-12-16 16:00:45 -08:00
Matthew Rasmus
e4963869d3 Additional updates for newly passing WPT's 2014-12-16 13:01:36 -08:00
Adenilson Cavalcanti
c41fc31655 Adding tests for outset. 2014-12-16 12:16:43 -08:00
Adenilson Cavalcanti
92f4ab6394 Thanks to differences on rendering between CPU X GPU, there is a 1 pixel wide
difference in the position where the top border meets the right border (as
also the right border X bottom border).

The workaround to have a test that will work on both modes is to cover the
affected area with a white div. This patch adds inset test.
2014-12-16 12:09:31 -08:00
Matthew Rasmus
504f968b20 Implements :indeterminate pseudo-class
Addresses reviews
2014-12-16 11:34:04 -08:00
Matthew Rasmus
2d05ac537c Updated WPT to expect newly passing tests 2014-12-16 11:34:04 -08:00
Matthew Rasmus
0c8e1aeda3 Implements dirty value/checked flags for input
And modifies test-inputs.html to test.

Fixes wpt breaking mistake
2014-12-16 11:34:04 -08:00
Matthew Rasmus
a5c0bb708d htmltextarea: Fixed some value_changed issues
Also modified tests/html/textarea.html to allow for the testing of the
textarea's dirty value flag.
2014-12-16 11:34:04 -08:00
Matthew Rasmus
4d0a6a6bd6 Implements reset button 2014-12-16 11:34:04 -08:00
Matthew Rasmus
7e0c39a82d Implements FormControl for HTMLTextAreaElement 2014-12-16 11:34:04 -08:00
Matthew Rasmus
f0ce2af89c Implements basic form resetting
What can this do? Reset `<input type=text>` fields back to their default
value through a call to a form's reset method. That's all for now!

Fixes compile error after rebase
2014-12-16 11:33:56 -08:00
Patrick Walton
a1ea44b294 style: Address review comments relating to bgcolor and column spans 2014-12-15 18:09:44 -08:00
Patrick Walton
56b78de5bc style: Implement basic column spans.
This patch provides some of the groundwork for column spans greater than
1. It implements the column-span CSS property (prefixed so as not to be
exposed to content) as well as the corresponding colspan attribute;
although the former is not well-specified outside of CSS multi-column
layout, INTRINSIC refers to it. Although width is distributed to
spanning columns, they do not yet contribute minimum and preferred
widths; this will be implemented in a follow-up.

Additionally, this patch cleans up some miscellaneous formatting issues
and improves the handling of table rowgroups.
2014-12-15 17:41:51 -08:00
Patrick Walton
14bafb11be style: Parse the legacy bgcolor attribute per the HTML5 specification.
Additionally, this patch cleans up some miscellaneous formatting issues.
2014-12-15 17:41:44 -08:00
Patrick Walton
10f1ed5e31 style: Parse the legacy border attribute per the legacy HTML specification.
Additionally, this patch cleans up some miscellaneous formatting issues
and refactors files in `layout/css/` somewhat to eliminate needless
levels of indirection. It also fixes our handling of presentational
hints that only apply if border is nonzero.
2014-12-15 17:41:37 -08:00
Patrick Walton
3029fbab92 layout: Implement basic lists and the CSS1 list properties.
The exact rendering is ill-spec'd. Some things are ugly (especially the
width and height of list style images) but they are infrequently used
and I believe this implementation matches the spec. Numeric lists are
not supported yet, since they will require a separate layout pass.

The implementation is a subclass of `BlockFlow`, on advice from Robert
O'Callahan.
2014-12-15 16:25:06 -08:00
bors-servo
7805fe19ed auto merge of #4318 : pcwalton/servo/box-shadow-redux, r=SimonSapin
r? @SimonSapin
2014-12-15 16:31:14 -07:00
Patrick Walton
a200b139b6 script: Add some workarounds for image cache task races 2014-12-15 14:16:20 -08:00
Patrick Walton
3ba0abd8ff gfx: Implement box-shadow per CSS-BACKGROUNDS. 2014-12-15 13:39:06 -08:00
Ms2ger
341c485653 Run the File API tests. 2014-12-14 09:49:27 +01:00
bors-servo
0cee72d70e auto merge of #4365 : Ms2ger/servo/test-domparsing, r=jdm 2014-12-13 16:06:43 -07:00
Patrick Walton
6943ddb93e layout: Implement overflow-wrap/word-wrap per CSS-TEXT § 6.2.
This property is used by approximately 55% of page loads.

To implement the line breaking behavior, the "breaking strategy" has
been cleaned up and abstracted. This should allow us to easily support
other similar properties in the future, such as `text-overflow` and
`word-break`.
2014-12-13 13:05:05 -08:00
Ms2ger
439d02ad4f Run the DOM parsing tests. 2014-12-13 21:09:57 +01:00
Patrick Walton
106fdb1d32 layout: Implement word-spacing per CSS 2.1 § 16.4.
This assumes that there are no ligatures that span across multiple
words. Since we have a per-word shape cache, this is a safe assumption
as of now. I have left comments to ensure that, if and when this is
revisted, we make sure to handle it properly.
2014-12-12 17:55:11 -08:00
Patrick Walton
caee309ef4 layout: Implement text-indent per CSS 2.1 § 16.1.
I had to use a somewhat unconventional method of computing text
indentation (propagating from blocks down to inlines) because of the way
containing blocks are handled in Servo.

(As a side note, neither Gecko nor WebKit correctly handles percentages
in `text-align`, at least incrementally -- i.e. when the percentages are
relative to the viewport and the viewport is resized.)
2014-12-12 14:55:41 -08:00
bors-servo
e74a57821f auto merge of #4324 : Adenilson/servo/grooveBorderColor01, r=pcwalton
Groove and Ridge rendering shows a solid border when color is black, that is broken and the current patch will implement a similar behavior as Firefox.
2014-12-12 15:30:56 -07:00
Adenilson Cavalcanti
4d5cca2c69 Adding tests to check behavior. There are 3 files that will test:
a) If the groove border is different from a black border (the bug that this
patch set fixes);
b) If a ridge border is different from a black border (samething);
c) If groove is different from ridge (they should be inverse of each other).

All 3 new tests passes on OSX Yosemite (10.10).
2014-12-12 13:51:24 -08:00
Jack Moffitt
ca156942bc Update PowerMeasure.py post-cargoify 2014-12-12 22:49:02 +01:00
bors-servo
9e83f096a5 auto merge of #4354 : neojski/servo/getElementsByTagNameNS-filter-root, r=Ms2ger
This fixes #4349.
2014-12-12 14:09:53 -07:00
Patrick Walton
07bc97e3e2 gfx: Implement letter-spacing per CSS 2.1 § 16.4.
The ligature disabling code has been manually verified, but I was unable
to reftest it. (The only way I could think of would be to create an
Ahem-like font with a ligature table, but that would be an awful lot of
work.)

Near as I can tell, the method used to apply the spacing (manually
inserting extra advance post-shaping) matches Gecko.
2014-12-12 11:43:43 -08:00
Tomasz Kołodziejski
b30cdb8a5c Follow-up to work done in #4304.
all_elements should ignore root as well.
2014-12-12 10:39:21 -08:00
Tomasz Kołodziejski
5913ba983b Don't include the root element when calling Element#getElementsByTagNameNS. 2014-12-12 10:07:41 -08:00
Ms2ger
2a529cba09 Update web-platform-tests. 2014-12-12 14:49:39 +01:00
Joseph Crail
c254d195ad Fix spelling mistakes in comments. 2014-12-11 23:56:29 -05:00
Patrick Walton
52b9951cad layout: Implement outline per CSS 2.1 § 18.4.
`invert` is not yet supported.

Objects that get layers will not yet display outlines properly. This is
because our overflow calculation doesn't take styles into account and
because layers are always anchored to the top left of the border box.
Since fixing this is work that is not related to outline *per se* I'm
leaving that to a followup and making a note in the code.
2014-12-11 14:25:10 -08:00
Patrick Walton
877f02f1d1 layout: Implement text-transform.
The Unicode awareness of `text-transform` is implemented as well as
possible given the Rust standard library's Unicode support. In
particular, the notion of an alphabetic character is used instead of a
letter.

Gecko has a subclass of text run to handle text transforms, but I
implemented this in a simpler way.
2014-12-10 14:09:08 -08:00
bors-servo
d2a67abea9 auto merge of #4108 : shinglyu/servo/blob, r=jdm
Let's build this incrementally. I implemented a `Blob` that can hold a `DOMString`, and has `size` attribute and `slice(...)` method. I'll finish the rest in later PRs.
2014-12-09 08:43:08 -07:00
Shing Lyu
f2885b8fc7 Issue #1820 - Improve the Blob implementation 2014-12-09 22:52:19 +08:00
Emanuel Rylke
8ed6ace682 Don't include the root element when calling Element#getElementsByTagName
Fixes #4249
2014-12-09 13:41:14 +01:00
bors-servo
7d4ec33375 auto merge of #4298 : Manishearth/servo/zirak-link-attrs, r=Manishearth
Carried over from #4248

Critic review: https://critic.hoppipolla.co.uk/r/3392
2014-12-08 23:30:59 -07:00
Zirak
a586e05e83 Bound several link properties.
Specifically: href, rel, media, hreflang and type.
2014-12-09 11:38:51 +05:30
bors-servo
9f08d563ae auto merge of #4287 : Manishearth/servo/wpt-readme-fix, r=jdm 2014-12-08 15:55:01 -07:00
Patrick Walton
1d845ee4f2 gfx: Update Azure and Skia, and rewrite broken clipping logic.
This exposed some problems in our clipping logic, which was never
properly rewritten for the stacking context reform. The clipping code
worked in terms of a stack of clips, but the new stacking context code
has no concept of a stack of clip regions. Fixing that in turn exposed
some flaky/incorrect tests:

* `borders` had an incorrect reference image, as far as I can tell.

* `negative_margins` had some stray pixels, fixed by changing the text.
2014-12-08 13:45:51 -08:00
bors-servo
feabaf34ac auto merge of #4270 : ProgramFOX/servo/issue-4252, r=saneyuki
Resolves #4252
2014-12-08 13:28:12 -07:00
Manish Goregaokar
868273c027 Update WPTupdate readme for new directory structure 2014-12-09 00:18:52 +05:30
ProgramFOX
6104d5105f Implemented Document#inputEncoding
Resolves #4252
2014-12-08 18:22:29 +01:00
bors-servo
bdb3a2538b auto merge of #4257 : johnathan79717/servo/4008, r=jdm
This is a fix for issue #4008.
2014-12-08 01:55:08 -07:00
bors-servo
b805e74fef auto merge of #4265 : ProgramFOX/servo/issue-4251, r=Ms2ger
Resolves #4251
2014-12-06 07:31:01 -07:00