Commit graph

1980 commits

Author SHA1 Message Date
bors-servo
a557b51c28 auto merge of #5154 : luniv/servo/viewpoint-percent-lengths, r=SimonSapin
Spec: http://dev.w3.org/csswg/css-values-3/#viewport-relative-lengths
2015-03-05 18:55:02 -07:00
James Gilbertson
1931a69ad2 Remove un-used use statement 2015-03-05 12:45:59 -07:00
James Gilbertson
a8cd40e270 Remove the 'ch' font-relative length unit 2015-03-05 12:45:58 -07:00
James Gilbertson
dc5a9e56c7 The 'font-size' property needs to use context.inherited_font_size, not context.font_size 2015-03-05 12:45:58 -07:00
Dan Fox
559ff68b31 Get rid of servo_util 2015-03-05 17:42:05 +00:00
Dan Fox
19686acdec Merge in servo/master 2015-03-05 17:34:18 +00:00
Ms2ger
ff2f7ea567 Remove an unused import from properties.rs. 2015-03-05 16:21:57 +01:00
James Gilbertson
bc1c44bbc2 Implement viewport percentage length units ('vw', 'vh', 'vmin', 'vmax') 2015-03-05 07:11:34 -07:00
James Gilbertson
16a8047343 Defer media query width computation until evalation 2015-03-05 07:09:10 -07:00
James Gilbertson
41786c4cb4 Refactor style::values::specified::Length to store length by kind (absolute, font-relative or character width) 2015-03-05 07:09:10 -07:00
James Gilbertson
00785ecf63 Make the initial viewport size available to style::properties::cascade 2015-03-05 07:09:10 -07:00
bors-servo
67548a6244 auto merge of #5127 : KiChjang/servo/partial-eq-jsref, r=Ms2ger
Fixes #5112, #3960
2015-03-05 01:15:44 -07:00
Adenilson Cavalcanti
a31d3d7f70 Due to changes on Page/Window interfaces, we no longer have use
for flush_layout().
2015-03-04 11:39:29 -08:00
bors-servo
761f7f056c auto merge of #5137 : Adenilson/servo/cleanupWarning02, r=jdm 2015-03-04 07:51:44 -07:00
bors-servo
9d58c086e7 auto merge of #5128 : bjwbell/servo/inline-block_fix_min-width, r=jdm
With inline-block elements set the width to max(min width,
specified width) instead of only using the specified width.

Fixes https://github.com/servo/servo/issues/4945
2015-03-03 22:24:44 -07:00
Bryan Bell
a35ffe1c6e For inline-block correctly use min-width
With inline-block elements set the width to max(min width,
specified width) instead of only using the specified width.
2015-03-03 21:06:57 -08:00
Adenilson Cavalcanti
463f03826f Cleanup compilation warning in OSX (should still work on Linux). 2015-03-03 16:01:25 -08:00
bors-servo
72f8898990 auto merge of #5118 : jdm/servo/pageload, r=Ms2ger
Rebased and improved version of #4967.
2015-03-03 16:03:45 -07:00
bors-servo
e19fbc686c auto merge of #5125 : glennw/servo/remove-iframe-layers, r=larsbergstrom 2015-03-03 15:12:45 -07:00
Glenn Watson
86baef2cc0 Remove compositor layers when iframes are removed from doc or display:none. 2015-03-04 07:51:46 +10:00
Josh Matthews
1fb12b11f4 Remove the newly-created Page from the tree if loading fails. 2015-03-03 16:25:40 -05:00
Josh Matthews
4972b623e1 Separate disposing of layout data from the GCing of the DOM object reflectors. Change the order of operations when shutting down the script task to ensure that Window globals aren't used after they've been GCed. 2015-03-03 16:25:40 -05:00
Josh Matthews
c816975750 Documentation and cleanup. 2015-03-03 16:25:40 -05:00
Josh Matthews
6351fc75fd Only store the url inside a pipeline instead of the rest of the LoadData. 2015-03-03 16:25:40 -05:00
Josh Matthews
e2c4f5ed67 Move everything unrelated to the frame tree out of Page and into Document or Window. Reduce the API surface of Page to a bare minimum to allow for easier future removal. 2015-03-03 16:25:40 -05:00
Josh Matthews
d9f04180a5 Split page load into separate network and parsing stages. Delay Page creation until the load is finished. Make session history traversal simply activate existing pipelines, rather than potentially loading them from the network. 2015-03-03 16:25:40 -05:00
bors-servo
621150db1c auto merge of #5124 : Adenilson/servo/cleanupWarning01, r=Ms2ger 2015-03-03 13:51:48 -07:00
Simon Sapin
4c1d778ced Revert "layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1"
This reverts commit 30fd28d107.
2015-03-03 21:16:24 +01:00
Simon Sapin
7a218b3f08 Revert "Refactor content property parsing."
This reverts commit 50800940dc.
2015-03-03 21:16:03 +01:00
Simon Sapin
e590f9b7f4 Revert "Tidy."
This reverts commit e209f5e0da.
2015-03-03 21:16:01 +01:00
Dan Fox
3441b2c329 layout/layout_data.rs -> layout/data.rs 2015-03-03 19:59:38 +00:00
bors-servo
e1a50c7719 auto merge of #5133 : servo/servo/background-size, r=SimonSapin
`background-size` per CSS-BACKGROUNDS § 3.9.

Nearest neighbor interpolation is used for `crisp-edges`, like Firefox.
A note has been added that we could do better if we wanted to.

Multiple backgrounds are not yet supported.

Rebase of #4368. Fixes #4368.
2015-03-03 11:48:54 -07:00
Dan Fox
3f9032c1a1 Re-alphabetise imports 2015-03-03 18:16:50 +00:00
Dan Fox
dd0df4e9c5 Rename util.rs -> layout_data.rs 2015-03-03 18:12:06 +00:00
Dan Fox
564d12435a Move ToGfxColor to display_list_builder.rs 2015-03-03 17:59:44 +00:00
Dan Fox
b424de2092 Extract OpaqueNodeMethods to own file 2015-03-03 17:49:10 +00:00
Simon Sapin
1c4b0dda55 Fix up libstyle unit test for background-size. 2015-03-03 18:48:17 +01:00
bors-servo
5cd6316add auto merge of #5067 : servo/servo/counters, r=SimonSapin
Only simple alphabetic and numeric counter styles are supported. (This
is most of them though.)

Although this PR adds a sequential pass to layout, I verified that on
pages that contain a reasonable number of ordered lists (Reddit
`/r/rust`), the time spent in generated content resolution is dwarfed by
the time spent in the parallelizable parts of layout. So I don't expect
this to negatively affect our parallelism expect perhaps in pathological
cases.

Moved from #4544, because Critic.

Fixes #4544.
2015-03-03 10:42:52 -07:00
Patrick Walton
09c53f461d layout: Implement image-rendering per CSS-IMAGES-3 § 5.3 and
`background-size` per CSS-BACKGROUNDS § 3.9.

Nearest neighbor interpolation is used for `crisp-edges`, like Firefox.
A note has been added that we could do better if we wanted to.

Multiple backgrounds are not yet supported.
2015-03-03 17:54:12 +01:00
Simon Sapin
e209f5e0da Tidy. 2015-03-03 17:46:14 +01:00
Simon Sapin
50800940dc Refactor content property parsing.
It wasn’t wrong, but it could be a lot shorter.

* Use try! and match_ignore_ascii_case! macros whenever possible
* Use expect_comma() instead of parse_comma_separated() when comma-separated values don’t have the same syntax
* Prefer Parser::expect_* methods over doing the same with Parser::next
* Take advantage of parse_nested_block returnin the return value of the closure
* Use try! more.
2015-03-03 17:31:19 +01:00
Patrick Walton
30fd28d107 layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1
§ 12.3-12.5.

Only simple alphabetic and numeric counter styles are supported. (This
is most of them though.)

Although this PR adds a sequential pass to layout, I verified that on
pages that contain a reasonable number of ordered lists (Reddit
`/r/rust`), the time spent in generated content resolution is dwarfed by
the time spent in the parallelizable parts of layout. So I don't expect
this to negatively affect our parallelism expect perhaps in pathological
cases.
2015-03-03 17:31:19 +01:00
Patrick Walton
a82fc00806 layout: Implement overflow-x and overflow-y per CSS-OVERFLOW § 3.
Fragmentation is not yet supported.
2015-03-03 17:03:27 +01:00
Avi Weinstock
bcc27d9bd0 Replace borrow with borrow_for_gc_trace in JSTraceable::trace (Issue #4778). 2015-03-03 09:06:45 -05:00
Keith Yeung
a07a0cf39f Added type parameter to PartialEq on JSRef (fixes #5112, #3960) 2015-03-03 11:46:13 +08:00
bors-servo
ac4a690e8f auto merge of #5121 : glennw/servo/transparent-hover, r=mbrubeck
Move culling of transparent display items to paint task rather than display list builder, so that hit testing detects mouse over on transparent background elements.
2015-03-02 19:42:49 -07:00
bors-servo
290b025f89 auto merge of #5114 : psdh/servo/foldsum, r=jdm
Fix #5109
2015-03-02 18:27:51 -07:00
Adenilson Cavalcanti
a2fea4c093 Cleanup compilation warning. 2015-03-02 17:03:06 -08:00
bors-servo
6927bf6ff0 auto merge of #5113 : glennw/servo/fix-title, r=mbrubeck
Sometimes, the root pipeline title is sent before the compositor has created the root pipeline, so also request the main page title once the initial frame tree has been sent.
2015-03-02 17:24:56 -07:00
bors-servo
65454e51c8 auto merge of #5086 : glennw/servo/reap-more-stuff, r=jdm
Also introduce a clear() function to layout data which will be used to clear items such as compositor layouts.

Clear the layout data when a node becomes display:none.
2015-03-02 16:45:51 -07:00