Commit Graph

35 Commits

Author SHA1 Message Date
c39ac1a9da Enable viewing all X11 cursor sizes 2021-11-27 18:59:05 +01:00
085f2d7eef Use GFile a bit more 2021-11-27 02:34:24 +01:00
174896d3e6 Nullify a concern 2021-11-26 22:28:43 +01:00
6c089eb1d2 Support CMYK JPEGs on big endian 2021-11-26 22:28:42 +01:00
18e96d8c9d Allow frame iteration in both directions 2021-11-26 20:54:41 +01:00
dd8461cebf Parse out Exif orientation 2021-11-26 17:00:36 +01:00
bafad1a67e Add a function to decode TIFF/Exif Orientation 2021-11-26 03:16:41 +01:00
a5f64b1a65 Extract ICC profiles from gdk-pixbuf 2021-11-26 00:46:19 +01:00
f151fcb72b Extract all frames from GIF/APNG animations
So far none of the surface userdata is used.
2021-11-25 16:56:42 +01:00
1d2f6243e0 Extract Exif and ICC profiles from Wuffs 2021-11-25 01:54:40 +01:00
2ea2178724 Read Exif and ICC profile metadata from JPEGs 2021-11-24 20:08:15 +01:00
1c57eef05a Sort files in the browser as well 2021-11-21 21:07:51 +01:00
5fea2245f1 Remove insanity 2021-11-21 20:47:07 +01:00
2b17ed838a Add ability to use different thumbnail sizes 2021-11-21 20:19:25 +01:00
06af1a3cc9 Add a command line option to list supported types
Make it work without a display connection.
2021-11-18 12:46:05 +01:00
e045a35437 Fix loading of opaque GIFs 2021-11-18 10:37:47 +01:00
db7a28b187 Add support for opening Xcursor files
Sadly, they don't have a canonical extension, and they don't show up
in the browser.  We might want to employ some level of sniffing.
The first 16 bytes are enough to identify a lot.
2021-11-17 13:49:15 +01:00
9bebb0a3fe Make this work at all in macOS/Homebrew 2021-11-16 08:51:29 +01:00
11b7969459 Support opaque 16-bit images as RGB30 with Wuffs
Do not check whether the window's visual can make use of them,
since they're arguably rare enough.

With transparent images, we're limited by Cairo's formats.
2021-11-15 14:21:22 +01:00
e835c889a1 Don't use a side buffer to load thumbnails
Undoing part of a recent commit.
2021-11-15 10:30:02 +01:00
6f86911df6 Slightly optimize thumbnail loading
Now it translates to just x86 bswap and ror.
2021-11-15 09:47:00 +01:00
d20c6469c0 Clean up 2021-11-13 09:06:01 +01:00
21b110a7d6 Use spng to load thumbnails
Speed matters here, and this makes us about 20 percent faster
at loading large directories.

Moreover, libpng's PNG_ALPHA_BROKEN is indeed broken.

Thumbnails have a fairly fixed format, so there are very few practical
corner cases that could have been missed.
2021-11-12 11:45:34 +01:00
062b5757da Update comments 2021-11-12 11:45:34 +01:00
192698b7bd Add support for defaulting to gdk-pixbuf 2021-11-10 21:34:15 +01:00
ffda836a15 Also render SVGs with unspecified dimensions 2021-11-10 01:04:00 +01:00
7ef4a06def Improve librsvg integration
Let it load external <image>s and not rescale images.
2021-11-10 00:46:19 +01:00
1c5cc50939 Add very basic SVG support
We need to refactor, so that SVGs are pre-rendered on each change
of scaling by librsvg directly, because some elements may be rasterized.

It would be best to also support building against resvg.
2021-11-10 00:23:19 +01:00
c8df325c70 Split out xdg.{c,h} 2021-11-01 05:17:26 +01:00
6eecee6b91 Incorporate most clang-format changes 2021-11-01 05:17:26 +01:00
ab283d3988 Split out fastiv-io.h, move media types list 2021-11-01 05:17:26 +01:00
de9e91e9a5 Add a prototype of a directory view widget 2021-10-20 18:56:18 +02:00
f24885db54 Add a thumbnail loader
So far not used, we'll need another widget to make use of it.
2021-10-04 23:17:34 +02:00
bbabaabc20 Improve comment wording 2021-10-01 17:04:39 +02:00
e4d1e50c4a Split out image loaders into fastiv-io.c 2021-09-20 00:32:25 +02:00