diff options
-rw-r--r-- | components/style/gecko_bindings/bindings.rs | 4 | ||||
-rw-r--r-- | ports/geckolib/glue.rs | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/components/style/gecko_bindings/bindings.rs b/components/style/gecko_bindings/bindings.rs index 579e82f0d8e..93956c73cce 100644 --- a/components/style/gecko_bindings/bindings.rs +++ b/components/style/gecko_bindings/bindings.rs @@ -634,6 +634,10 @@ extern "C" { pub fn Gecko_UnsetNodeFlags(node: RawGeckoNodeBorrowed, flags: u32); } extern "C" { + pub fn Gecko_SetOwnerDocumentNeedsStyleFlush(element: + RawGeckoElementBorrowed); +} +extern "C" { pub fn Gecko_GetStyleContext(node: RawGeckoNodeBorrowed, aPseudoTagOrNull: *mut nsIAtom) -> *mut nsStyleContext; diff --git a/ports/geckolib/glue.rs b/ports/geckolib/glue.rs index ce1e1d123ca..72c0b5daf61 100644 --- a/ports/geckolib/glue.rs +++ b/ports/geckolib/glue.rs @@ -28,6 +28,7 @@ use style::gecko::selector_parser::{SelectorImpl, PseudoElement}; use style::gecko::traversal::RecalcStyleOnly; use style::gecko::wrapper::DUMMY_BASE_URL; use style::gecko::wrapper::GeckoElement; +use style::gecko_bindings::bindings; use style::gecko_bindings::bindings::{RawServoDeclarationBlockBorrowed, RawServoDeclarationBlockStrong}; use style::gecko_bindings::bindings::{RawServoStyleRuleBorrowed, RawServoStyleRuleStrong}; use style::gecko_bindings::bindings::{RawServoStyleSetBorrowed, RawServoStyleSetOwned}; @@ -1077,6 +1078,7 @@ unsafe fn maybe_restyle<'a>(data: &'a mut AtomicRefMut<ElementData>, element: Ge if curr.has_dirty_descendants() { break; } curr.set_dirty_descendants(); } + bindings::Gecko_SetOwnerDocumentNeedsStyleFlush(element.0); // Ensure and return the RestyleData. Some(data.ensure_restyle()) |