Skip to content

v0.38.1

Choose a tag to compare

@Kewton Kewton released this 17 Sep 00:27
· 24 commits to main since this release
7309ede

[0.38.1] - 2026-09-17

Highlight: v0.38.0 で入れたモード切替ボタン(#2592)のせいで、PC の composer は添付・モード・中断・送信を入力欄と同じ 1 行に並べ、縮む部品が入力欄だけになっていた。1440×900 の画面を 3 分割すると 218px のペインで入力欄が 0px になって文字を打てず、モードボタンは中断ボタンの上に重なって描かれていた。ボタンが重ならないように直し(#2597)、PC の composer をスマホと同じ「上段ツールバー+入力行」の 2 段にして、同じペインの入力欄を 130px まで戻した(#2598)。あわせて PC では入力欄の上辺をドラッグして高さを変えられるようになり、高さは worktree × 分割ごと(Sessions タイルは別枠)に保存される。

Changed

  • feat(ui): PC の composer をスマホと同じ「上段ツールバー+入力行」にし、入力欄の高さをドラッグで変えられるようにした (#2598): #2592 のモード切替ボタンが入った PC の composer は、添付・opencode 操作・モード・中断・送信を textarea と同じ 1 行に並べており、縮めるのが textarea だけだったため、1440×900 の 3 分割で 218px のペインでは入力欄が 0px になり文字を入力できなかった。PC もスマホと同じく入力欄の上にツールバー(左に添付・opencode 操作・モード、右端に中断)を置き、下段を [textarea][送信] にした(218px のペインで textarea 0px → 130px、ペイン本体の減少は 1 分割で 40px・狭いペインで 20px)。狭いペイン(composer 幅 420px 未満)ではメタ行のキー操作ヒントを隠し、ヒントの折り返し(20px → 40px)と、それに押し出されて見えなくなっていた Auto-Yes トグルを直した。PC に限り composer 上辺のつまみで入力欄の高さを変えられる(上に引く / ↑ キーで高く、ダブルクリックで自動伸長に戻る)。高さは worktree × 分割ごと(Sessions タイルは別枠)に localStorage へ保存し、ペイン本体が 160px(Sessions タイルは 15rem)を下回らない範囲に表示だけ丸める(2×2 グリッドやウィンドウ縮小で丸められても、戻せば保存した高さに戻る)。スマホの見た目と挙動は変えていない。

Fixed

  • fix(ui): PC の狭い分割ペインで、モード切替ボタンが中断ボタンに重なって描かれないようにした (#2597): 1440px の画面を 3 分割すると 218px のペインができ、#2592 で入れた「Mode shift+tab」ボタン(104px)が 52px まで縮んだ枠からはみ出して中断ボタンの上に描かれていた。現在モードのチップ(auto → au)と codex の注意書きも、同じように枠の外へ出ていた(均等 3 分割の 315px ペインでも codex の注意書きが中断ボタンに重なっていた)。原因は 2 つある。1 つ目は、枠が min-w-0 の flex 要素で 0 まで縮む一方、中のボタンは縮まないこと。枠から min-w-0 を外すだけでは直らず、チップと注意書きが全幅を取って、送信ボタンが入力ボックスの右端から 236px はみ出した(実測)。そこで枠を grid にし、ボタンの列を max-content、チップと注意書きの列を minmax(0, max-content) とした。枠がボタン幅より狭くなることはなくなり、縮むのはチップと注意書きだけになった。チップと注意書きは overflow-hidden の 1 つの span にまとめ、余白分まで縮めても収まらない部分はその span の端で切る。2 つ目は、shift+tab 表記の表示・非表示が画面幅(sm:)で決まっていたこと。これを入力行(@container)の幅で決めるコンテナクエリ @min-[400px] に変えた(#2131 の OpencodeQuickKeys と同じ方式)。400px のしきい値は実測で決めた。縦持ちで最も幅の広いスマホ(440px)の入力行が 398px、Issue の 455px ペインの入力行が 411px で、400px はその間にある。スマホ縦の操作列は、360 / 390 / 430px で修正前と同じ寸法になることを実測で確かめた。440px でも表記は出ない。e2e では、1440×900 の同じ画面で 218 / 455 / 272px と均等 3 分割のペインを並べ、各ペインで次の 2 点を確かめる。ボタンが枠の内側にあり、ボタン・チップ・注意書き・中断ボタン・送信ボタンが互いに重ならないこと。shift+tab 表記が広いペインにだけ出ること。修正前のコンポーネントでは、この PC 向けの 4 件が失敗する。残る問題として、218px のペインでは入力行(174px)が固定ボタン群の合計(194px)より狭い。そのため入力欄は 0px のままで、送信ボタンは入力行の右端から 19px 出る(ペインの内側に収まっていて、何にも覆われていない)。どちらも #2598(PC composer の 2 段化)で扱う