Commit Graph

579 Commits

Author SHA1 Message Date
Přemysl Eric Janouch d713d5820c
Fix installation within a Nix environment 2023-06-29 20:33:46 +02:00
Přemysl Eric Janouch f05e66bfc1
Fix compatibility with newer resvg versions 2023-06-29 03:36:34 +02:00
Přemysl Eric Janouch 6ee5f69bfe
Fix build within a Nix environment
Add a missing direct link dependency on libjpeg.
2023-06-27 22:48:48 +02:00
Přemysl Eric Janouch 4249898497
Fix build without JPEG Quant Smooth 2023-06-27 22:40:29 +02:00
Přemysl Eric Janouch 117422ade5
Fix build instructions, add .deb generation 2023-06-27 19:04:48 +02:00
Přemysl Eric Janouch 8ff33e6b63
msys2-package.sh: fix iconv transliteration
LC_ALL overrides LC_CTYPE.

Even though C.UTF-8 may produce warnings, at least it works.
2023-06-27 00:36:00 +02:00
Přemysl Eric Janouch ce4a13ed38
msys2-install.sh: don't install the whole MIME DB 2023-06-27 00:36:00 +02:00
Přemysl Eric Janouch 6a1b851130
Add libjxl to Windows packages
The library currently gets loaded through GdkPixbuf.
2023-06-26 21:38:59 +02:00
Přemysl Eric Janouch 68245b55c9
msys2-configure: only extract what we need
In case the packages directory has been preloaded or symlinked.
2023-06-26 21:38:59 +02:00
Přemysl Eric Janouch 2869c656c1
Centralize the project's URL 2023-06-26 15:46:10 +02:00
Přemysl Eric Janouch ec713b633e
Package the MSI from within a custom target 2023-06-26 15:34:10 +02:00
Přemysl Eric Janouch 88234f8283
Clean up the WiX XML a bit 2023-06-26 12:39:12 +02:00
Přemysl Eric Janouch 49ee551b9b
Use LocalAppData for thumbnails on Windows 2023-06-26 02:11:12 +02:00
Přemysl Eric Janouch 089c90004b
Produce a basic Windows installer package
We're very early adopters of msitools' new UI feature,
so this doesn't work on MSYS2 directly yet due to an old version.
2023-06-26 02:10:31 +02:00
Přemysl Eric Janouch 19913a5e48
Only show X11-specific option when it makes sense 2023-06-25 03:39:24 +02:00
Přemysl Eric Janouch 1ef0a84bc7
Fix build with older versions of Cairo 2023-06-25 02:12:50 +02:00
Přemysl Eric Janouch 4b5b8ec9fa
Implement our own Preferences dialog
And fix a resource leak.
2023-06-24 22:13:08 +02:00
Přemysl Eric Janouch 3449ac5a12
Make GSettings find schema XMLs in devenv 2023-06-24 15:26:45 +02:00
Přemysl Eric Janouch bbfa2344d6
Fix colour management in animations
Bug introduced in d6e79cf.
2023-06-24 14:36:25 +02:00
Přemysl Eric Janouch 2ff853b7e0
Improve looped animation behaviour 2023-06-24 14:36:24 +02:00
Přemysl Eric Janouch bb4d3acd12
Premultiply through Little CMS in animations 2023-06-24 14:36:24 +02:00
Přemysl Eric Janouch 074bd4d37f
Stop abusing Cairo user data, part 2
With the shift from cairo_surface_t, we've lost our ability
to directly render vector surfaces, but it doesn't matter.
2023-06-24 14:36:24 +02:00
Přemysl Eric Janouch add96b37a6
Stop abusing Cairo user data, part 1
This commit temporarily breaks multi-page images and animations.
2023-06-24 13:56:36 +02:00
Přemysl Eric Janouch c2e8b65d0f
Don't rebuild fiv-io.c several times 2023-06-23 16:48:32 +02:00
Přemysl Eric Janouch 4f57070e27
Fix 32-bit build warnings 2023-06-23 13:56:32 +02:00
Přemysl Eric Janouch 2dc4e9c13b
Make backspace go back in history
As on Windows.
2023-06-22 18:37:24 +02:00
Přemysl Eric Janouch a1f6ffd226
Make scripts capable of 32-bit Windows builds
Now binaries can be (cross-)built using GCC for 32- and 64-bit Windows.

