From 72476926ed489b84f8d1778877f7e0c558bdbea9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= Date: Tue, 22 May 2018 13:34:17 +0200 Subject: [PATCH] Bug 1463386: Remove eCSSUnit_Image. r=heycam MozReview-Commit-ID: 9OX6iW7Lr5Q --HG-- extra : rebase_source : 07dad9bfab62b24668737751386567359806d07d --- layout/style/nsCSSValue.cpp | 46 ---------------------------------- layout/style/nsCSSValue.h | 15 ++--------- layout/style/nsStyleStruct.cpp | 11 ++++---- 3 files changed, 8 insertions(+), 64 deletions(-) diff --git a/layout/style/nsCSSValue.cpp b/layout/style/nsCSSValue.cpp index 476d76c7c830..1820cd69c4c6 100644 --- a/layout/style/nsCSSValue.cpp +++ b/layout/style/nsCSSValue.cpp @@ -101,13 +101,6 @@ nsCSSValue::nsCSSValue(mozilla::css::URLValue* aValue) mValue.mURL->AddRef(); } -nsCSSValue::nsCSSValue(mozilla::css::ImageValue* aValue) - : mUnit(eCSSUnit_Image) -{ - mValue.mImage = aValue; - mValue.mImage->AddRef(); -} - nsCSSValue::nsCSSValue(mozilla::css::GridTemplateAreasValue* aValue) : mUnit(eCSSUnit_GridTemplateAreas) { @@ -165,10 +158,6 @@ nsCSSValue::nsCSSValue(const nsCSSValue& aCopy) mValue.mURL = aCopy.mValue.mURL; mValue.mURL->AddRef(); } - else if (eCSSUnit_Image == mUnit) { - mValue.mImage = aCopy.mValue.mImage; - mValue.mImage->AddRef(); - } else if (eCSSUnit_Pair == mUnit) { mValue.mPair = aCopy.mValue.mPair; mValue.mPair->AddRef(); @@ -264,9 +253,6 @@ bool nsCSSValue::operator==(const nsCSSValue& aOther) const else if (eCSSUnit_URL == mUnit) { return mValue.mURL->Equals(*aOther.mValue.mURL); } - else if (eCSSUnit_Image == mUnit) { - return mValue.mImage->Equals(*aOther.mValue.mImage); - } else if (eCSSUnit_Pair == mUnit) { return *mValue.mPair == *aOther.mValue.mPair; } @@ -340,23 +326,6 @@ nsCSSValue::GetAngleValueInDegrees() const } } -imgRequestProxy* nsCSSValue::GetImageValue(nsIDocument* aDocument) const -{ - MOZ_ASSERT(mUnit == eCSSUnit_Image, "not an Image value"); - return mValue.mImage->mRequests.GetWeak(aDocument); -} - -already_AddRefed -nsCSSValue::GetPossiblyStaticImageValue(nsIDocument* aDocument, - nsPresContext* aPresContext) const -{ - imgRequestProxy* req = GetImageValue(aDocument); - if (aPresContext->IsDynamic()) { - return do_AddRef(req); - } - return nsContentUtils::GetStaticRequest(aDocument, req); -} - nscoord nsCSSValue::GetPixelLength() const { MOZ_ASSERT(IsPixelLengthUnit(), "not a fixed length unit"); @@ -396,8 +365,6 @@ void nsCSSValue::DoReset() DO_RELEASE(mArray); } else if (eCSSUnit_URL == mUnit) { DO_RELEASE(mURL); - } else if (eCSSUnit_Image == mUnit) { - DO_RELEASE(mImage); } else if (eCSSUnit_Pair == mUnit) { DO_RELEASE(mPair); } else if (eCSSUnit_List == mUnit) { @@ -491,14 +458,6 @@ void nsCSSValue::SetURLValue(mozilla::css::URLValue* aValue) mValue.mURL->AddRef(); } -void nsCSSValue::SetImageValue(mozilla::css::ImageValue* aValue) -{ - Reset(); - mUnit = eCSSUnit_Image; - mValue.mImage = aValue; - mValue.mImage->AddRef(); -} - void nsCSSValue::SetGridTemplateAreas(mozilla::css::GridTemplateAreasValue* aValue) { Reset(); @@ -904,11 +863,6 @@ nsCSSValue::SizeOfExcludingThis(mozilla::MallocSizeOf aMallocSizeOf) const n += mValue.mURL->SizeOfIncludingThis(aMallocSizeOf); break; - // Image - case eCSSUnit_Image: - n += mValue.mImage->SizeOfIncludingThis(aMallocSizeOf); - break; - // Pair case eCSSUnit_Pair: n += mValue.mPair->SizeOfIncludingThis(aMallocSizeOf); diff --git a/layout/style/nsCSSValue.h b/layout/style/nsCSSValue.h index 29a801a8b271..96d0535fea66 100644 --- a/layout/style/nsCSSValue.h +++ b/layout/style/nsCSSValue.h @@ -379,7 +379,6 @@ enum nsCSSUnit { eCSSUnit_Calc_Divided = 35, // (nsCSSValue::Array*) / within calc eCSSUnit_URL = 40, // (nsCSSValue::URL*) value - eCSSUnit_Image = 41, // (nsCSSValue::Image*) value eCSSUnit_GridTemplateAreas = 44, // (GridTemplateAreasValue*) // for grid-template-areas @@ -618,10 +617,8 @@ public: nsIURI* GetURLValue() const { - MOZ_ASSERT(mUnit == eCSSUnit_URL || mUnit == eCSSUnit_Image, - "not a URL value"); - return mUnit == eCSSUnit_URL ? - mValue.mURL->GetURI() : mValue.mImage->GetURI(); + MOZ_ASSERT(mUnit == eCSSUnit_URL, "not a URL value"); + return mValue.mURL->GetURI(); } nsCSSValueSharedList* GetSharedListValue() const @@ -675,12 +672,6 @@ public: return mValue.mURL; } - mozilla::css::ImageValue* GetImageStructValue() const - { - MOZ_ASSERT(mUnit == eCSSUnit_Image, "not an Image value"); - return mValue.mImage; - } - mozilla::css::GridTemplateAreasValue* GetGridTemplateAreas() const { MOZ_ASSERT(mUnit == eCSSUnit_GridTemplateAreas, @@ -731,7 +722,6 @@ public: void SetIntegerCoordValue(nscoord aCoord); void SetArrayValue(nsCSSValue::Array* aArray, nsCSSUnit aUnit); void SetURLValue(mozilla::css::URLValue* aURI); - void SetImageValue(mozilla::css::ImageValue* aImage); void SetGridTemplateAreas(mozilla::css::GridTemplateAreasValue* aValue); void SetFontFamilyListValue(already_AddRefed aFontListValue); void SetFontStretch(mozilla::FontStretch aStretch); @@ -804,7 +794,6 @@ protected: nsAtom* MOZ_OWNING_REF mAtom; Array* MOZ_OWNING_REF mArray; mozilla::css::URLValue* MOZ_OWNING_REF mURL; - mozilla::css::ImageValue* MOZ_OWNING_REF mImage; mozilla::css::GridTemplateAreasValue* MOZ_OWNING_REF mGridTemplateAreas; nsCSSValuePair_heap* MOZ_OWNING_REF mPair; nsCSSValueList_heap* MOZ_OWNING_REF mList; diff --git a/layout/style/nsStyleStruct.cpp b/layout/style/nsStyleStruct.cpp index 74bb90a9e294..45812acd4ef8 100644 --- a/layout/style/nsStyleStruct.cpp +++ b/layout/style/nsStyleStruct.cpp @@ -2179,11 +2179,12 @@ nsStyleImageRequest::Resolve( } else { mDocGroup = doc->GetDocGroup(); mImageValue->Initialize(doc); - - nsCSSValue value; - value.SetImageValue(mImageValue); - mRequestProxy = value.GetPossiblyStaticImageValue(aPresContext->Document(), - aPresContext); + imgRequestProxy* request = mImageValue->mRequests.GetWeak(doc); + if (aPresContext->IsDynamic()) { + mRequestProxy = request; + } else if (request) { + request->GetStaticRequest(doc, getter_AddRefs(mRequestProxy)); + } } if (!mRequestProxy) {