diff --git a/image/Image.cpp b/image/Image.cpp index 6db7822b2b6d..f91778764166 100644 --- a/image/Image.cpp +++ b/image/Image.cpp @@ -169,5 +169,31 @@ ImageResource::SendOnUnlockedDraw(uint32_t aFlags) } } +#ifdef DEBUG +void +ImageResource::NotifyDrawingObservers() +{ + if (!mURI || !NS_IsMainThread()) { + return; + } + + bool match = false; + if ((NS_FAILED(mURI->SchemeIs("resource", &match)) || !match) && + (NS_FAILED(mURI->SchemeIs("chrome", &match)) || !match)) { + return; + } + + // Record the image drawing for startup performance testing. + nsCOMPtr obs = services::GetObserverService(); + NS_WARNING_ASSERTION(obs, "Can't get an observer service handle"); + if (obs) { + nsCOMPtr imageURI = mURI->ToIURI(); + nsAutoCString spec; + imageURI->GetSpec(spec); + obs->NotifyObservers(nullptr, "image-drawing", NS_ConvertUTF8toUTF16(spec).get()); + } +} +#endif + } // namespace image } // namespace mozilla diff --git a/image/Image.h b/image/Image.h index 87d771bd732c..f6a7576bad1e 100644 --- a/image/Image.h +++ b/image/Image.h @@ -318,6 +318,11 @@ protected: void SendOnUnlockedDraw(uint32_t aFlags); +#ifdef DEBUG + // Records the image drawing for startup performance testing. + void NotifyDrawingObservers(); +#endif + // Member data shared by all implementations of this abstract class RefPtr mProgressTracker; RefPtr mURI; diff --git a/image/RasterImage.cpp b/image/RasterImage.cpp index a2efbef9ee07..20f830678030 100644 --- a/image/RasterImage.cpp +++ b/image/RasterImage.cpp @@ -1691,32 +1691,6 @@ RasterImage::GetFramesNotified(uint32_t* aFramesNotified) } #endif -#ifdef DEBUG -void -RasterImage::NotifyDrawingObservers() -{ - if (!mURI || !NS_IsMainThread()) { - return; - } - - bool match = false; - if ((NS_FAILED(mURI->SchemeIs("resource", &match)) || !match) && - (NS_FAILED(mURI->SchemeIs("chrome", &match)) || !match)) { - return; - } - - // Record the image drawing for startup performance testing. - nsCOMPtr obs = services::GetObserverService(); - NS_WARNING_ASSERTION(obs, "Can't get an observer service handle"); - if (obs) { - nsCOMPtr imageURI = mURI->ToIURI(); - nsAutoCString spec; - imageURI->GetSpec(spec); - obs->NotifyObservers(nullptr, "image-drawing", NS_ConvertUTF8toUTF16(spec).get()); - } -} -#endif - void RasterImage::NotifyProgress(Progress aProgress, const IntRect& aInvalidRect /* = IntRect() */, diff --git a/image/RasterImage.h b/image/RasterImage.h index c3e4a80fabf4..8796b031dffd 100644 --- a/image/RasterImage.h +++ b/image/RasterImage.h @@ -317,11 +317,6 @@ private: void UpdateImageContainer(); -#ifdef DEBUG - // Records the image drawing for startup performance testing. - void NotifyDrawingObservers(); -#endif - ////////////////////////////////////////////////////////////////////////////// // Decoding. //////////////////////////////////////////////////////////////////////////////