mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 21:47:46 +00:00
LibGfx: Remove ImageDecoderPlugin::bitmap() in favor of frame(index)
To encourage proper support for multi-frame images throughout the system, get rid of the single-frame convenience bitmap() API.
This commit is contained in:
parent
750f1d580a
commit
2b866e3c9b
22 changed files with 105 additions and 155 deletions
|
@ -1321,18 +1321,6 @@ IntSize BMPImageDecoderPlugin::size()
|
|||
return { m_context->dib.core.width, abs(m_context->dib.core.height) };
|
||||
}
|
||||
|
||||
RefPtr<Gfx::Bitmap> BMPImageDecoderPlugin::bitmap()
|
||||
{
|
||||
if (m_context->state == BMPLoadingContext::State::Error)
|
||||
return nullptr;
|
||||
|
||||
if (m_context->state < BMPLoadingContext::State::PixelDataDecoded && !decode_bmp_pixel_data(*m_context))
|
||||
return nullptr;
|
||||
|
||||
VERIFY(m_context->bitmap);
|
||||
return m_context->bitmap;
|
||||
}
|
||||
|
||||
void BMPImageDecoderPlugin::set_volatile()
|
||||
{
|
||||
if (m_context->bitmap)
|
||||
|
@ -1370,7 +1358,15 @@ ImageFrameDescriptor BMPImageDecoderPlugin::frame(size_t i)
|
|||
{
|
||||
if (i > 0)
|
||||
return {};
|
||||
return { bitmap(), 0 };
|
||||
|
||||
if (m_context->state == BMPLoadingContext::State::Error)
|
||||
return {};
|
||||
|
||||
if (m_context->state < BMPLoadingContext::State::PixelDataDecoded && !decode_bmp_pixel_data(*m_context))
|
||||
return {};
|
||||
|
||||
VERIFY(m_context->bitmap);
|
||||
return { m_context->bitmap, 0 };
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue