зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #19163 - style: Remove the skip_applying_damage "optimization" (from emilio:useless-opt); r=nox
We already remove all change hints down the tree when finding a reframe hint using ClearServoRestyleFromSubtree in ServoRestyleManager, so this is useless. MozReview-Commit-ID: 1twx7iPt79x Source-Repo: https://github.com/servo/servo Source-Revision: 20ccde9a75e52f3dc7adccf0136f5753deb41158 --HG-- extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear extra : subtree_revision : 4e8d88923fef766a3d9eeca267356ef6962809c6
This commit is contained in:
Родитель
6fe0ace4ae
Коммит
39758fd86f
|
@ -466,20 +466,6 @@ impl ElementData {
|
|||
self.is_restyle() || !self.hint.is_empty() || !self.damage.is_empty()
|
||||
}
|
||||
|
||||
/// If an ancestor is already getting reconstructed by Gecko's top-down
|
||||
/// frame constructor, no need to apply damage. Similarly if we already
|
||||
/// have an explicitly stored ReconstructFrame hint.
|
||||
///
|
||||
/// See https://bugzilla.mozilla.org/show_bug.cgi?id=1301258#c12
|
||||
/// for followup work to make the optimization here more optimal by considering
|
||||
/// each bit individually.
|
||||
#[cfg(feature = "gecko")]
|
||||
pub fn skip_applying_damage(&self) -> bool { self.reconstructed_self_or_ancestor() }
|
||||
|
||||
/// N/A in Servo.
|
||||
#[cfg(feature = "servo")]
|
||||
pub fn skip_applying_damage(&self) -> bool { false }
|
||||
|
||||
/// Returns whether it is safe to perform cousin sharing based on the ComputedValues
|
||||
/// identity of the primary style in this ElementData. There are a few subtle things
|
||||
/// to check.
|
||||
|
|
|
@ -333,7 +333,6 @@ trait PrivateMatchMethods: TElement {
|
|||
fn accumulate_damage_for(
|
||||
&self,
|
||||
shared_context: &SharedStyleContext,
|
||||
skip_applying_damage: bool,
|
||||
damage: &mut RestyleDamage,
|
||||
old_values: &ComputedValues,
|
||||
new_values: &ComputedValues,
|
||||
|
@ -345,9 +344,7 @@ trait PrivateMatchMethods: TElement {
|
|||
let difference =
|
||||
self.compute_style_difference(old_values, new_values, pseudo);
|
||||
|
||||
if !skip_applying_damage {
|
||||
*damage |= difference.damage;
|
||||
}
|
||||
*damage |= difference.damage;
|
||||
|
||||
debug!(" > style difference: {:?}", difference);
|
||||
|
||||
|
@ -590,7 +587,6 @@ pub trait MatchMethods : TElement {
|
|||
cascade_requirement,
|
||||
self.accumulate_damage_for(
|
||||
context.shared,
|
||||
data.skip_applying_damage(),
|
||||
&mut data.damage,
|
||||
&old_primary_style,
|
||||
new_primary_style,
|
||||
|
@ -612,7 +608,6 @@ pub trait MatchMethods : TElement {
|
|||
(&Some(ref old), &Some(ref new)) => {
|
||||
self.accumulate_damage_for(
|
||||
context.shared,
|
||||
data.skip_applying_damage(),
|
||||
&mut data.damage,
|
||||
old,
|
||||
new,
|
||||
|
|
Загрузка…
Ссылка в новой задаче