From b34a76ace395451862f89ba5e7cf9a039a1ef5a1 Mon Sep 17 00:00:00 2001 From: Yousef Khadadeh Date: Mon, 11 Aug 2025 21:34:01 +0300 Subject: [PATCH] Can now display a few more raster image types --- .../com.infinipaint.infinipaint.metainfo.xml | 2 +- linuxinstall/com.infinipaint.infinipaint.yml | 27 ++++++++++++++++++- src/ResourceDisplay/ImageResourceDisplay.cpp | 14 +++++++--- 3 files changed, 37 insertions(+), 6 deletions(-) diff --git a/linuxinstall/com.infinipaint.infinipaint.metainfo.xml b/linuxinstall/com.infinipaint.infinipaint.metainfo.xml index 4212eaa..8cafc17 100644 --- a/linuxinstall/com.infinipaint.infinipaint.metainfo.xml +++ b/linuxinstall/com.infinipaint.infinipaint.metainfo.xml @@ -3,7 +3,7 @@ com.infinipaint.infinipaint Infinipaint - Infinite canvas program + Draw on a big canvas CC0-1.0 MIT diff --git a/linuxinstall/com.infinipaint.infinipaint.yml b/linuxinstall/com.infinipaint.infinipaint.yml index 67fe6a6..c30d725 100644 --- a/linuxinstall/com.infinipaint.infinipaint.yml +++ b/linuxinstall/com.infinipaint.infinipaint.yml @@ -64,9 +64,11 @@ modules: - type: archive url: https://github.com/google/skia/archive/aefbd9403c1b3032ad4cd0281ef312ed262c7125.zip sha256: e10c67a96828b9f36364e2459cdee3e3b381a3875ff78db2b30e7b6fe69509bb - - name: infinipaint + - name: infinipaint-x86_64 buildsystem: cmake-ninja builddir: true + only-arches: + - x86_64 config-opts: - -DLINK_SKIA_MANUALLY=ON - -DSKIA_INCLUDE=/app/Skia @@ -79,6 +81,29 @@ modules: - -DSKIA_PARAGRAPH_LIB=/app/Skia/out/Static/libskparagraph.a - -DCMAKE_BUILD_TYPE=Release - -DTBB_NOT_ONETBB=ON + - -DGRAPHICS_BACKEND=OpenGL3.3 + sources: + - type: dir + # branch: master + path: .. + - name: infinipaint-aarch64 + buildsystem: cmake-ninja + builddir: true + only-arches: + - aarch64 + config-opts: + - -DLINK_SKIA_MANUALLY=ON + - -DSKIA_INCLUDE=/app/Skia + - -DSKIA_LIB=/app/Skia/out/Static/libskia.a + - -DSKIA_SVG_LIB=/app/Skia/out/Static/libsvg.a + - -DSKIA_RESOURCES_LIB=/app/Skia/out/Static/libskresources.a + - -DSKIA_SHAPER_LIB=/app/Skia/out/Static/libskshaper.a + - -DSKIA_UNICODE_ICU_LIB=/app/Skia/out/Static/libskunicode_core.a + - -DSKIA_UNICODE_CORE_LIB=/app/Skia/out/Static/libskunicode_icu.a + - -DSKIA_PARAGRAPH_LIB=/app/Skia/out/Static/libskparagraph.a + - -DCMAKE_BUILD_TYPE=Release + - -DTBB_NOT_ONETBB=ON + - -DGRAPHICS_BACKEND=OpenGL2.1 sources: - type: dir # branch: master diff --git a/src/ResourceDisplay/ImageResourceDisplay.cpp b/src/ResourceDisplay/ImageResourceDisplay.cpp index 1177957..7587b5b 100644 --- a/src/ResourceDisplay/ImageResourceDisplay.cpp +++ b/src/ResourceDisplay/ImageResourceDisplay.cpp @@ -4,15 +4,21 @@ #include #include #include +#include +#include +#include #include "../MainProgram.hpp" #include -std::array decoders = { - SkPngDecoder::Decoder(), - SkJpegDecoder::Decoder(), +std::array decoders = { SkBmpDecoder::Decoder(), + SkGifDecoder::Decoder(), SkIcoDecoder::Decoder(), - SkGifDecoder::Decoder() + SkJpegDecoder::Decoder(), + SkPngDecoder::Decoder(), + SkRawDecoder::Decoder(), + SkWbmpDecoder::Decoder(), + SkWebpDecoder::Decoder() }; bool ImageResourceDisplay::update_draw() const {