Additional improvements:
 - Within MSYS2, try to install the required dependencies automatically.
 - Within MSYS2, fix passing libdir paths to pkg-config.
 - Prune documentation from extracted package files,
   addressing the incredible slowness of Windows filesystem operations.
 - Fix the script name in README.adoc instructions.
2023-06-22 18:33:31 +02:00
Přemysl Eric Janouch 1eee1831a5
Windows seems to be mostly working fine 2023-06-22 11:05:04 +02:00
Přemysl Eric Janouch 86622e0c31
Make cross-compilation scripts work from MSYS2
This is weird and runs very slowly.

Meson can also find libraries outside the subroot,
in particular the fast float plugin.
2023-06-22 04:06:38 +02:00
Přemysl Eric Janouch a4772ce319
Improve native MSYS2 build compatibility 2023-06-21 18:38:30 +02:00
Přemysl Eric Janouch 0318424540
Handle LibTIFF errors correctly 2023-06-13 13:49:30 +02:00
Přemysl Eric Janouch 8d5885bfdf
Prevent a possibility of GdkPixbuf crashes 2023-06-13 13:36:24 +02:00
Přemysl Eric Janouch 41b5ddc744
Fix thumbnailing with the GdkPixbuf loader 2023-06-13 13:21:03 +02:00
Přemysl Eric Janouch b308b5da18
Fix thumbnail extraction 2023-06-13 12:44:23 +02:00
Přemysl Eric Janouch 1577961aa2
Improve compatibility with older dependencies 2023-06-10 11:52:49 +02:00
Přemysl Eric Janouch 1fb42e689f
Declare minimum Meson version
Due to our meson.add_install_script() usage, which results in a warning,
followed by an error.
2023-06-10 11:52:49 +02:00
Přemysl Eric Janouch 8953e6beea
Update comments 2023-06-09 13:13:17 +02:00
Přemysl Eric Janouch 2e8bbf0e43
Improve LibRaw thumbnail choice
Make use of LibRaw 0.21.0's extended thumbnail API.
2023-06-09 12:47:41 +02:00
Přemysl Eric Janouch 07d4ea2dde
Optimize thumbnail extraction
Don't go over the same data twice.
2023-06-08 18:59:21 +02:00
Přemysl Eric Janouch a5b5e32c3b
Refactor fiv_thumbnail_extract() 2023-06-08 18:59:20 +02:00
Přemysl Eric Janouch 1e8fe1411b
benchmark-io: ignore GdkPixbuf errors
Measuring up against that library is no longer that interesting.
2023-06-08 18:59:20 +02:00
Přemysl Eric Janouch 274c5f6f66
benchmark-io: fix URI passing
g_filename_to_uri() doesn't support relative paths.
2023-06-08 18:59:20 +02:00
Přemysl Eric Janouch de377d3eae
Move the image load benchmark under tools 2023-06-08 18:59:20 +02:00
Přemysl Eric Janouch 34388b93ea
info: decode JPEGs from all CR2 IFDs 2023-06-08 18:59:19 +02:00
Přemysl Eric Janouch 7dda3bd1ed
Make it possible to switch off our TIFF/EP loader
Slightly repurpose the "enhance" toggle, which doesn't particularly
make sense to run on a thumbnail.
2023-06-08 12:17:43 +02:00
Přemysl Eric Janouch a3a5eb33cf
Unify non/enhanced JPEG loading code
And in so doing, add missing warning redirection to JPEG Quant Smooth,
as well as downscaling.

We still heavily depend on libjpeg-turbo.
2023-06-08 09:47:55 +02:00
Přemysl Eric Janouch ee202ca28b
Fix enhancement of CMYK JPEGs
The conversion to RGB was done twice.
2023-06-07 21:57:51 +02:00
Přemysl Eric Janouch 04db6ed6a1
Slightly clean up colour management
SVGs are now semi-managed.
2023-06-06 18:08:47 +02:00
Přemysl Eric Janouch d6e79cf976
With newer Little CMS, colour manage ARGB surfaces 2023-06-06 13:01:38 +02:00
Přemysl Eric Janouch 6cc4ca1f44
Use Little CMS's alpha premultiplication feature
And do a little cleanup.
2023-06-06 12:20:03 +02:00