From 9f8dbf1a3abf213d73603efda404c3bc6c59f8c9 Mon Sep 17 00:00:00 2001 From: Claude Lin & Lay Date: Mon, 24 Aug 2026 07:09:38 +0900 Subject: [PATCH 1/4] feat(ui): start a session from the participant row, and drop the launcher MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 開始 をランチャ行から参加者の行へ移し、`#launcher` を削除した。 同じライフサイクルの両端が離れていた。終了は #57 で行に乗ったが、開始は 会話面の上のランチャ行に残っており、一つの物事の両端が二つの面にあった。 行は名前の後ろに二つの列を持つ——一列目がライフサイクル(`開始` または `終了`)、二列目が `編集` である。 列は行の状態で動かない。track は中身の有無に依らず幅を持つので、ライフ サイクルを持たない行——起動されない人間、種別 `user`——も列を閉じない。 これが `編集` を他の行より左へずらしていた原因である。`編集` の track は 固定であり、armed の `本当に終了` が伸びるのは名前の側であって `編集` の 位置ではない。ライフサイクルの track を armed の幅に固定する形は採らな かった。パネルは 16.5rem しかなく、実測で「マスター(あなた)」の名前が 出なくなる。四秒の一行のためにリスト全行の幅を払うことになる。 起動中と起動失敗は行が持つ。ランチャのボタンが持っていた `disabled` は 押された行のボタンへ移り、状態の語は名前の隣の note に入る——`未起動` / `終了` / `起動失敗` と同じ場所である。起動に失敗すると端末は破棄される ので、行に残さなければ押したこと自体が消える。理由は `title` に載せ、 status 行はこれまで通り全文を持つ。 `#launcher` に残る仕事は無かった。`accountEl.value` の参照はすべてラン チャ内部で閉じており(`selectedAccount` と `renderAccountOptions` のみ)、 パネル下部の値は選択ではなく画面に出ている端末に従う。どのアカウントを 起動するかは、押された行が答える。 終了の 2 段階 arm は変えていない。開始には付けない——取り消せる操作で あり、間違えて始めたセッションはそれを置き換えるボタンが終わらせる。 Refs #62 --- index.html | 18 +++--- src/main.ts | 164 +++++++++++++++++++++++++++++-------------------- src/styles.css | 113 ++++++++++++++++++++-------------- 3 files changed, 172 insertions(+), 123 deletions(-) diff --git a/index.html b/index.html index 190cd22..4a2e24d 100644 --- a/index.html +++ b/index.html @@ -24,16 +24,6 @@ - -
- - -
-
@@ -92,7 +82,13 @@ Grouped by the kind declared when the account was made. An account that is not running is still someone, so it is listed dimmed rather than left out (#53); it is still not offered as an addressee, - because a name that cannot be reached is not one worth naming. --> + because a name that cannot be reached is not one worth naming. + + The row carries the session's whole lifecycle. 開始 was on a row of + its own above the conversation until #62, which put the two ends of + one thing on two surfaces; 終了 had already moved here (#57). The + row is two fixed columns after the name — the lifecycle, then 編集 — + so neither moves when a session starts or ends. -->