e49b82743d
Make component message verbiage simpler and more consistent
2026-01-29 14:24:28 +01:00
6dc4c4359a
Refactor FilmGridItem::update to use Connector::forward
2026-01-29 13:50:37 +01:00
b8cb3b1673
Implement download status for films
2026-01-29 13:42:01 +01:00
6ca3ab6a50
Wrap original names, add todo about grid item layout
2026-01-29 13:40:36 +01:00
94c6b96559
Update debug format string for SqliteManager
2026-01-29 10:58:02 +01:00
7339ad511e
Rename watched_status DB table to watched_media
2026-01-29 10:48:00 +01:00
3d57f88232
Implement (original) title searching
2026-01-27 17:58:21 +01:00
bfc7628ce3
Sort (first) release date descendingly by default
2026-01-26 18:34:42 +01:00
a21de4cc5d
Remove unnecessary import in series grid item
2026-01-26 18:26:18 +01:00
18d6eedb15
Give media grids a more consistent layout
...
Centering everything caused the posters to vary in position depending on
the number of title lines and the presence of an original title. Now we
simply fill each item top to bottom and reserve space for the poster
even if there is none - we're aiming to have a poster for every piece of
media anyway.
2026-01-26 18:24:15 +01:00
23e8f1e949
Move watched filtering logic to FilmGrid
2026-01-26 14:22:51 +01:00
311d78bcc8
Implement watched filtering on FilmGridItem level
2026-01-26 13:01:43 +01:00
3554cdb148
Remove unused output type for FilmGridItem
2026-01-26 12:26:48 +01:00
ebf777a73b
Simplify watched status toggling in film details modal
2026-01-26 12:16:54 +01:00
e1fbc92e08
Implement menu side of watched status filtering
2026-01-26 12:05:58 +01:00
629f2ba9d0
Implement watched toggle for films in details modal
...
- Watched status is stored in the local database
- Gave details modals a set size
- Added a for now useless play button to film details modal
2026-01-24 18:25:59 +01:00
406a423478
Use more appropriate icon for series button in header bar
2026-01-22 23:23:18 +01:00
a1835be5fe
Indicate which films have been watched, log unknown database errors
...
Also use "is" instead of "=" in SQL statements where sensible.
2026-01-22 23:22:15 +01:00
4c2ad03a0e
Implement Clippy suggestions
...
They were actually sensible for once???
2026-01-22 15:59:51 +01:00
2c2afb4b33
Add comments about (Typed)GridView to media grids
2026-01-22 15:42:32 +01:00
981d971fa9
Enable libadwaita feature of Relm4, remove unused direct Tokio dep
2026-01-22 15:40:32 +01:00
4446aa22d7
Update Relm4 and indirect dependencies
2026-01-22 14:24:40 +01:00
313a492ee7
Introduce margin between grid item title(s) and details
2026-01-22 14:13:34 +01:00
5a615ad3a3
Centralise error handling in SQLite manager
2026-01-22 14:09:17 +01:00
8a8ea5fb94
Attach shared and local DBs to temporary main DB
...
We now have one connection to the temporary main DB instead of one for
each. The two actual databases are attached to it during initialization.
2026-01-22 12:02:51 +01:00
ec0b5ce757
Simplify CSS resource loading
2026-01-22 11:58:13 +01:00
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