Repository navigation
Rebuild the TUI: sidebar, keymap, themes and background loading - #9
Merged
Merged
Conversation
Pages no longer wait on the network in the render loop: loads run in the background with a spinner, changes show at once and report back as toasts, and data that changes on one page refreshes on the others. The frame is a sidebar, a now-playing bar with a clickable progress bar, and key hints for the page you're on. Keys come from a keymap with per-page contexts that keymap.toml can override, and ? lists them. Every list filters as you type and takes the mouse. Colors come from the web app's 25 themes, with roles derived for a terminal and fallbacks where a token doesn't read on its background, mapped to 256 colors where the terminal lacks 24-bit color, plus a Terminal theme. Episodes get a details page with show notes rendered from HTML.
The signal task stopped listening after SIGTERM, so a SIGHUP that followed (a terminal closing while Firewood wound down) went unhandled and crossterm spun on the dead tty, leaving the process running and playing. Keep waiting for SIGHUP after SIGTERM, and save and exit from the signal task if the main loop hasn't finished within a few seconds.
The LICENSE file is GPLv3, but the README and the RPM spec said MIT and Cargo.toml named none.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
First part of Phase 4. The TUI no longer waits on the network, gets a sidebar layout with a now-playing bar, configurable keys, the web app's themes and mouse support, and every existing page is rebuilt on it.