Emit TransitionEnd events in the layout thread and process it in the script thread

This commit is contained in:
Keith Yeung 2016-09-03 07:27:39 -07:00
parent 752c6e6019
commit 668163ec5c
21 changed files with 103 additions and 62 deletions

View file

@ -444,6 +444,14 @@ impl<T: Reflectable> LayoutJS<T> {
debug_assert!(thread_state::get().is_layout());
*self.ptr
}
/// Returns a reference to the interior of this JS object. This method is
/// safe to call because it originates from the layout thread, and it cannot
/// mutate DOM nodes.
pub fn get_for_script(&self) -> &T {
debug_assert!(thread_state::get().is_script());
unsafe { &**self.ptr }
}
}
/// Get an `&T` out of a `Rc<T>`