feat(ui): show the row lifecycle controls as icons - #73
Merged
smileygames merged 1 commit intoAug 24, 2026
Conversation
参加者の行の三つの操作を語から記号へ変え、終了の確認をボタンの armed 状態から webview 内の `<dialog>` へ移した。 - 開始▶️ / 終了 ❌ / 編集 ⚙️。語は `aria-label` と `title` に入れた。記号は 読み上げに耐えないため、アクセシブルな名前は別に要る。 - `#end-dialog` を新設した。`#account-dialog` は編集フォームであり、一枚の `<dialog>` に二役を持たせると開くたびの分岐を抱えるため流用しない。焦点は 「取消」にあり、Escape も取消である。 - `window.confirm` は使わない。ホストが答えなかった場合の失敗の向きがどちらも 誤りであるという #57 の判断は生きている。webview 内の `<dialog>` であれば その失敗の形が起こらない。 - armed の機構を撤去した。`armedEnd` / `armedTimer` / `armedAt` / `END_ARM_MS` / `END_SETTLE_MS` / `armEnd` / `disarmEnd`、`.end.armed`。 `END_SETTLE_MS` は armed でボタンが広がることへの対処であり、記号固定で幅が 動かなくなった以上その前提が無い。 - ライフサイクルと編集の列を固定幅にした。絵文字の送り幅はフォントが決めるため、 字面から幅を取れば同じ画面が機械ごとに違う形になる。実測で 16.5rem の パネルでも本人の行の名前は出る。 「状態はボタン自身が表示する」形は手放した。Master が三択を見た上でダイアログを 選んだ決定であり、決着済みとして扱う。アカウントの削除は二度押しのまま残した (#72)。 #71
smileygames
commented
Aug 24, 2026
smileygames
left a comment
Member
Author
There was a problem hiding this comment.
自己レビュー結果: PASS
#71 の受け入れ基準に対して差分を確認した。
受け入れ基準
- 記号表示 —
▶️/⚙️/❌をtextContentに。語はtitleと新設のaria-labelの両方に入っている(#71 制約「titleを落とさない」を満たす)。 - 確認ダイアログの新設 —
#end-dialogを追加。#account-dialogの流用はしていない。autofocusが取消にあり、closeハンドラでendingAccountを消しているため、Escape・取消・ダイアログ外の経路がすべて同じ答えへ倒れる。 window.confirm不使用 — webview 内の<dialog>。#57 のホスト依存の失敗(理由1)は生きたまま。- armed 機構の撤去 —
armedEnd/armedTimer/armedAt/END_ARM_MS/END_SETTLE_MS/armEnd/disarmEnd、showViewからの呼び出し、.end.armedがすべて消えている。残るarmedの参照は#account-dialogの削除のみで、これは #72 の範囲。 - 記号の列の幅固定 —
grid-template-columnsがminmax(3.2rem, auto) 3remから2rem 2remへ。ボタンはheight: 1.6rem/padding: 0の flex 中央寄せで、字面の送り幅が箱の寸法を決めない形になっている。 - 押した先を変えていない —
endSessionの本体は無改変。confirmEndDialogがviews.get()で id を引き直しており、ダイアログが開いている間に自然終了したセッションに対しては何も起きない。 - docs 同梱 —
window.confirmを断る理由と、確認をどの面に出すかの判断が別段落に分かれた。315 行の armed 幅の記述は幅固定の理由へ差し替え済み。
スコープ
削除 の挙動は無改変。ただし本 PR が偽にした記述三箇所(index.html のコメント、main.ts:1509 のコメント、docs:479)は訂正し、いずれも #72 を指すようにしてある。「終了と同じ形」という記述を残せば docs が嘘になるため、無改変の範囲を超えたのはこの三箇所のみ。逸脱として記録する。
実装者の判断で足されたもの
.start:disabled の opacity: 0.45。カラー絵文字は color で塗られないため、これが無いと無効状態に見た目の signal が残らない。妥当と判断。
実機未確認
三つの記号が Windows の webview のフォントで揃って出るか、幅固定の列で本人の行の名前が出るかは、ビルドでは答えられない。docs の未実装節に記録済み。
次の一手
実行モード auto。人間のレビュー gate は無く、この自己レビュー通過をもって squash merge する。リリース種別は patch 相当(観測可能だが増分の変更であり、大規模な構造変更ではない)。
smileygames
deleted the
71-feat-ui-show-the-row-lifecycle-controls-as-icons
branch
August 24, 2026 00:25
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.
Closes #71
参加者の行の三つの操作を記号表示にし(開始▶️ / 終了 ❌ / 編集 ⚙️)、語は
aria-labelとtitleに移した。終了の確認は、ボタンの armed 状態から webview 内の新設<dialog>(#end-dialog)へ移した。window.confirmは使わないという #57 の判断はそのまま生きている。armed の機構は丸ごと落ちた(
armedEnd/armedTimer/armedAt/END_ARM_MS/END_SETTLE_MS/armEnd/disarmEnd/.end.armed)。END_SETTLE_MSは armed でボタンが広がることへの対処であり、記号固定で幅が動かなくなった時点で前提が無い。同じ理由でライフサイクルと編集の列を固定幅にした。影響範囲 = 参加者パネルの行の操作(表示と終了の確認経路)、および
docs/0-requirements.mdの該当記述。押した先で起きることは変えていない。アカウントの削除は二度押しのまま残した(#72)。