Bug 1470792 - Backout the changeset that introduced UpdateContainingBlock change hint for mask changes. r=heycam
authorHiroyuki Ikezoe <hikezoe@mozilla.com>
Mon, 25 Jun 2018 15:42:38 +0900
changeset 478587 494ec6ef4c7cf73354ff21fc7cff6d80f3a410ef
parent 478586 439d0fab000674e43471c52f7c457cd622af4f84
child 478588 1574b9c9989f528bcdaa99fe6b371c58c3a418ca
push id9719
push userffxbld-merge
push dateFri, 24 Aug 2018 17:49:46 +0000
treeherdermozilla-beta@719ec98fba77 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersheycam
bugs1470792
milestone62.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1470792 - Backout the changeset that introduced UpdateContainingBlock change hint for mask changes. r=heycam MozReview-Commit-ID: JF88VkutUgG
layout/style/ComputedStyle.cpp
layout/style/nsStyleStruct.cpp
--- a/layout/style/ComputedStyle.cpp
+++ b/layout/style/ComputedStyle.cpp
@@ -227,18 +227,18 @@ ComputedStyle::CalcStyleDifference(Compu
 
   if (hint & nsChangeHint_UpdateContainingBlock) {
     // If a struct returned nsChangeHint_UpdateContainingBlock, that
     // means that one property's influence on whether we're a containing
     // block for abs-pos or fixed-pos elements has changed.  However, we
     // only need to return the hint if the overall computation of
     // whether we establish a containing block has changed.
 
-    // This depends on data in nsStyleDisplay, nsStyleEffects and
-    // nsStyleSVGReset, so we do it here.
+    // This depends on data in nsStyleDisplay and nsStyleEffects, so we do it
+    // here
 
     // Note that it's perhaps good for this test to be last because it
     // doesn't use Peek* functions to get the structs on the old
     // context.  But this isn't a big concern because these struct
     // getters should be called during frame construction anyway.
     if (ThreadsafeStyleDisplay()->IsAbsPosContainingBlockForAppropriateFrame(*this) ==
         aNewContext->ThreadsafeStyleDisplay()->
           IsAbsPosContainingBlockForAppropriateFrame(*aNewContext) &&
--- a/layout/style/nsStyleStruct.cpp
+++ b/layout/style/nsStyleStruct.cpp
@@ -1315,21 +1315,16 @@ nsStyleSVGReset::CalcDifference(const ns
              mFloodColor    != aNewData.mFloodColor    ||
              mLightingColor != aNewData.mLightingColor ||
              mStopOpacity   != aNewData.mStopOpacity   ||
              mFloodOpacity  != aNewData.mFloodOpacity  ||
              mMaskType      != aNewData.mMaskType) {
     hint |= nsChangeHint_RepaintFrame;
   }
 
-  if (HasMask() != aNewData.HasMask()) {
-    // A change from/to being a containing block for position:fixed.
-    hint |= nsChangeHint_UpdateContainingBlock;
-  }
-
   hint |= mMask.CalcDifference(aNewData.mMask,
                                nsStyleImageLayers::LayerType::Mask);
 
   return hint;
 }
 
 bool
 nsStyleSVGReset::HasMask() const