Commit graph

2018 commits

Author SHA1 Message Date
Manish Goregaokar
3f2cbb275b Use #[dom_struct] everywhere 2014-10-16 10:20:18 +05:30
Manish Goregaokar
c45550de73 Add unifying #[dom_struct] attribute (fixes #3667) 2014-10-16 10:18:56 +05:30
bors-servo
84b2fe54b9 auto merge of #3694 : saneyuki/servo/node, r=jdm
`Node.unsafe_get_flags()` returns `*const NodeFlags`, but `NodeFlags` has only `u8` length.
So We should just returns a raw value instead of any pointers.
2014-10-15 22:45:19 -06:00
bors-servo
a6001329b8 auto merge of #3693 : ehsan/servo/3248, r=jdm
This fixes #3248.

r? @jdm.  Please review for mistakes mercilessly!  Also, I got a host of test failures when running the worker tests, not sure if these tests are expected to pass locally or not.
2014-10-15 22:06:19 -06:00
bors-servo
f3066c70da auto merge of #3689 : cgaebel/servo/working-incremental-flow-construction, r=pcwalton
This implements fragment merging, in order to incrementally reflow linebroken
text. This makes the `whitespace_pre.html` reftest pass with incremental reflow
turned on with `-i`.
2014-10-15 21:27:20 -06:00
bors-servo
f94228d9f9 auto merge of #3662 : mukilan/servo/worker_timer, r=jdm
Closes issue #3236
2014-10-15 20:48:22 -06:00
Tetsuharu OHZEKI
2bdcc0e2c0 Use DOMRefCell<T> for HTMLInputElement's field that is borrowed from other tasks. 2014-10-16 11:17:00 +09:00
Tetsuharu OHZEKI
0d447394b2 Removes Node.unsafe_get_flags().
`Node.unsafe_get_flags()` returns `*const NodeFlags`,
but `NodeFlags` has only `u8` length.
We should just returns a raw value instead of any pointers.
2014-10-16 11:04:17 +09:00
bors-servo
b83352f7eb auto merge of #3692 : cgaebel/servo/fix-incremental-append-style, r=pcwalton
@pcwalton r?
2014-10-15 20:00:20 -06:00
Ehsan Akhgari
840d949d97 Throw DataCloneError from worker postMessage if structured clone fails
This fixes #3248.
2014-10-15 21:57:40 -04:00
Tetsuharu OHZEKI
ab90c718eb Add the comment about to use mem::transmute() for values contained in DOMRefCell. 2014-10-16 10:48:23 +09:00
bors-servo
d54fb041ba auto merge of #3691 : Ms2ger/servo/cycle-comments, r=jdm
The tracing setup has ensured that the cycles can be collected for a long time
now.
2014-10-15 18:42:20 -06:00
Mukilan Thiyagarajan
0d7e13f646 Issue #3236 - Implement timers (setTimeout/setInterval) for workers 2014-10-16 05:59:44 +05:30
Clark Gaebel
481adcd654 Fix whitespace_pre with incremental reflow turned on.
This implements fragment merging, in order to incrementally reflow linebroken
text. This makes the `whitespace_pre.html` reftest pass with incremental reflow
turned on with `-i`.
2014-10-15 16:04:21 -07:00
Clark Gaebel
0a541fc83c Fix append_style reftests with incremental reflow turned on.
@pcwalton r?
2014-10-15 15:47:11 -07:00
Ms2ger
55e01157e7 Remove obsolete comments about cycles.
The tracing setup has ensured that the cycles can be collected for a long time
now.
2014-10-16 00:43:30 +02:00
Clark Gaebel
76ed7484eb Use the Deref traits for FlowRefs.
This patch switches FlowRefs to using the Deref and DerefMut traits, instead of
the custom `get` and `get_mut` functions.
2014-10-15 11:04:05 -07:00
Ms2ger
d9202f8169 Remove the reflector field from Document.
This field became unused in commit 99a36cbeb6.
2014-10-15 16:03:22 +02:00
Tetsuharu OHZEKI
b42a91d0e9 Use DOMRefCell<T> in CharacterData. 2014-10-15 13:44:02 +09:00
Tetsuharu OHZEKI
fb98384fa5 Use DOMRefCell<T> in Element. 2014-10-15 13:44:02 +09:00
Tetsuharu OHZEKI
2d5d1e36ad Use DOMRefCell<T> in Attr. 2014-10-15 13:41:03 +09:00
Tetsuharu OHZEKI
80593d9cc5 Add DOMRefCell<T> for safe borrowing in layout.
This type simply wraps `RefCell<T>` to add the special method,
and introduce the method to return the pointer of the value contained in
itself, for used in layout task.
2014-10-15 13:41:03 +09:00
bors-servo
f1c050531f auto merge of #3655 : kaseyc/servo/add_to_js_method, r=jdm
Replace the manual checks and calls to transmute_copy in /layout/wrapper.rs with calls to to_js/

Fixes #3616
2014-10-14 22:00:28 -06:00
bors-servo
0487671dab auto merge of #3672 : mrobinson/servo/background-color, r=zwarich
Instead of relying on a scene-wide background color, all layers can now
have their own background color.
2014-10-14 21:27:26 -06:00
Kasey Carrothers
6d91e92c90 Add a to_js method to the casting trait code in CodegenRust.py
Replace the manual checks and calls to transmute_copy in /layout/wrapper.rs with calls to to_js

Fixes #3616
2014-10-14 19:06:53 -07:00
bors-servo
7eaeaeeb21 auto merge of #3668 : cgaebel/servo/sequential-reflow, r=pcwalton
Now that DOM/Flow traversals have been refactored out, the `recalc_style_for_subtree`
function in `css/matching.rs` can be removed, in lieu of just running the standard
`recalc_style_for_node` and `construct_flows` traversals sequentially. Now we
no longer have the maintenance headache of duplicating selector matching logic
in two places! \o/

