From 258217a36904a191490346ea5e706b0eeb048b23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Mon, 4 Feb 2019 16:57:12 +0100 Subject: [PATCH] style: Generate combined transform just once. Differential Revision: https://phabricator.services.mozilla.com/D18567 --- components/style/properties/cascade.rs | 4 ++++ components/style/properties/gecko.mako.rs | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/components/style/properties/cascade.rs b/components/style/properties/cascade.rs index 7fdbb7177e9..d881524deb5 100644 --- a/components/style/properties/cascade.rs +++ b/components/style/properties/cascade.rs @@ -629,6 +629,10 @@ impl<'a, 'b: 'a> Cascade<'a, 'b> { #[cfg(feature = "gecko")] { + if let Some(display) = builder.get_box_if_mutated() { + display.generate_combined_transform(); + } + if let Some(bg) = builder.get_background_if_mutated() { bg.fill_arrays(); } diff --git a/components/style/properties/gecko.mako.rs b/components/style/properties/gecko.mako.rs index 9bb95ba9dfe..5dc8a0f6619 100644 --- a/components/style/properties/gecko.mako.rs +++ b/components/style/properties/gecko.mako.rs @@ -3023,6 +3023,11 @@ fn static_assert() { will-change shape-outside contain touch-action translate scale""" %> <%self:impl_trait style_struct_name="Box" skip_longhands="${skip_box_longhands}"> + #[inline] + pub fn generate_combined_transform(&mut self) { + unsafe { bindings::Gecko_StyleDisplay_GenerateCombinedTransform(&mut self.gecko) }; + } + #[inline] pub fn set_display(&mut self, v: longhands::display::computed_value::T) { self.gecko.mDisplay = v;