aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/layout/wrapper.rs18
-rw-r--r--components/script/dom/node.rs42
2 files changed, 26 insertions, 34 deletions
diff --git a/components/layout/wrapper.rs b/components/layout/wrapper.rs
index 762f7dba2a0..35bb53865f2 100644
--- a/components/layout/wrapper.rs
+++ b/components/layout/wrapper.rs
@@ -53,7 +53,7 @@ use script::dom::htmlimageelement::LayoutHTMLImageElementHelpers;
use script::dom::htmlinputelement::{HTMLInputElement, LayoutHTMLInputElementHelpers};
use script::dom::htmltextareaelement::LayoutHTMLTextAreaElementHelpers;
use script::dom::node::{Node, NodeTypeId};
-use script::dom::node::{LayoutNodeHelpers, RawLayoutNodeHelpers, SharedLayoutData};
+use script::dom::node::{LayoutNodeHelpers, SharedLayoutData};
use script::dom::node::{HAS_CHANGED, IS_DIRTY, HAS_DIRTY_SIBLINGS, HAS_DIRTY_DESCENDANTS};
use script::dom::text::Text;
use smallvec::VecLike;
@@ -439,17 +439,13 @@ impl<'le> ::selectors::Element for LayoutElement<'le> {
#[inline]
fn get_hover_state(&self) -> bool {
let node = NodeCast::from_layout_js(&self.element);
- unsafe {
- (*node.unsafe_get()).get_hover_state_for_layout()
- }
+ node.get_hover_state_for_layout()
}
#[inline]
fn get_focus_state(&self) -> bool {
let node = NodeCast::from_layout_js(&self.element);
- unsafe {
- (*node.unsafe_get()).get_focus_state_for_layout()
- }
+ node.get_focus_state_for_layout()
}
#[inline]
@@ -462,17 +458,13 @@ impl<'le> ::selectors::Element for LayoutElement<'le> {
#[inline]
fn get_disabled_state(&self) -> bool {
let node = NodeCast::from_layout_js(&self.element);
- unsafe {
- (*node.unsafe_get()).get_disabled_state_for_layout()
- }
+ node.get_disabled_state_for_layout()
}
#[inline]
fn get_enabled_state(&self) -> bool {
let node = NodeCast::from_layout_js(&self.element);
- unsafe {
- (*node.unsafe_get()).get_enabled_state_for_layout()
- }
+ node.get_enabled_state_for_layout()
}
#[inline]
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index 81b2a8bbae4..822d7125623 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -1085,6 +1085,11 @@ pub trait LayoutNodeHelpers {
unsafe fn layout_data_mut(&self) -> RefMut<Option<LayoutData>>;
#[allow(unsafe_code)]
unsafe fn layout_data_unchecked(&self) -> *const Option<LayoutData>;
+
+ fn get_hover_state_for_layout(&self) -> bool;
+ fn get_focus_state_for_layout(&self) -> bool;
+ fn get_disabled_state_for_layout(&self) -> bool;
+ fn get_enabled_state_for_layout(&self) -> bool;
}
impl LayoutNodeHelpers for LayoutJS<Node> {
@@ -1174,39 +1179,34 @@ impl LayoutNodeHelpers for LayoutJS<Node> {
unsafe fn layout_data_unchecked(&self) -> *const Option<LayoutData> {
(*self.unsafe_get()).layout_data.borrow_unchecked()
}
-}
-
-pub trait RawLayoutNodeHelpers {
- #[allow(unsafe_code)]
- unsafe fn get_hover_state_for_layout(&self) -> bool;
- #[allow(unsafe_code)]
- unsafe fn get_focus_state_for_layout(&self) -> bool;
- #[allow(unsafe_code)]
- unsafe fn get_disabled_state_for_layout(&self) -> bool;
- #[allow(unsafe_code)]
- unsafe fn get_enabled_state_for_layout(&self) -> bool;
-}
-impl RawLayoutNodeHelpers for Node {
#[inline]
#[allow(unsafe_code)]
- unsafe fn get_hover_state_for_layout(&self) -> bool {
- self.flags.get().contains(IN_HOVER_STATE)
+ fn get_hover_state_for_layout(&self) -> bool {
+ unsafe {
+ self.get_flag(IN_HOVER_STATE)
+ }
}
#[inline]
#[allow(unsafe_code)]
- unsafe fn get_focus_state_for_layout(&self) -> bool {
- self.flags.get().contains(IN_FOCUS_STATE)
+ fn get_focus_state_for_layout(&self) -> bool {
+ unsafe {
+ self.get_flag(IN_FOCUS_STATE)
+ }
}
#[inline]
#[allow(unsafe_code)]
- unsafe fn get_disabled_state_for_layout(&self) -> bool {
- self.flags.get().contains(IN_DISABLED_STATE)
+ fn get_disabled_state_for_layout(&self) -> bool {
+ unsafe {
+ self.get_flag(IN_DISABLED_STATE)
+ }
}
#[inline]
#[allow(unsafe_code)]
- unsafe fn get_enabled_state_for_layout(&self) -> bool {
- self.flags.get().contains(IN_ENABLED_STATE)
+ fn get_enabled_state_for_layout(&self) -> bool {
+ unsafe {
+ self.get_flag(IN_ENABLED_STATE)
+ }
}
}