| Index: third_party/WebKit/Source/platform/graphics/UnacceleratedStaticBitmapImage.h | 
| diff --git a/third_party/WebKit/Source/platform/graphics/UnacceleratedStaticBitmapImage.h b/third_party/WebKit/Source/platform/graphics/UnacceleratedStaticBitmapImage.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..9044ce717b12b5e36e0f33ac7ff031cac10e5b6a | 
| --- /dev/null | 
| +++ b/third_party/WebKit/Source/platform/graphics/UnacceleratedStaticBitmapImage.h | 
| @@ -0,0 +1,48 @@ | 
| +// Copyright 2016 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#ifndef UnacceleratedStaticBitmapImage_h | 
| +#define UnacceleratedStaticBitmapImage_h | 
| + | 
| +#include "platform/graphics/StaticBitmapImage.h" | 
| + | 
| +namespace blink { | 
| + | 
| +class PLATFORM_EXPORT UnacceleratedStaticBitmapImage final | 
| +    : public StaticBitmapImage { | 
| + public: | 
| +  ~UnacceleratedStaticBitmapImage() override; | 
| +  static PassRefPtr<UnacceleratedStaticBitmapImage> create(sk_sp<SkImage>); | 
| + | 
| +  bool currentFrameKnownToBeOpaque(MetadataMode = UseCurrentMetadata) override; | 
| +  IntSize size() const override; | 
| +  sk_sp<SkImage> imageForCurrentFrame() override; | 
| +  // In our current design, the SkImage in this class is always *not* | 
| +  // texture-backed. | 
| +  bool isTextureBacked() { return false; } | 
| + | 
| +  void draw(SkCanvas*, | 
| +            const SkPaint&, | 
| +            const FloatRect& dstRect, | 
| +            const FloatRect& srcRect, | 
| +            RespectImageOrientationEnum, | 
| +            ImageClampingMode) override; | 
| + | 
| +  bool originClean() const override { return m_isOriginClean; } | 
| +  void setOriginClean(bool flag) override { m_isOriginClean = flag; } | 
| +  bool isPremultiplied() const override { return m_isPremultiplied; } | 
| +  void setPremultiplied(bool flag) override { m_isPremultiplied = flag; } | 
| + | 
| + private: | 
| +  UnacceleratedStaticBitmapImage(sk_sp<SkImage>); | 
| +  bool m_isOriginClean = true; | 
| +  // The premultiply info is stored here because the SkImage API | 
| +  // doesn't expose this info. | 
| +  bool m_isPremultiplied = true; | 
| +  sk_sp<SkImage> m_image; | 
| +}; | 
| + | 
| +}  // namespace blink | 
| + | 
| +#endif | 
|  |