summaryrefslogtreecommitdiff
path: root/Source/WebCore/css/CSSCrossfadeValue.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2012-08-12 09:27:39 +0200
committerSimon Hausmann <simon.hausmann@nokia.com>2012-08-12 09:27:39 +0200
commit3749d61e1f7a59f5ec5067e560af1eb610c82015 (patch)
tree73dc228333948738bbe02976cacca8cd382bc978 /Source/WebCore/css/CSSCrossfadeValue.cpp
parentb32b4dcd9a51ab8de6afc53d9e17f8707e1f7a5e (diff)
downloadqtwebkit-3749d61e1f7a59f5ec5067e560af1eb610c82015.tar.gz
Imported WebKit commit a77350243e054f3460d1137301d8b3faee3d2052 (http://svn.webkit.org/repository/webkit/trunk@125365)
New snapshot with build fixes for latest API changes in Qt and all WK1 Win MSVC fixes upstream
Diffstat (limited to 'Source/WebCore/css/CSSCrossfadeValue.cpp')
-rw-r--r--Source/WebCore/css/CSSCrossfadeValue.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/Source/WebCore/css/CSSCrossfadeValue.cpp b/Source/WebCore/css/CSSCrossfadeValue.cpp
index 4ff08afca..5ed7da18d 100644
--- a/Source/WebCore/css/CSSCrossfadeValue.cpp
+++ b/Source/WebCore/css/CSSCrossfadeValue.cpp
@@ -31,6 +31,7 @@
#include "CachedResourceLoader.h"
#include "CrossfadeGeneratedImage.h"
#include "ImageBuffer.h"
+#include "MemoryInstrumentation.h"
#include "RenderObject.h"
#include "StyleCachedImage.h"
#include "StyleGeneratedImage.h"
@@ -134,6 +135,19 @@ void CSSCrossfadeValue::loadSubimages(CachedResourceLoader* cachedResourceLoader
m_crossfadeSubimageObserver.setReady(true);
}
+void CSSCrossfadeValue::reportDescendantMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
+{
+ MemoryClassInfo info(memoryObjectInfo, this, MemoryInstrumentation::CSS);
+ CSSImageGeneratorValue::reportBaseClassMemoryUsage(memoryObjectInfo);
+ info.addInstrumentedMember(m_fromValue);
+ info.addInstrumentedMember(m_toValue);
+ info.addInstrumentedMember(m_percentageValue);
+ // FIXME: add instrumentation for
+ // m_cachedFromImage
+ // m_cachedToImage
+ // m_generatedImage
+}
+
PassRefPtr<Image> CSSCrossfadeValue::image(RenderObject* renderer, const IntSize& size)
{
if (size.isEmpty())
@@ -172,4 +186,13 @@ void CSSCrossfadeValue::CrossfadeSubimageObserverProxy::imageChanged(CachedImage
m_ownerValue->crossfadeChanged(*rect);
}
+bool CSSCrossfadeValue::hasFailedOrCanceledSubresources() const
+{
+ if (m_cachedFromImage && m_cachedFromImage->loadFailedOrCanceled())
+ return true;
+ if (m_cachedToImage && m_cachedToImage->loadFailedOrCanceled())
+ return true;
+ return false;
+}
+
} // namespace WebCore