Commit Graph

608 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 604594a8f1
Prepare for parallelized colour management
This rewrite is more or less necessary for:
 - colour-managed browser thumbnails,
 - asynchronous image loading,
 - turning fiv-io into a reusable library.

Little CMS has a fairly terrible API in this regard.
2024-01-28 01:48:28 +01:00
Přemysl Eric Janouch 9acab00bcc
Improve browser view styling 2024-01-26 21:00:30 +01:00
Přemysl Eric Janouch ae8dc3070a
Partially circumvent a Little CMS bug 2024-01-26 19:55:31 +01:00
Přemysl Eric Janouch 3c8a280546
Move colour management to its own compilation unit
Also make it apparent that CMM profiles are pointer types.

This isn't all that pretty, but it's a necessary first step.
2024-01-26 19:17:54 +01:00
Přemysl Eric Janouch 96189b70b8
Mark places where lcms2 should use contexts 2024-01-26 17:25:04 +01:00
Přemysl Eric Janouch 67433f3776
Add a --collection toggle
One possible use of it is to avoid thumbnailing the parent directory.
2024-01-26 16:57:36 +01:00
Přemysl Eric Janouch c1418c7462
Decrease sidebar padding
Nothing fits in there normally, it's about time to acknowledge that.
2024-01-26 16:38:22 +01:00
Přemysl Eric Janouch 935506b120
Make the Delete key move files to trash in browser 2024-01-26 16:37:29 +01:00
Přemysl Eric Janouch 84269b2ba2
Load AdobeRGB Nikon JPEGs correctly 2024-01-23 22:18:17 +01:00
Přemysl Eric Janouch 51ca3f8e2e
info: optionally recurse into certain MakerNotes 2024-01-23 19:12:11 +01:00
Přemysl Eric Janouch f196b03e97
Resolve warnings resulting from GLib #2907 2024-01-22 12:45:26 +01:00
Přemysl Eric Janouch ee08565389
Resolve spurious overshoot indicators
_gtk_scrolled_window_get_overshoot() decrements the page size
from the upper value before using it for comparisons.
2023-12-28 11:22:17 +01:00
Přemysl Eric Janouch c04c4063e4
Fix a class of animated transparent WebPs 2023-12-28 07:48:11 +01:00
Přemysl Eric Janouch aed6ae6b83
Add a comment regarding high-precision JPEGs 2023-12-05 04:57:01 +01:00
Přemysl Eric Janouch bae640a116
Circumvent JPEG QS & libjpeg-turbo incompatibility
UV upsampling visibly requires JPEG QS to update its code
to follow recent changes within libjpeg-turbo.
2023-12-05 03:35:33 +01:00
Přemysl Eric Janouch 52c17c8a16
Bump JPEG Quant Smooth 2023-12-05 00:28:28 +01:00
Přemysl Eric Janouch b07fba0c9c
Make multi-monitor CM work better with xiccd
Let's assume the profile it picks is appropriate for all monitors.
2023-10-17 15:34:44 +02:00
Přemysl Eric Janouch 72bf913f3d
Add a tool to find hot pixels
It works well for my Nikon.

Note that hot pixels can be eliminated in the camera itself,
when you run sensor cleaning immediately after a very long exposure
of darkness.
2023-10-17 15:31:55 +02:00
Přemysl Eric Janouch e79574fd56
meson.build: update comments 2023-09-07 05:35:50 +02:00
Přemysl Eric Janouch 93ad75eb35
Switch to a GAction-based menu
The new menu has a few more entries, and shows accelerators.

Most shortcuts have now moved from on_key_press() to actions,
and Alt-Shift-D has started working on macOS.

This also adds support for the global menu in macOS,
and moves some accelerators/key equivalents to the Command key.
There is no other easy way of accessing that global menu in GTK+.
2023-08-07 08:55:41 +02:00
Přemysl Eric Janouch 2d10aa8b61
Prevent a class of crashes in monitoring 2023-08-03 04:42:50 +02:00
Přemysl Eric Janouch 1ec41f7749
Remove inappropriate ellipses
The Information dialog doesn't need any user input.
2023-07-27 04:31:42 +02:00
Přemysl Eric Janouch d4b91d6260
Fix double colour management in the librsvg loader 2023-07-13 08:04:41 +02:00
Přemysl Eric Janouch 5ec5f5bdbd
Slightly optimize SVG loading 2023-07-09 10:40:32 +02:00
Přemysl Eric Janouch 840e7f172c
Colour-manage SVGs 2023-07-09 10:40:32 +02:00
Přemysl Eric Janouch 9b99de99bb
Fix crash in the librsvg loader 2023-07-09 04:39:35 +02:00
Přemysl Eric Janouch ab75d2b61d
Fix build under Cygwin 2023-07-07 12:01:12 +02:00
Přemysl Eric Janouch 92deba3890
Silence a compiler warning 2023-07-03 20:03:07 +02:00
Přemysl Eric Janouch 668c5eb78a
README.adoc: update package information 2023-07-01 21:30:20 +02:00
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