feat(tui): セッション削除モーダルを overlay 表示にする#405
Merged
Merged
Conversation
session remove のチェックリストを全画面モーダルからコマンドパレット /テキストモーダルと同じ中央オーバーレイへ変更し、背後のワークスペース (タイトルバー・モードラダー・サイドバー・両ペイン)が見え続けるようにする。 - chrome: remove_modal_frame(全画面)を remove_modal_body(body のみ)に 変更し、INNER 幅を REMOVE_MODAL_INNER として公開 - ui: render_frame の早期 return を廃し、組み上げた画面の最後に widgets::overlay_modal で合成 - テスト・ドキュメントを overlay の挙動に合わせて更新 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
📊 Test Coverage
🎉✨ パーフェクト!全ファイル Lines カバレッジ 100% を達成しました 🏆🐰 |
Merged
kkyosuke
added a commit
that referenced
this pull request
Jun 27, 2026
## 目的 `usagi` の **v1.4.0** をリリースする。`Cargo.toml` の `version` を `1.3.0` → `1.4.0` に上げ、マージ後に `auto-release.yml` が `v1.4.0` タグと GitHub Release を自動生成する。 ## 変更内容 - `Cargo.toml` / `Cargo.lock` の version を `1.4.0` に更新(version のみ)。 ### v1.3.0 以降の主な変更(マージ済み) TUI / セッション周りの機能追加・改善が中心。 - **TUI 機能追加** - セッション一覧の種別ドットを鮮度(heat)ドットに転用 (#412) - 没入モードのキー方式を設定で切替可能に(Ctrl-O prefix / Alt)(#411) - サイドメニューにメモ・更新時刻・ahead/behind を表示 (#410) - サイドバーのうさぎを操作に反応させる (#408) / 終了時のエンゲージメント段階を復帰 (#368) - issue graph / gantt をフルサイズのモーダルで表示 (#403) / graph に状態グリフ表示 (#404) - セッション削除モーダルを overlay 表示に (#405) - preview のコードブロックを syntect でハイライト (#391) - サイドバーに既定ブランチとの差分バッジ +N -M を表示 (#389) - `?` でキーバインドのチートシートを表示 (#393) / man ヘルプを大きいモーダルで表示 (#374) - 入力待ち(◆)セッションを先頭へ寄せる並び替えトグル(s) (#390) / 切替モードで K/J による並び替え (#372) - **セッション / エージェント** - セッションのブランチを `usagi/<name>` に名前空間化 (#407) - 起動した Agent をセッション worktree に閉じ込める (#392) - **doctor** - `doctor --fix` で Nerd Font をダウンロード導入 (#409) - **バグ修正 / 安全性** - 依存ツリーの非有界再帰でスタックオーバーフローを防ぐ (#400) - JSON-RPC id 欠落・入力契約の不一致を修正 (#399) - ollama 出力の read エラー伝播とデッドロック回避 (#398) - リソースリーク・非有界入力を塞ぐ (#397) / 進捗計算をオーバーフロー安全に (#362) - ログ追記の原子化・config 編集での設定喪失防止 (#396) / 並行更新のロストをストアロックで防止 (#394) - 破壊的な worktree 削除と孤立ブランチを安全化 (#395) - **パフォーマンス / リファクタ** - 端末ペインのメモリと多数セッション時の描画負荷を削減 (#402) ほか perf 改善 (#401, #388, #382) - TUI モジュール構成の整理・カバレッジ対象の整理など複数のリファクタ ## テスト・確認方法 - `cargo fmt` / `cargo clippy --all-targets -- -D warnings` / `cargo test`(pre-push フックで clippy・test がパス済み)。 - マージ後、`auto-release.yml` が version 変更を検知し `release.yml` を起動 → 4 プラットフォームのバイナリビルドと `v1.4.0` Release が自動生成されることを確認する。 Co-authored-by: test <test@example.com>
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.
目的
session remove(名前なし)のセッション削除モーダルを、全画面の暗幕モーダルからコマンドパレット/テキストモーダルと同じ中央オーバーレイへ変更する。背後のワークスペース(タイトルバー・モードラダー・サイドバー・両ペイン)が見え続け、操作対象の文脈を保ったまま削除対象を選べる。変更内容
remove_modal_frame()(全画面フレームを返す)をremove_modal_body()(body 行のみを返す)に変更。widgets::render_modal()(背景クリア)の呼び出しを削除し、インナー幅をREMOVE_MODAL_INNER定数として公開(PALETTE_INNERと同じパターン)。render_frame()の早期 return(全画面置き換え)を廃止。ワークスペース画面を組み上げた最後にwidgets::overlay_modal()で合成(コマンドパレット・テキストモーダルと並ぶ位置)。document/design/05-home.md「セッション削除モーダル」節を、中央オーバーレイとして背後に重ねて合成する旨・overlay_modal利用へ更新。テスト・確認方法
cargo fmt/cargo clippy --all-targets -- -D warnings/cargo testすべて通過。🤖 Generated with Claude Code