Skip to content

feat(ui): display mode-specific key bindings in footer for overlay dialogs - #9

Merged
tosaka07 merged 3 commits into
mainfrom
fix/keyconfig-show
Feb 18, 2026
Merged

feat(ui): display mode-specific key bindings in footer for overlay dialogs#9
tosaka07 merged 3 commits into
mainfrom
fix/keyconfig-show

Conversation

@tosaka07

Copy link
Copy Markdown
Owner

Summary

  • Confirm / Help / Deleting モードのオーバーレイ表示時に、フッターのキーバインド表示を各モード固有の内容に上書きするようにした
  • これまではオーバーレイ表示中も Normal モードのキーバインドがフッターに残っていたため、実際に操作可能なキーと一致しなかった

Changes

モード フッター表示
Confirm y/Enter: worktree | Y: worktree & branch | n/Esc: cancel
Help Esc/Enter/q: close help
Deleting Please wait...

追加した関数 (src/ui.rs)

  • render_confirm_footer — Confirm モード用フッター
  • render_help_footer — Help モード用フッター
  • render_deleting_footer — Deleting モード用フッター
  • footer_area — フッター領域の Rect 算出ヘルパー

Test plan

  • cargo build でコンパイル成功を確認
  • cargo clippy -- -D warnings で警告なし
  • cargo test で全テスト通過
  • cargo run で TUI を起動し、各モードでフッターが正しく切り替わることを確認
    • Normal モード: 既存フッター
    • C-o → Create モード: 既存フッター
    • C-d → Confirm モード: Confirm 用フッター
    • D → Prune 確認: Confirm 用フッター
    • ? → Help モード: Help 用フッター

@tosaka07 tosaka07 added the enhancement New feature or request label Feb 18, 2026
@tosaka07
tosaka07 marked this pull request as ready for review February 18, 2026 02:48
Replace footer overwrite approach with title_bottom on each dialog's
Block widget, ensuring key hints are always visible inside the overlay
regardless of content length.
Add expand_area helper that grows a Rect by 1 cell on each side.
Use it to clear a slightly larger area before rendering overlay
dialogs, preventing background text from visually merging with
the dialog border and title_bottom key hints.
@tosaka07
tosaka07 merged commit 9557e44 into main Feb 18, 2026
5 checks passed
@tosaka07
tosaka07 deleted the fix/keyconfig-show branch February 18, 2026 03:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant