Dark-Alex-17
c9244b0459
feat(radarr): make the collection movie overview popup scrollable
...
A collection movie's overview renders in a popup that does not scroll,
so a long overview overflows with no way to read the rest. The popup now
scrolls.
The popup owns its own ScrollableText, built from the selected collection
movie's overview when it opens and torn down on Esc so a reopened popup
starts at the top. Scrolling mutates only that owned state. The
background renders the Collection record's overview and the movies
table, neither of which carries a scroll offset, so they cannot scroll
along with the popup. The popup also gains the loading and absent
fallbacks the rest of the tree already has.
Give the collection movie fixture an overview distinct from its
collection's, and a multi-paragraph one, so the snapshots can tell the
two records apart and a scrolled popup is distinguishable from an
unscrolled one.
2026-09-08 22:07:22 -06:00
Dark-Alex-17
b1afdaf541
feat: Added CLI and TUI support for editing Lidarr artists
2026-01-07 12:01:03 -07:00
Dark-Alex-17
3c1634d1e3
testing
2026-01-07 10:45:49 -07:00
Dark-Alex-17
35dce0bf01
refactor: Migrated the handle_table_events macro into a trait for better IDE support, created a TableEventAdapter wrapper for the KeyEventHandlers to make it so that the trait can be used properly and a simple function to replace the previous call to the handle_table_events macro
2025-12-04 16:03:58 -07:00
Dark-Alex-17
ad58912baf
test: Updated Rust edition to 2024 and refactored network module tests to be more idiomatic
2025-12-03 14:49:27 -07:00
Dark-Alex-17
cf00d7992e
fix: Updated the name of the should_ignore_quit_key to ignore_special_keys_for_textbox_input to give a better idea of what the flag is used for; also added alt keybinding for backspace
2025-03-27 15:21:44 -06:00
Dark-Alex-17
0048d71b74
feat: Support alternative keymappings for all keys, featuring hjkl movements
2025-03-17 22:02:15 -06:00
Dark-Alex-17
e8a6f740b9
refactor: Updated the 2018 idiom lint to the 2021_compatibility lint
2025-01-26 14:47:40 -07:00
Dark-Alex-17
fd35106df8
refactor: Renamed KeyEventHandler::with to KeyEventHandler::new to keep with Rust best practices and conventions
2025-01-18 12:43:25 -07:00
Dark-Alex-17
ed2211586e
refactor(handlers): Refactored the handlers to all use the handle_table_events macro when appropriate and created tests for the macro so tests don't have to be duplicated across each handler
2024-12-11 17:03:52 -07:00
Dark-Alex-17
27f12716d9
refactor(downloads_handler): Use the new handle_table_events macro
2024-12-08 14:28:12 -07:00
Dark-Alex-17
048877bbb6
refactor(collection_details_handler): use the new handle_table_events macro
2024-12-08 14:22:59 -07:00
Dark-Alex-17
f7c96d81e9
refactor(BlockSelectionState): Refactored so selection of blocks in 2x2 grids is more intuitive and added left() and right() methods to aid this effort.
2024-11-30 12:22:46 -07:00
Dark-Alex-17
f139db07d9
feat(app): Dispatch support for all relevant Sonarr blocks
2024-11-27 17:06:20 -07:00
Dark-Alex-17
d84e7dfcab
Refactored to require handlers to specify the components they rely on and to specify when they are ready. This fixes a lot of bugs with the UI when users try to press buttons while the application is still loading.
2024-07-17 19:55:10 -06:00
Dark-Alex-17
6ba78cb4ba
Refactored table sorting into the ManagarrTable widget and StatefulTable so any and all tables created can support sorting with minimal UI changes and thus only need to focus on the handlers. I'm going to continue this effort tomorrow and look at what other widgets can be created to simplify things. Most likely, prompt boxes.
2024-02-12 19:15:02 -07:00
Dark-Alex-17
b16a58deae
Updated Ratatui, created custom deserialization logic for i64s to make life easier, and used string interpolation where possible to reduce the lines needed to write log messages or create formatted text
2023-09-07 17:20:38 -06:00
Dark-Alex-17
2d624e2648
Refactored the Edit/Add modals into their own structs so that adding similar modals in the future is more consistent, uses less RAM (since it's wrapped in an Option now), and is easier to implement. This comes with an initial example of the IndexerSettings UI that needs its own modal now. The modal has been created but it is still not used just yet so that's the next step.
2023-08-08 10:50:07 -06:00
Dark-Alex-17
e2e4bf16e4
Added additional fixes
2023-08-08 10:50:07 -06:00
Dark-Alex-17
618ba09b02
Refactored the RadarrData and ActiveRadarrBlock structs into their own file in models/servarr_data to make things neater and cleaner and easier to build on
2023-08-08 10:50:07 -06:00
Dark-Alex-17
cf11527fef
Refactored the UI module and the handlers module to do a more chain-of-responsibility method to manage the UI's and handlers for different key events. Also, initial work for indexer settings as well
2023-08-08 10:50:07 -06:00