PassRefPtr<StyleImage> StyleResourceLoader::loadPendingImage(StylePendingImage* pendingImage, float deviceScaleFactor) { if (pendingImage->cssImageValue()) { CSSImageValue* imageValue = pendingImage->cssImageValue(); return imageValue->cachedImage(m_fetcher); } if (pendingImage->cssImageGeneratorValue()) { CSSImageGeneratorValue* imageGeneratorValue = pendingImage->cssImageGeneratorValue(); imageGeneratorValue->loadSubimages(m_fetcher); return StyleGeneratedImage::create(imageGeneratorValue); } if (pendingImage->cssCursorImageValue()) { CSSCursorImageValue* cursorImageValue = pendingImage->cssCursorImageValue(); return cursorImageValue->cachedImage(m_fetcher, deviceScaleFactor); } if (pendingImage->cssImageSetValue()) { CSSImageSetValue* imageSetValue = pendingImage->cssImageSetValue(); return imageSetValue->cachedImageSet(m_fetcher, deviceScaleFactor); } return 0; }
PassRefPtrWillBeRawPtr<StyleImage> ElementStyleResources::cursorOrPendingFromValue(CSSPropertyID property, const CSSCursorImageValue& value) { if (value.isCachePending(m_deviceScaleFactor)) { m_pendingImageProperties.add(property); return StylePendingImage::create(value); } return value.cachedImage(m_deviceScaleFactor); }