Skip to content
  • pkasting@chromium.org's avatar
    2009-06-11 Peter Kasting <pkasting@google.com> · 6b9aef2c
    pkasting@chromium.org authored
            Reviewed by Eric Seidel.
    
            https://bugs.webkit.org/show_bug.cgi?id=25709 part seven
            Update Skia's ImageDecoder.h with a few changes designed to reduce the
            delta between specific implementations of ImageDecoder.h.  Update
            Cairo's ImageDecoder.h to sync up with the API changes in the Skia
            version in the last two chage sets.  Update Cairo's PNG/JPEG/GIF
            decoders to use the APIs as well.  All the Cairo image decoder changes
            are direct copies of the Skia versions except ImageDecoder.h, which is
            modified in the necessary ways for the differences between Cairo and
            Skia.
    
            * platform/graphics/cairo/ImageSourceCairo.cpp:
            (WebCore::ImageSource::createFrameAtIndex): Use new RGBA32Buffer::asNewNativeImage() API.
            * platform/image-decoders/ImageDecoder.h: Sync up with Skia version.
            (WebCore::RGBA32Buffer::):
            (WebCore::RGBA32Buffer::RGBA32Buffer):
            (WebCore::RGBA32Buffer::clear):
            (WebCore::RGBA32Buffer::zeroFill):
            (WebCore::RGBA32Buffer::copyBitmapData):
            (WebCore::RGBA32Buffer::copyRowNTimes):
            (WebCore::RGBA32Buffer::setSize):
            (WebCore::RGBA32Buffer::asNewNativeImage):
            (WebCore::RGBA32Buffer::hasAlpha):
            (WebCore::RGBA32Buffer::disposalMethod):
            (WebCore::RGBA32Buffer::setHasAlpha):
            (WebCore::RGBA32Buffer::setDisposalMethod):
            (WebCore::RGBA32Buffer::setRGBA):
            (WebCore::RGBA32Buffer::operator=):
            (WebCore::RGBA32Buffer::width):
            (WebCore::RGBA32Buffer::height):
            (WebCore::RGBA32Buffer::getAddr):
            * platform/image-decoders/gif/GIFImageDecoder.cpp: Sync up with Skia version.
            (WebCore::GIFImageDecoder::initFrameBuffer):
            (WebCore::GIFImageDecoder::haveDecodedRow):
            * platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Sync up with Skia version.
            (WebCore::JPEGImageDecoder::outputScanlines):
            * platform/image-decoders/png/PNGImageDecoder.cpp: Sync up with Skia version.
            (WebCore::PNGImageDecoder::rowAvailable):
            * platform/image-decoders/skia/ImageDecoder.h: Add various typedefs or helper functions to minimize differences with Cairo version.  Reorder functions slightly to match reordering of Cairo's m_hasAlpha variable, which I moved to increase readability.
            (WebCore::RGBA32Buffer::):
            (WebCore::RGBA32Buffer::copyRowNTimes):
            (WebCore::RGBA32Buffer::setSize):
            (WebCore::RGBA32Buffer::asNewNativeImage):
            (WebCore::RGBA32Buffer::hasAlpha):
            (WebCore::RGBA32Buffer::disposalMethod):
            (WebCore::RGBA32Buffer::setHasAlpha):
            (WebCore::RGBA32Buffer::setStatus):
            (WebCore::RGBA32Buffer::setDisposalMethod):
            (WebCore::RGBA32Buffer::setRGBA):
            (WebCore::RGBA32Buffer::operator=):
            (WebCore::RGBA32Buffer::width):
            (WebCore::RGBA32Buffer::height):
            (WebCore::RGBA32Buffer::getAddr):
            * platform/image-decoders/skia/JPEGImageDecoder.cpp: Add #include needed by JPEG headers on some platforms, plus comment.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@44631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    6b9aef2c