diff --git a/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.cpp index 062b937d9e..2aed49949a 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.cpp @@ -1548,7 +1548,7 @@ size_t BMPImageDecoderPlugin::first_animated_frame_index() return 0; } -ErrorOr BMPImageDecoderPlugin::frame(size_t index) +ErrorOr BMPImageDecoderPlugin::frame(size_t index, Optional) { if (index > 0) return Error::from_string_literal("BMPImageDecoderPlugin: Invalid frame index"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.h b/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.h index b865f0d18b..22d42f98e5 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/BMPLoader.h @@ -36,7 +36,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.cpp index 67f0b10a99..b31501886e 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.cpp @@ -693,7 +693,7 @@ size_t DDSImageDecoderPlugin::first_animated_frame_index() return 0; } -ErrorOr DDSImageDecoderPlugin::frame(size_t index) +ErrorOr DDSImageDecoderPlugin::frame(size_t index, Optional) { if (index > 0) return Error::from_string_literal("DDSImageDecoderPlugin: Invalid frame index"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.h b/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.h index 0cfd0b4805..d7e3c90956 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/DDSLoader.h @@ -248,7 +248,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.cpp index b77728b95c..e6509f0af8 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.cpp @@ -633,7 +633,7 @@ size_t GIFImageDecoderPlugin::first_animated_frame_index() return 0; } -ErrorOr GIFImageDecoderPlugin::frame(size_t index) +ErrorOr GIFImageDecoderPlugin::frame(size_t index, Optional) { if (m_context->error_state >= GIFLoadingContext::ErrorState::FailedToDecodeAnyFrame) { return Error::from_string_literal("GIFImageDecoderPlugin: Decoding failed"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.h b/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.h index a3c82cd876..f6631a48d7 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/GIFLoader.h @@ -28,7 +28,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.cpp index c0f19edbac..07a67e4b61 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.cpp @@ -255,7 +255,7 @@ size_t ICOImageDecoderPlugin::first_animated_frame_index() return 0; } -ErrorOr ICOImageDecoderPlugin::frame(size_t index) +ErrorOr ICOImageDecoderPlugin::frame(size_t index, Optional) { if (index > 0) return Error::from_string_literal("ICOImageDecoderPlugin: Invalid frame index"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.h b/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.h index 65e78ee79b..e9d57db380 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/ICOLoader.h @@ -27,7 +27,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.h b/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.h index 716e628d2c..ee2c458029 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.h +++ b/Userland/Libraries/LibGfx/ImageFormats/ImageDecoder.h @@ -40,7 +40,7 @@ public: virtual size_t loop_count() = 0; virtual size_t frame_count() = 0; virtual size_t first_animated_frame_index() = 0; - virtual ErrorOr frame(size_t index) = 0; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) = 0; virtual ErrorOr> icc_data() = 0; protected: @@ -61,7 +61,7 @@ public: size_t loop_count() const { return m_plugin->loop_count(); } size_t frame_count() const { return m_plugin->frame_count(); } size_t first_animated_frame_index() const { return m_plugin->first_animated_frame_index(); } - ErrorOr frame(size_t index) const { return m_plugin->frame(index); } + ErrorOr frame(size_t index, Optional ideal_size = {}) const { return m_plugin->frame(index, ideal_size); } ErrorOr> icc_data() const { return m_plugin->icc_data(); } private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.cpp index edcbd73448..f9ce0a33df 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.cpp @@ -1978,7 +1978,7 @@ size_t JPEGImageDecoderPlugin::first_animated_frame_index() return 0; } -ErrorOr JPEGImageDecoderPlugin::frame(size_t index) +ErrorOr JPEGImageDecoderPlugin::frame(size_t index, Optional) { if (index > 0) return Error::from_string_literal("JPEGImageDecoderPlugin: Invalid frame index"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.h b/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.h index a29ecd8adc..b10aca628e 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/JPEGLoader.h @@ -30,7 +30,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp index 1998c34f02..607b580b81 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.cpp @@ -1409,7 +1409,7 @@ static ErrorOr> render_animation_frame(AnimationFrame const& prev return rendered_bitmap; } -ErrorOr PNGImageDecoderPlugin::frame(size_t index) +ErrorOr PNGImageDecoderPlugin::frame(size_t index, Optional) { if (m_context->state == PNGLoadingContext::State::Error) return Error::from_string_literal("PNGImageDecoderPlugin: Decoding failed"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.h b/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.h index 3435f77b54..053dd6b72e 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/PNGLoader.h @@ -27,7 +27,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/PortableImageMapLoader.h b/Userland/Libraries/LibGfx/ImageFormats/PortableImageMapLoader.h index a87d7d4f50..6a5d631209 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/PortableImageMapLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/PortableImageMapLoader.h @@ -72,7 +72,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: @@ -168,7 +168,7 @@ size_t PortableImageDecoderPlugin::first_animated_frame_index() } template -ErrorOr PortableImageDecoderPlugin::frame(size_t index) +ErrorOr PortableImageDecoderPlugin::frame(size_t index, Optional) { if (index > 0) return Error::from_string_literal("PortableImageDecoderPlugin: Invalid frame index"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/QOILoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/QOILoader.cpp index 8dee9bc211..8af83d37e6 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/QOILoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/QOILoader.cpp @@ -212,7 +212,7 @@ ErrorOr> QOIImageDecoderPlugin::create(Readonl return adopt_nonnull_own_or_enomem(new (nothrow) QOIImageDecoderPlugin(move(stream))); } -ErrorOr QOIImageDecoderPlugin::frame(size_t index) +ErrorOr QOIImageDecoderPlugin::frame(size_t index, Optional) { if (index > 0) return Error::from_string_literal("Invalid frame index"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/QOILoader.h b/Userland/Libraries/LibGfx/ImageFormats/QOILoader.h index 348451e57b..8ebb4e9aef 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/QOILoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/QOILoader.h @@ -51,7 +51,7 @@ public: virtual size_t loop_count() override { return 0; } virtual size_t frame_count() override { return 1; } virtual size_t first_animated_frame_index() override { return 0; } - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/TGALoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/TGALoader.cpp index de58a3b783..6c1184bf45 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/TGALoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/TGALoader.cpp @@ -264,7 +264,7 @@ size_t TGAImageDecoderPlugin::first_animated_frame_index() return 0; } -ErrorOr TGAImageDecoderPlugin::frame(size_t index) +ErrorOr TGAImageDecoderPlugin::frame(size_t index, Optional) { auto bits_per_pixel = m_context->header.bits_per_pixel; auto color_map = m_context->header.color_map_type; diff --git a/Userland/Libraries/LibGfx/ImageFormats/TGALoader.h b/Userland/Libraries/LibGfx/ImageFormats/TGALoader.h index 10fd68d1be..2ff3b7ff5a 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/TGALoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/TGALoader.h @@ -28,7 +28,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: diff --git a/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.cpp b/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.cpp index 1f9e4a9819..0e65e87c83 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.cpp +++ b/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.cpp @@ -801,7 +801,7 @@ size_t WebPImageDecoderPlugin::first_animated_frame_index() return 0; } -ErrorOr WebPImageDecoderPlugin::frame(size_t index) +ErrorOr WebPImageDecoderPlugin::frame(size_t index, Optional) { if (index >= frame_count()) return Error::from_string_literal("WebPImageDecoderPlugin: Invalid frame index"); diff --git a/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.h b/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.h index e5122fec00..c0396f3007 100644 --- a/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.h +++ b/Userland/Libraries/LibGfx/ImageFormats/WebPLoader.h @@ -27,7 +27,7 @@ public: virtual size_t loop_count() override; virtual size_t frame_count() override; virtual size_t first_animated_frame_index() override; - virtual ErrorOr frame(size_t index) override; + virtual ErrorOr frame(size_t index, Optional ideal_size = {}) override; virtual ErrorOr> icc_data() override; private: