e7e1400c3a
style: avoid toml curly braces
...
else it causes messy diffs and is generally less writable and readable
2026-07-29 16:11:48 -07:00
5a83fe39e9
feat: switch to pure-rust jxl decoder
...
this makes the logic drastically simpler;
as it comes with image crate integration.
however, images can no longer be saved as JXL with this version
(as jxl-oxide is decoder-only)
2026-07-29 16:11:35 -07:00
89b4639a69
chore: add license to Cargo.toml
2026-07-27 23:17:18 -07:00
f789271f9e
build: use avif-native
...
this allows it to open (more?) AVIFs
2026-07-27 22:09:25 -07:00
a91cc6b525
refactor: apply clippy lints
2026-07-27 21:42:52 -07:00
c4738ad2c8
feat: display image dimensions in title
2026-07-27 21:37:00 -07:00
e32c18e304
refactor: improve helper function sanity
...
pure(er) functions are so much easier to work with
(see the bug fix in the pior commit)
there's a bit of duplicate code introduced but it's worth it
2026-07-27 21:23:59 -07:00
60717d639c
fix: hidden error
2026-07-27 21:14:22 -07:00
ab24e5f10d
refactor: use Result with a unit type over Option
...
this helps convey intent, and makes it more consistent
2026-07-09 20:58:44 -07:00
dab5f8e09f
refactor: annotate State::allocate_image with must_use
2026-07-09 20:51:06 -07:00
d577fe2e76
refactor: move image logic to utils
2026-07-09 20:48:34 -07:00
c3a5919e87
feat: drag and drop (outside of wayland)
2026-07-09 20:16:56 -07:00
b11264dc4b
build: zenity consistency
2026-07-09 20:16:33 -07:00
ccc2efc21a
feat: display other image missing errors
2026-07-04 11:17:32 -07:00
32f5503ffc
fix: typos in error message
2026-07-04 11:04:10 -07:00
d91a894b6c
refactor: fix clippy lints
2026-07-03 15:51:55 -07:00
bba0ec5682
refactor: remove unused imports
2026-07-03 15:07:31 -07:00
8627ec026f
feat: set defaults for jxl encoding explicitly
...
at least while there's no way to select options;
this at least works for some usecases
2026-07-03 14:46:28 -07:00
9b9c04c470
feat: opening jxls
2026-07-03 14:28:46 -07:00
30b0662731
feat: saving as jxl
2026-07-03 14:28:28 -07:00
770bdc76d3
feat: start work on jxl support
2026-07-02 15:57:29 -07:00
02e470b317
fix: display any errors that occur on start
2026-07-02 15:15:26 -07:00
831def32a4
fix: use exif oreintation
...
https://alexwlchan.net/2025/create-thumbnail-is-exif-aware/
2026-07-02 15:14:10 -07:00
53f78d9588
refactor: deduplicate into fn load_image
2026-07-02 10:18:12 -07:00
549c478a8c
feat: capture errors into the field
2026-07-01 09:52:20 -07:00
ad0b37d0c3
refactor: add error field and display
2026-07-01 09:37:25 -07:00
c8810f3e86
fix: icon missing from source
...
cranelib minimizes the dependancy-only build itself anyway
2026-07-01 09:15:32 -07:00
ab8dc257e9
feat: usage info on start
2026-07-01 08:56:03 -07:00
f8ab334cd7
fix: executable path to wrap
2026-07-01 07:24:04 -07:00
0523c8e926
feat: add most appropriate MIME types
...
https://www.iana.org/assignments/media-types/media-types.xhtml#image
2026-07-01 07:22:44 -07:00
e703be030e
feat: use widget::image::Viewer to allow zooming and panning
2026-06-30 23:00:08 -07:00
e9fb349352
feat: "o" to open image
2026-06-30 22:53:14 -07:00
a786580da2
fix: add zenity
...
file save dialogs are only provided by zenity on linux it seems
2026-06-30 21:18:09 -07:00
68964f24fd
feat: saving image
...
dialog is missing!!
2026-06-29 08:46:45 -07:00
ef42175744
feat: invert image
2026-06-28 18:14:13 -07:00
f32263df62
feat: linear gradient default image
2026-06-28 18:12:18 -07:00
090076a26f
refactor: deduplicate image allocation
2026-06-28 18:02:09 -07:00
6e45b3afdc
fix: image flickering
2026-06-28 17:58:23 -07:00
9da1395f8e
feat: simple rotation
2026-06-28 17:48:31 -07:00
c362e7c735
feat: scale up the image
2026-06-28 10:45:05 -07:00
a8b73da778
feat: "q" to quit
2026-06-28 10:44:42 -07:00
e3bb0bf327
init basic image viewer
2026-06-28 10:14:56 -07:00