Commit graph

8978 commits

Author SHA1 Message Date
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
Simon Sapin
4c8bde5736 Remove expected failure markers on a couple of WPT reftests that now pass. 2015-03-03 18:24:33 +01: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
bors-servo
6fcc02e92f auto merge of #5132 : servo/servo/overflow-xy, r=SimonSapin
Rebase of #4567. Fix #4567.
2015-03-03 09:06:55 -07: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
bors-servo
417a932e30 auto merge of #5131 : aweinstock314/servo/master, r=jdm
...78).
2015-03-03 07:18:53 -07: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
315a2349e8 auto merge of #5122 : aweinstock314/servo/master, r=kmcallister
...t based on sys.stdout.isatty() (Issue #5043).
2015-03-02 20:18:49 -07: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
801b939479 auto merge of #5115 : psdh/servo/improveBinRun, r=mbrubeck
Fixes #5080
2015-03-02 19:06:51 -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
Prabhjyot Singh Sodhi
cb6c675b2e mach commands now warn when it's ambiguous which binary to run
Fixes#5080
2015-03-02 18:50:06 -05: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
Avi Weinstock
534c91d083 Filter out "Downloading rust snapshot" percent indicator in mach's output based on sys.stdout.isatty() (Issue #5043). 2015-03-02 18:21:14 -05:00
Glenn Watson
0817f9ad44 Fix hover state on elements with transparent background colours.
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-03 09:15:11 +10:00
bors-servo
891dd496e3 auto merge of #5065 : glennw/servo/iframe-vis-fix, r=pcwalton
When an iframe is created with display:none it sets the root layer to be zero width and height. When updating the rect of the iframe from layout send the entire rect rather than just the new origin, which handles the case where the iframe has been made visible and now has a non-zero rect.
2015-03-02 15:30:52 -07:00
bors-servo
93d1f40a96 auto merge of #4475 : pcwalton/servo/text-shadow, r=mbrubeck
r? @mbrubeck 

Depends on servo/rust-geom#64.
2015-03-02 14:54:52 -07:00
Glenn Watson
f68386f0fa Fix making an iframe visible when it was initially set to display:none.
When an iframe is created with display:none it sets the root layer to be
zero width and height. When updating the rect of the iframe from layout
send the entire rect rather than just the new origin, which handles the case
where the iframe has been made visible and now has a non-zero rect.
2015-03-03 07:46:26 +10:00
Patrick Walton
09358b908d layout: Implement text-shadow per CSS-TEXT-DECORATION-3 § 4. 2015-03-02 13:28:51 -08:00
Glenn Watson
611fd7a846 Reap layout data whenever a node is removed from the tree.
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-03 07:12:51 +10:00
bors-servo
9eaa48b793 auto merge of #5089 : mmatyas/servo/canvas_lineto, r=jdm
This patch enables the use of `lineTo()` on the canvas.
2015-03-02 13:33:55 -07:00
Glenn Watson
2517bb561a Only allow root pipelines to set the window title.
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-03 06:10:47 +10:00
Mátyás Mustoha
774cc4a93a Canvas: added lineTo(). 2015-03-02 21:00:50 +01:00
bors-servo
2f3697f5f3 auto merge of #5110 : Ms2ger/servo/defaultvalue-strings, r=jdm 2015-03-02 12:57:59 -07:00
Ms2ger
5a1e6b772c Fix string default values. 2015-03-02 20:54:55 +01:00
Prabhjyot Singh Sodhi
dbc654ffa8 Replacing uses of accumulating fold with sum 2015-03-02 06:11:39 -05:00
bors-servo
fed878710c auto merge of #5111 : KiChjang/servo/step-1-anchor, r=Manishearth
Fixes #4871
2015-03-01 22:18:49 -07:00
Keith Yeung
83f56ed061 Implementation of step 1 activation behavior of htmlanchorelement (fixes #4871)
Fixed issues
2015-03-02 12:54:50 +08:00
bors-servo
154427ce51 auto merge of #5104 : Ms2ger/servo/unused-import, r=Manishearth 2015-02-28 14:45:47 -07:00
bors-servo
8bc4d07e50 auto merge of #5033 : Manishearth/servo/gonk-warn, r=Ms2ger
Rust still reports that the `*mut ANativeWindow` argument in `gnw_perform` in `gonk/src/window.rs` is ffi unsafe,
however `ANativeWindow` is marked as `#[repr(C)]` and should be okay.
2015-02-28 14:09:48 -07:00
Manish Goregaokar
488b0e4b26 Fix mutabiliy of x_info 2015-03-01 02:38:56 +05:30
Ms2ger
fde91b19ff Remove unused import from script_task. 2015-02-28 22:03:40 +01:00
bors-servo
184d32b519 auto merge of #5103 : Ms2ger/servo/from_actual, r=jdm 2015-02-28 13:33:49 -07:00
bors-servo
39273d6b53 auto merge of #5053 : deepak1556/servo/script_patch, r=jdm
fixes #5046
2015-02-28 12:57:50 -07:00
bors-servo
75060f41db auto merge of #5073 : JIoJIaJIu/servo/handle_mouse_event, r=jdm 2015-02-28 12:21:51 -07:00
bors-servo
16bc4749af auto merge of #5102 : servo/servo/profile-img, r=jdm
This extracts some independently useful parts of
<https://github.com/servo/servo/pull/4215>.
2015-02-28 11:46:02 -07:00
Robo
7b9241bddb default to number of available cpu for wpt-tests 2015-02-28 23:43:39 +05:30
bors-servo
5eaf1144c3 auto merge of #5099 : Ms2ger/servo/exceptions, r=saneyuki 2015-02-28 11:09:55 -07:00
Ms2ger
ca21675359 Use the correct lifetime bounds for FooCast::from_actual. 2015-02-28 19:06:04 +01:00
Ankit Agrawal
c8de895094 Add profiling to image decoding.
This extracts some independently useful parts of
<https://github.com/servo/servo/pull/4215>.
2015-02-28 18:35:48 +01:00
bors-servo
4c04d52049 auto merge of #5097 : servo/servo/Manishearth-patch-1, r=saneyuki 2015-02-28 10:33:52 -07:00
Ms2ger
62b2c65348 Add support for throwing TypeErrors from DOM implementations. 2015-02-28 18:20:42 +01:00