Commit Graph

599 Commits

Author SHA1 Message Date
0f1c61ae33
Extract all raw subimages as pages
And add missing colour management.
2023-05-26 13:30:22 +02:00
0359ddf99f
Add a tool to extract LibRaw file information 2023-05-26 13:30:22 +02:00
a93fc3f88d
Make TIFF and JPEG info extractors co-recursive 2023-05-24 06:18:14 +02:00
d70aedffa8
Slightly expand TIFF tables 2023-05-24 06:07:38 +02:00
dba728e0c4
Improve TIFF handling within tools
Nikon NEFs violate TIFF Tech Note 1, and it is easy to detect.

Also guard against more pointer overflows, and fix a temporary array
being used outside of its scope (found by a compiler).
2023-05-22 20:56:28 +02:00
544722f8e0
Try not to thumbnail FIFOs
Unless there is a writer, this may block forever.

And if there is one, we're somewhat likely to break something.
2023-05-21 23:31:41 +02:00
00110a639a
Avoid use of NULL picture data pointers
The sanitizer would scream, and LibRaw would rather confusingly
return I/O errors.
2023-05-21 23:31:41 +02:00
5af36f4954
Fix raw image thumbnailing speed regression
LibRaw started returning the largest possible thumbnail,
which in the case of NEFs may be a nearly full-scale image.
2023-05-21 23:31:34 +02:00
ac72a72afc
Mildly optimize raw image handling
Don't claim an alpha channel when we don't use it.
2023-05-21 22:56:29 +02:00
a6560509d9
Revise documentation and help output
Split out clearly internal options.
2023-04-17 07:20:07 +02:00
44c28f00d6
Make supported media type listing output unique 2023-04-17 07:19:37 +02:00
cce2b6ba51
Fix history behaviour
When starting in A/B, then manually going up to A,
and back down to A/B, going back in history to A was impossible,
because it would actually end up being a /forward/ entry.
2023-04-16 15:08:36 +02:00
43363ea4bf
Cleanup 2023-04-16 11:50:15 +02:00
00fa76cb69
Avoid needless data duplication
And turn the initial load hack into somewhat clean-looking.
2023-04-15 05:20:35 +02:00
5e10f0ba54
Fix a logic error 2023-04-14 07:53:21 +02:00
eb44b6fb91
Fix a memory leak on image loading 2023-04-14 07:34:26 +02:00
a012011631
Deduplicate file information structures 2023-04-14 07:31:03 +02:00
05ac3a0651
Check filesize when retrieving thumbnails
In particular, this handles screenshots from Rigol oscilloscopes,
which reuse the same name series with the same file modification time.
2023-04-14 05:24:57 +02:00
4317c7e581
Remove a comment
Upon closer thought, I don't know how to implement the idea reasonably.
2023-04-14 05:24:57 +02:00
8da5f807cf
Move and extend the browser toolbar
This makes the user interface more cohesive, and easier to use.

Both toolbars should ideally be made configurable.
2023-04-11 06:33:22 +02:00
1b50a834a5
Add optional browser filename labels 2023-04-11 06:04:27 +02:00
38c19edc8b
Bump Wuffs 2023-04-07 16:23:31 +02:00
c646864805
Add directory tree traversal functionality
Thus far merely bound to the [ and ] keys in the browser.
2023-04-05 00:09:53 +02:00
c2196df141
Bump copyright years 2023-03-30 20:46:08 +02:00
44f2f5d4f5
Make the mirror command intuitive 2023-03-25 11:52:33 +01:00
25c91f5a77
Add a note about default applications 2023-03-15 05:52:32 +01:00
796b05c9a5
Integrate online reverse image search
This makes use of our image processing capabilities in order to
turn arbitrary image files into normalized thumbnails,
upload them to a temporary host, and pass the resulting URI
to a search provider.

In future, fiv should ideally run the upload itself,
so that its status and any errors are obvious to the user,
as well as to get rid of the script's dependency on jq.
2023-03-15 05:52:32 +01:00
9286858573
Bump Wuffs 2023-03-07 20:26:04 +01:00
95bc91e020
Find system libraries using proper names
Fixes Meson warnings.
2023-03-03 12:14:06 +01:00
1754bbcf45
Bump Wuffs to a regular release 2023-01-28 12:43:08 +01:00
62d82f38c8
Fix LibRaw 0.21.0 build 2022-12-23 17:17:33 +01:00
c063d93dc7
Fix LibRaw 0.21.0 build 2022-12-23 17:04:15 +01:00
0317b88c87
Don't require asciidoctor or a2x, import liberty 2022-10-09 01:24:03 +02:00
1431188e27
Update a comment 2022-10-04 00:54:14 +02:00
9cdc641b0a
Center view rotations/flips 2022-10-03 23:00:16 +02:00
7b88e89489
Allow dragging with the middle mouse button 2022-09-03 16:17:21 +02:00
9c2d659d89
Update .gitignore 2022-08-24 05:24:00 +02:00
9fb90607ad
Add a traditional manual page for fiv 2022-08-24 05:23:34 +02:00
dd09af34b7
Make binaries say what git commit they come from
The manual skipping of the initial "v" from tag names is unfortunate,
but still a bit better than further cluttering up the build system.
2022-08-13 12:42:21 +02:00
dcbc8a90b4
meson.build: add a bunch of validating tests 2022-08-12 15:49:57 +02:00
7cbd24dd2f
Bundle a fuller installation of Perl/ExifTool
wperl is necessary to get rid of the console window,
which is merely one of several issues with the PAR Packer-based
ExifTool bundle used in the last commit.

The Perl installation could be heavily trimmed down,
but it seems to require a very manual process.
2022-08-11 16:11:07 +02:00
1a163bdb8b
Resolve a few issues with MSYS2 cross-builds
- Fix launching of subprocesses (missing gspawn helpers).
 - Discard unused GSettings schemas.
 - Make the program find its user guide.
 - Bundle a somewhat suboptimal version of ExifTool.
2022-08-11 16:10:04 +02:00
cf19f82875
Automate Windows builds, add icons to executables
Scripts have been ported from sdtui, and adjusted for Meson.

The port is broken through and through on WINE,
but sort-of works natively.
2022-08-11 00:19:59 +02:00
9c9453172a
fiv-jpegcrop: add middle mouse button dragging
Parasitic gesture code previously discarded from fiv gets to live on.
2022-08-10 12:23:31 +02:00
973c024abe
fiv-jpegcrop: without args, show an Open dialog
But let's keep it hidden from application lists for now.
2022-08-10 11:42:16 +02:00
dba2b9c982
Fix the argument list of a callback 2022-08-10 10:22:44 +02:00
b6e1dc4893
Overload the F9 keyboard shortcut
It doesn't make a lot of sense to be able to toggle invisible widgets,
so just make F9 toggle "the toolbar that can currently be seen".

The more permanent setting can be adjusted in GSettings.
2022-08-09 18:03:55 +02:00
f94550ec61
Improve XDG path handling on Windows 2022-08-09 17:29:42 +02:00
69d45fea44
Use a GQueue for thumbnailing
It's mildly less awkward to use, and fixes one complexity issue.
2022-08-09 16:22:27 +02:00
4697a56760
Use cleaner paths when looking up thumbnails 2022-08-09 13:55:17 +02:00