Commit graph

98 commits

Author SHA1 Message Date
5eb18e231f
Replace unwrap with expect in setting RELM_THREADS 2026-01-21 17:28:30 +01:00
2014c83224
Use multiple threads for Relm async tasks depending on system 2026-01-21 17:24:36 +01:00
5e5df5c401
Include CSS as GResource
Also use explicit namespace for bare functions and constants used in
main.rs.
2026-01-21 16:56:05 +01:00
fc5bfd5876
Expand comment about Tokio in Cargo.toml 2026-01-21 13:41:35 +01:00
641cd93413
Update indirect dependencies 2026-01-21 13:40:41 +01:00
f181d8368b
Set package name back to "zoodex" 2026-01-21 13:35:28 +01:00
ce19ba9226
Replace unwrap with expect in getting display for CSS loading 2026-01-21 13:31:42 +01:00
4d4b7eb1c7
Rewrite using Relm4
Yes, this is a monster commit but at this stage I'm the only one working
on this project anyway. Further commits will follow Best Practises™
again.
2026-01-21 13:25:57 +01:00
d25fdd0a32
Fix formatting in concat_os_str 2026-01-21 13:11:20 +01:00
56376569ae
Actually open local database in its client instead of shared one 2026-01-21 13:11:02 +01:00
df3c9cba8a
Further code style conformity 2026-01-08 23:08:52 +01:00
2982a13bc2
Use cargo fmt and conform to Style Guide (mostly) 2026-01-08 14:07:40 +01:00
1f1eac6369
Remove todo about async multithreading
Turns out there is no async code that would benefit from being executed
on e.g. a multithreaded Tokio executor. Image loading is already being
run on GIO's threadpool, and async-sqlite already has its own thread on
which the connection lives. We also cannot easily bypass the latter and
do Rusqlite connection IO on a Tokio threadpool because Rusqlite
connections are not Send. Overall the current implementation is already
pretty optimal given that we're not exactly dealing with thousands of
operations per second in this little app.
2026-01-02 21:48:51 +01:00
1101e96765
Use regular view macro where more appropriate 2026-01-02 13:59:28 +01:00
0a61e55c3e
Add editorconfig file 2026-01-02 13:41:46 +01:00
6446d43d76
Replace custom widget macros with Relm4 view macro based ones
Also move margin styling to the CSS file.
2026-01-02 13:41:27 +01:00
6df7530b33
Use px size instead of w+h reqs for poster images
The old method worked only by accident on older GTK4 versions.
2026-01-01 14:37:29 +01:00
96ea810ace
Add todo about async multithreading 2026-01-01 14:34:13 +01:00
380d66c489
Update dependencies 2026-01-01 12:22:55 +01:00
75201c083f
Re-add screenshot after docs directory renaming 2025-09-01 20:22:08 +02:00
b957a54647
Rename documentation directory 2025-08-22 12:36:07 +02:00
f1a84cc26a
Update dependencies & required Rust version 2025-08-22 12:27:12 +02:00
7f0c363bbf
Update libadwaita dependency, link against GTK 4.18 2025-03-30 12:14:51 +02:00
0d841f95c4
Load posters by UUID from XDG data directory 2025-03-21 13:18:24 +01:00
ab2e4ab0ad
Update indirect dependencies 2025-03-17 13:18:00 +01:00
08ede4ed82
Use XDG directory structure, introduce split DB format 2025-03-17 13:16:03 +01:00
70e7729443
Add border and alt-text to screenshot in readme 2025-02-25 20:12:13 +01:00
7ef71ba713
Add screenshot to readme 2025-02-25 20:04:15 +01:00
94c43e776b
Add readme 2025-02-25 17:09:53 +01:00
d468f8aebf
Update indirect dependencies 2025-02-25 11:24:53 +01:00
4699e0de38
Use AsyncFn now that we're on Rust 2024 2025-02-21 16:28:52 +01:00
a758dd113c
Pass media tracks and subs file to Celluloid, improve modal spacing 2025-02-21 16:07:35 +01:00
92ab9bb9d8
Update to Rust 2024, update dependencies 2025-02-21 11:05:58 +01:00
a3040e6735
Introduce pinned_async macro 2025-02-18 18:31:05 +01:00
90594514bd
Encapsulate window and its operations in struct 2025-02-18 18:09:09 +01:00
8bea2088a0
DataManager :: get_film_details now handles optional source properly 2025-02-18 17:50:32 +01:00
20326fde8f
Film modal now obtains data from DataManager 2025-02-18 17:40:37 +01:00
8639e08ac5
Add leak_mut convenience function 2025-02-18 17:40:32 +01:00
6021fb5901
Implement getting film details from DataManager 2025-02-18 15:09:05 +01:00
462a644952
Show basic film properties in media modal 2025-02-18 13:42:53 +01:00
2c40217497
Include static lifetime in MediaAdapter trait, formatting 2025-02-12 14:32:16 +01:00
be92920cc5
Implement structure to open modal when clicking on media item 2025-02-12 14:11:53 +01:00
2ec2fda116
Improve error handling 2025-02-12 11:34:38 +01:00
795e4b20f2
Update dependencies 2025-02-12 10:29:07 +01:00
e633000de5
Use futures crate to await collection rendering concurrently 2025-02-12 10:27:29 +01:00
85b0fc2f21
Switch to using ToolbarView 2025-02-11 15:01:25 +01:00
7127dd57c6
Derive defaults for sorting enums, remove ordering from films SQL query 2025-02-11 00:20:29 +01:00
d6bac9ebea
Update indirect dependencies 2025-02-10 23:57:33 +01:00
c3e2bd0f69
Fully deduplicate shared logic between films and series 2025-02-10 23:56:48 +01:00
c3dfa5b459
Collection items are now clickable 2025-02-07 16:22:34 +01:00