aboutsummaryrefslogtreecommitdiffstats
path: root/components/script_layout_interface
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2016-11-01 13:05:46 -0500
committerGitHub <noreply@github.com>2016-11-01 13:05:46 -0500
commitcf9d282914c65d712635b14636a62003b863bdf0 (patch)
treecf8a9fc2a34de25c56084c3dbd399c244c5778c8 /components/script_layout_interface
parent291f393723d22a582bb9a49ef7294ec14eca2127 (diff)
parentfb70ee2c0c907fc079350baa116f7315cf8869e3 (diff)
downloadservo-cf9d282914c65d712635b14636a62003b863bdf0.tar.gz
servo-cf9d282914c65d712635b14636a62003b863bdf0.zip
Auto merge of #14010 - bholley:element_data_management, r=emilio
incremental restyle: Centralize pre-styling setup, eliminate RestyleResult, and drop data for display:none subtrees <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14010) <!-- Reviewable:end -->
Diffstat (limited to 'components/script_layout_interface')
-rw-r--r--components/script_layout_interface/wrapper_traits.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/components/script_layout_interface/wrapper_traits.rs b/components/script_layout_interface/wrapper_traits.rs
index 470685979b7..04372274cfc 100644
--- a/components/script_layout_interface/wrapper_traits.rs
+++ b/components/script_layout_interface/wrapper_traits.rs
@@ -73,7 +73,6 @@ impl<T> PseudoElementType<T> {
/// Trait to abstract access to layout data across various data structures.
pub trait GetLayoutData {
fn get_style_and_layout_data(&self) -> Option<OpaqueStyleAndLayoutData>;
- fn init_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData);
}
/// A wrapper so that layout can access only the methods that it should have access to. Layout must
@@ -85,6 +84,9 @@ pub trait LayoutNode: GetLayoutData + TNode {
/// Returns the type ID of this node.
fn type_id(&self) -> LayoutNodeType;
+ unsafe fn init_style_and_layout_data(&self, data: OpaqueStyleAndLayoutData);
+ unsafe fn take_style_and_layout_data(&self) -> OpaqueStyleAndLayoutData;
+
fn has_changed(&self) -> bool;
unsafe fn clear_dirty_bits(&self);
@@ -274,7 +276,6 @@ pub trait DangerousThreadSafeLayoutNode: ThreadSafeLayoutNode {
}
pub trait LayoutElement: Clone + Copy + Sized + Debug + GetLayoutData + TElement {
- fn get_style_data(&self) -> Option<&AtomicRefCell<ElementData>>;
}
pub trait ThreadSafeLayoutElement: Clone + Copy + Sized + Debug +