Commit Graph

378 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 9c0e9d8d49
Stretch the toolbar across the window
The division is kind of logical, it might make sense for the view
to create the center widget, then we'd get rid of some recently added
GObject boilerplate.

Only make_separator() is kind of annoying.
2021-12-20 05:33:27 +01:00
Přemysl Eric Janouch ada67f044a
Optimize thumbnail rendering
Massive responsivity gains have been achieved here.

Rescaling performance doesn't seem to be particularly affected.
2021-12-20 04:40:35 +01:00
Přemysl Eric Janouch 63955e881d
Add a convenience dark theme variant toggle 2021-12-20 03:55:53 +01:00
Přemysl Eric Janouch 6130f527d4
Mark a dead end 2021-12-20 03:49:35 +01:00
Přemysl Eric Janouch 3da1d32df7
Make Exif orientation work with SVG
SVG doesn't contain Exif, but this is how we handle rotation/mirroring.
2021-12-19 12:21:14 +01:00
Přemysl Eric Janouch 56d623fe52
Make C-r also reload the current directory 2021-12-19 12:21:14 +01:00
Přemysl Eric Janouch 2c46ca262b
Add directory history
Not fully polished yet (see FIXME), but it's a start.
2021-12-19 10:59:11 +01:00
Přemysl Eric Janouch 39cd52905b
Control TOOLBAR_FILE_{PREVIOUS,NEXT} sensitivity 2021-12-19 10:14:08 +01:00
Přemysl Eric Janouch 9feb53a792
Use the same iteration order in view/browser 2021-12-19 09:12:06 +01:00
Přemysl Eric Janouch 4427da5343
Store the full path of the loaded image
Fixes a minor inconsistency with the window title.
2021-12-19 09:12:06 +01:00
Přemysl Eric Janouch 92c6ca6c35
Give the zoom label a minimum width
This also hides a GTK+ bug.
2021-12-19 07:32:21 +01:00
Přemysl Eric Janouch ae57c45c2a
Insensivitize inappropriate toolbar actions 2021-12-19 07:04:34 +01:00
Přemysl Eric Janouch bac92f2612
Update a comment 2021-12-19 06:14:43 +01:00
Přemysl Eric Janouch 64ba54e8e6
Align tables 2021-12-19 06:08:47 +01:00
Přemysl Eric Janouch 6e903f6f5c
Add a playback toggle button 2021-12-19 05:37:11 +01:00
Přemysl Eric Janouch e23ed245db
Add toolbar toggle buttons for scale-to-fit/filter 2021-12-19 04:43:47 +01:00
Přemysl Eric Janouch b78010ccb1
Adopt shorter identifiers
Also, slightly reformat the source code according to clang-format.
2021-12-18 07:04:01 +01:00
Přemysl Eric Janouch c136c089fa
Add a GObject property for view filtering 2021-12-17 07:39:12 +01:00
Přemysl Eric Janouch 1c2a441cb5
Add a simple toolbar to the view
There is still considerable work to be done.
2021-12-17 07:01:37 +01:00
Přemysl Eric Janouch 0b6b3d8290
Improve light theme compatibility
@content_view_bg has been there since ever.

Many colours remain hardcoded, but it's a major improvement.
2021-12-16 04:39:38 +01:00
Přemysl Eric Janouch c3a098c503
Add very basic XMP support 2021-12-16 00:29:12 +01:00
Přemysl Eric Janouch 577f8c0d92
Fix inconsistent indentation
VIM has a stupid default configuration for this file.
2021-12-15 06:48:17 +01:00
Přemysl Eric Janouch 4d8165d790
Add some WebP notes 2021-12-15 06:15:41 +01:00
Přemysl Eric Janouch c18404efee
Add basic print functionality 2021-12-15 04:44:34 +01:00
Přemysl Eric Janouch bff2b92c9e
Clean up 2021-12-15 03:53:13 +01:00
Přemysl Eric Janouch 7297c40f93
Employ libwebp's alpha premultiplication
It seems to perform roughly equally in optimized builds.
2021-12-15 03:43:57 +01:00
Přemysl Eric Janouch ea2d159773
Clean up dependencies 2021-12-15 03:29:47 +01:00
Přemysl Eric Janouch 4f035bc6b1
Allow saving the current frame/page in WebP
Also support saving just the metadata.
2021-12-15 02:45:20 +01:00
Přemysl Eric Janouch 18f7607e1b
Add a most basic tool to inspect ISO BMFF files
This can be massively extended.
2021-12-14 01:22:51 +01:00
Přemysl Eric Janouch 1478a9f83f
Add a tool to extract information from WebP 2021-12-13 19:05:23 +01:00
Přemysl Eric Janouch 9eb9cc44aa
Clean up 2021-12-13 19:05:23 +01:00
Přemysl Eric Janouch e161f77359
Recognize a few more tactical TIFF tags 2021-12-13 02:12:41 +01:00
Přemysl Eric Janouch 3ed23e423b
Add pedantic WebP dimensions overflow checking 2021-12-12 23:39:36 +01:00
Přemysl Eric Janouch 6c7d431e35
Finish WebP support with animations 2021-12-12 23:35:31 +01:00
Přemysl Eric Janouch 006e547deb
Read out Exif and ICC profiles from WebP 2021-12-12 21:31:30 +01:00
Přemysl Eric Janouch caca14036c
Add preliminary direct support for WebP 2021-12-12 19:15:34 +01:00
Přemysl Eric Janouch b868e76a15
Ignore libjpeg-turbo warnings 2021-12-12 01:27:53 +01:00
Přemysl Eric Janouch 2147dba8c4
Add a comment about TIFF/EP vs libtiff 2021-12-12 00:22:21 +01:00
Přemysl Eric Janouch 121c63e35e
Add a basic tiffinfo utility
Also fix a few TIFF-related issues.
2021-12-12 00:22:20 +01:00
Přemysl Eric Janouch 1bd5cb02e7
Extract HEIF auxiliary subimages 2021-12-11 17:09:39 +01:00
Přemysl Eric Janouch 1cbd0141a1
Clean up 2021-12-11 17:09:39 +01:00
Přemysl Eric Janouch 7e92011ab2
Extract the ICC profile and Exif data from HEIC 2021-12-11 16:11:26 +01:00
Přemysl Eric Janouch ac70c7724b
Add preliminary HEIF/AVIF support
The gdk-pixbuf plugin does not work here, for whatever reason.

Moreover, close integration exposes higher bit depths, metadata,
and auxiliary images.

The library is awful and copylefted, but it's the only reasonable
thing that works.
2021-12-11 16:11:25 +01:00
Přemysl Eric Janouch 5f4090aaee
pnginfo: extract some ImageMagick profiles 2021-12-10 19:08:37 +01:00
Přemysl Eric Janouch fa15707d9b
pnginfo: extract eXIf chunk data 2021-12-10 17:23:26 +01:00
Přemysl Eric Janouch 16c6766e79
jpeginfo: update comment 2021-12-07 10:21:21 +01:00
Přemysl Eric Janouch 3fe2f60a19
jpeginfo: clean up MPF 2021-12-06 20:54:25 +01:00
Přemysl Eric Janouch a519a5dec6
jpeginfo: describe Photoshop records 2021-12-06 19:00:00 +01:00
Přemysl Eric Janouch 4b306b7c93
Don't crash the view when no image is present 2021-12-06 15:29:31 +01:00
Přemysl Eric Janouch 8e2958051d
jpeginfo: mostly finish Exif decoding
Diminishing returns and all.
2021-12-05 16:11:41 +01:00