Skip to content

Pane for hinting - #22

Merged
ynqa merged 5 commits into
v0.3.0/devfrom
hint
Feb 28, 2026
Merged

Pane for hinting#22
ynqa merged 5 commits into
v0.3.0/devfrom
hint

Conversation

@ynqa

@ynqa ynqa commented Feb 28, 2026

Copy link
Copy Markdown
Owner

No description provided.

Copilot AI review requested due to automatic review settings February 28, 2026 15:59

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a second “hint” pane to the streaming UI and introduces a pause/resume control for stream ingestion, requiring the terminal layout to support multiple stacked panes.

Changes:

  • Update Terminal to accept/render multiple panes and compute pane height from their combined visible rows.
  • Add Ctrl+S pause/resume handling and a persistent hint line describing keybindings.
  • Adjust stream rendering for very small terminals (1-line stream area).

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
src/terminal.rs Generalizes pane rendering from a single pane to a slice of panes; adds special-case rendering for 1-line stream areas.
src/sig.rs Adds pause/resume via watch, introduces hint pane creation, and updates input handling to return actions instead of signals.
README.md Documents the new Ctrl+S pause/resume keybinding.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/sig.rs
let shared_text_editor = Arc::new(RwLock::new(text_editor));
let readonly_term = Arc::clone(&shared_term);
let readonly_text_editor = Arc::clone(&shared_text_editor);
let (pause_tx, mut pause_rx) = watch::channel(false);

Copilot AI Feb 28, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The pause watch channel introduces a potential shutdown hang: if the keeping task is in its paused branch waiting on pause_rx.changed(), and the main loop exits (Ctrl+F/Ctrl+R/EOF), keeping may never observe rx closing and can block indefinitely. Ensure shutdown closes/unblocks the pause watcher (e.g., explicitly drop pause_tx before awaiting keeping, or add a shutdown signal / select on rx.recv() even while paused).

Copilot uses AI. Check for mistakes.
@ynqa
ynqa merged commit 86187ba into v0.3.0/dev Feb 28, 2026
7 checks passed
@ynqa
ynqa deleted the hint branch February 28, 2026 16:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants