diff options
author | bors-servo <release+servo@mozilla.com> | 2013-08-01 15:42:26 -0700 |
---|---|---|
committer | bors-servo <release+servo@mozilla.com> | 2013-08-01 15:42:26 -0700 |
commit | 1d04d5f1bc90d7ddd27718fe7ea2b9866f94d79b (patch) | |
tree | 77b0021787f706cf03c3d2fe8fb84991f8e1b948 /src/components/main/css/select_handler.rs | |
parent | bb51a9d6fb784e71ac279e501e21064fe6bdad5b (diff) | |
parent | b266b5a949103b0c0f11a38a0506c232723f7692 (diff) | |
download | servo-1d04d5f1bc90d7ddd27718fe7ea2b9866f94d79b.tar.gz servo-1d04d5f1bc90d7ddd27718fe7ea2b9866f94d79b.zip |
auto merge of #646 : kmcallister/servo/incremental-layout, r=metajack
This is a first attempt at incremental layout. When recomputing styles, we compare old and new CSS properties to determine which layout steps can be skipped.
Since I'm new to Servo I'm not sure that my code matches the idioms of the project. Please don't hold back with review comments :)
Diffstat (limited to 'src/components/main/css/select_handler.rs')
-rw-r--r-- | src/components/main/css/select_handler.rs | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/components/main/css/select_handler.rs b/src/components/main/css/select_handler.rs index be7b21b3924..4a294aa2426 100644 --- a/src/components/main/css/select_handler.rs +++ b/src/components/main/css/select_handler.rs @@ -30,17 +30,14 @@ impl SelectHandler<AbstractNode<LayoutView>> for NodeSelectHandler { fn named_parent_node(&self, node: &AbstractNode<LayoutView>, name: &str) -> Option<AbstractNode<LayoutView>> { - match node.parent_node() { - Some(parent) => { - do with_node_name(parent) |node_name| { - if eq_slice(name, node_name) { - Some(parent) - } else { - None - } + do node.parent_node().chain |parent| { + do with_node_name(parent) |node_name| { + if eq_slice(name, node_name) { + Some(parent) + } else { + None } } - None => None } } |