This passes reftests with both default arguments, and with `-y 1`.

r? @pcwalton
2014-10-14 19:33:28 -06:00
bors-servo
3eb6b17137 auto merge of #3610 : glennw/servo/media-queries, r=SimonSapin 2014-10-14 18:36:29 -06:00
Clark Gaebel
7368d42225 Removes duplicate CSS selector matching logic.
Now that DOM/Flow traversals have been refactored out, the `recalc_style_for_subtree`
function in `css/matching.rs` can be removed, in lieu of just running the standard
`recalc_style_for_node` and `construct_flows` traversals sequentially. Now we
no longer have the maintenance headache of duplicating selector matching logic
in two places! \o/

r? @pcwalton
2014-10-14 16:28:29 -07:00
bors-servo
56989b8dec auto merge of #3640 : cgaebel/servo/incremental-flow-construction, r=pcwalton
This also hides the not-yet-working parts of incremental reflow behind a runtime
flag. As I get the failing reftests passing, I'll send pull requests for them one
by one.
2014-10-14 16:51:30 -06:00
Glenn Watson
c7d81fdde6 Implement media queries parser and matching. Improves mobile first sites like bootstrap3. 2014-10-15 07:36:31 +10:00
Patrick Walton
c7e619dfe7 layout: Rewrite intrinsic inline-size and automatic table layout to
match L. David Baron's work-in-progress specification.

    http://dbaron.org/css/intrinsic/

Column spans are not yet supported.

This effectively adds support for percentage widths, and it also fixes
many bugs, improving the layout of Google and Wikipedia.
2014-10-14 14:17:57 -07:00
bors-servo
0aeecfc41d auto merge of #3622 : pcwalton/servo/html4ever, r=jdm
This implements a general framework for legacy presentational attributes
to the DOM and style calculation, so that adding more of them later will
be straightforward.
2014-10-14 14:06:36 -06:00
Patrick Walton
5f8d3f72d8 layout: Introduce support for legacy presentational attributes to selector
matching, and use it for `<input size>` and `<td width>`.

This implements a general framework for legacy presentational attributes
to the DOM and style calculation, so that adding more of them later will
be straightforward.
2014-10-14 12:44:09 -07:00
bors-servo
96fae78f94 auto merge of #3634 : mrobinson/servo/scrolling-doc, r=jdm 2014-10-14 13:30:36 -06:00
bors-servo
8077edc062 auto merge of #3623 : pcwalton/servo/use-atoms-2, r=jdm
75% improvement in style recalc for Guardians of the Galaxy.
2014-10-14 12:42:35 -06:00
Clark Gaebel
f552e2f750 try to reset flows which need reflow, since reflow isn't yet idempotent 2014-10-14 10:33:46 -07:00
bors-servo
48ce107d72 auto merge of #3675 : glennw/servo/local-fonts, r=pcwalton 2014-10-14 11:33:34 -06:00
Patrick Walton
ee2ccc4f87 script: Use atom comparison in more places, especially for attributes.
75% improvement in style recalc for Guardians of the Galaxy.
2014-10-14 10:32:40 -07:00
Martin Robinson
fbd0b6f9d0 Allow individual layers to render their own background color
Instead of relying on a scene-wide background color, all layers can now
have their own background color.
2014-10-14 09:59:07 -07:00
Manish Goregaokar
79cb1af12a Address review comments 2014-10-14 21:24:36 +05:30
Manish Goregaokar
d03120b3a4 Filter out buttons which aren't the submitter while constructing the dataset 2014-10-14 21:24:36 +05:30
Manish Goregaokar
749e2394c5 Add click handler for <input type=submit> 2014-10-14 21:24:36 +05:30
Rohan Prinja
05134e6d1f Add form submission via input element 2014-10-14 21:24:36 +05:30
Manish Goregaokar
c92d58980c Create an almost-correct form_owner() for convenience 2014-10-14 21:24:36 +05:30
bors-servo
834df4e211 auto merge of #3673 : mrobinson/servo/iframe-margin, r=pcwalton
Instead of taking margin size into account twice when positioning
layers, just rely on the absolute position calculated during display
list construction.
2014-10-14 04:51:35 -06:00
Ms2ger
16e071168c Don't borrow CharacterData.data from layout.
This should fix the most frequent intermittent wpt failure.
2014-10-14 10:49:33 +02:00
bors-servo
fd70b366ae auto merge of #3654 : pcwalton/servo/clip-reform, r=mrobinson
We push down clipping areas during absolute position calculation. This
makes display items into a flat list, improving cache locality. It
dramatically simplifies the code all around.

Because we need to push down clip rects even for absolutely-positioned
children of non-absolutely-positioned flows, this patch alters the
parallel traversal to compute absolute positions for
absolutely-positioned children at the same time it computes absolute
positions for other children. This doesn't seem to break anything either
in theory (since the overall order remains correct) or in practice. It
simplifies the parallel traversal code quite a bit.

See the relevant Gecko bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=615734

r? @mrobinson
2014-10-14 00:42:35 -06:00
Glenn Watson
1827852810 Add support for local font faces. Improves fonts on rust lang and guide. 2014-10-14 15:59:08 +10:00
Patrick Walton
5351c8572f Merge pull request #3674 from glennw/remove-println
Change accidental println to debug macro.
2014-10-13 22:39:15 -07:00
Glenn Watson
38e7df8139 Change accidental println to debug macro. 2014-10-14 15:29:36 +10:00