From ac2df9f123fab2d1bd459a9274444dceaf45d689 Mon Sep 17 00:00:00 2001 From: Suzumiya Date: Sun, 4 Oct 2026 00:12:38 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=AE=A1=E6=94=B6=E5=8F=A3=20#600?= =?UTF-8?q?=EF=BC=9A=E5=AE=BD=E5=BA=A6=E4=B8=8A=E9=99=90=E4=B8=8E=E9=97=B4?= =?UTF-8?q?=E8=B7=9D=E5=86=99=E5=9B=9E=E5=90=84=E8=87=AA=E8=A7=84=E5=88=99?= =?UTF-8?q?=EF=BC=8C=E5=8E=BB=E6=8E=89=E9=87=8D=E5=A4=8D=E5=A3=B0=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 模型选择器 160px 上限、触发钮 160px 上限 / 64px 下限写回 `.conversation-model-select` 与 `.conversation-model-trigger` 的原有规则(单点声明,不再依赖文件末尾的源码顺序覆盖) - 队列 chip 的 `margin: 0` 写回 `.project-chat-composer-queue` 原有规则;提示段落 `margin: 0` 与 96px 高度上限并入 `.project-chat-composer-notice` 原有规则(覆盖两个宿主,删掉新造的 72px) - 推理档 `flex: 0 0 auto` 拆成 Direct 侧单条(策划面已有同值声明),末尾区块只留前文没有的新属性 - 更新末尾区块头注释:说明唯一的覆盖靠更长的选择器链而非源码顺序 --- apps/ai-game-creator-shell/src/styles.css | 99 +++++++++-------------- 1 file changed, 38 insertions(+), 61 deletions(-) diff --git a/apps/ai-game-creator-shell/src/styles.css b/apps/ai-game-creator-shell/src/styles.css index 74202d063..3d52b4139 100644 --- a/apps/ai-game-creator-shell/src/styles.css +++ b/apps/ai-game-creator-shell/src/styles.css @@ -11177,7 +11177,9 @@ button.design-workspace-tree__entry:hover, .project-chat-composer .conversation-model-trigger { min-width: 0; - max-width: 180px; + /* 与下面控制排里那条同档(160px):模型名走省略号,宽度不够时由外层换行让位, + 不再把整组控件推出输入盒。 */ + max-width: 160px; height: 30px; } .project-chat-surface.is-direct-codex @@ -11381,7 +11383,9 @@ button.design-workspace-tree__entry:hover, position: relative !important; right: auto !important; bottom: auto !important; - max-width: 180px; + /* 上限与触发钮同档(160px):模型名、错误提示都在这一档里用省略号 / 折行收住, + 「@ + · 推理档 · 模型 · 语音 · 发送」在 400px 以上的面板里保持一行。 */ + max-width: 160px; } .game-workbench-chat @@ -11390,8 +11394,9 @@ button.design-workspace-tree__entry:hover, .project-chat-composer-controls .conversation-model-trigger { flex: 0 1 auto; - min-width: 0; - max-width: 180px; + /* 下限只是「别缩到看不见」的兜底:最窄的 280px 面板下模型钮仍有 ~74px。 */ + min-width: 64px; + max-width: 160px; color: var(--platform-text-base) !important; } @@ -11684,7 +11689,8 @@ button.design-workspace-tree__entry:hover, flex-wrap: wrap; align-items: center; gap: 6px; - margin: 0 0 6px; + /* 与输入盒之间的间距归 composer 的行间距(`gap: 8px`),这里不再自带 6px。 */ + margin: 0; padding: 0; list-style: none; } @@ -11739,7 +11745,13 @@ button.design-workspace-tree__entry:hover, font-variant-numeric: tabular-nums; } -.game-workbench-layout--design .project-chat-composer-notice { +.game-workbench-layout--design .project-chat-composer-notice, +.game-workbench-chat + .project-chat-surface.is-direct-codex + .project-chat-composer.is-direct-codex + .project-chat-composer-notice { + /* 两个宿主的提示区同一档:超过就自己滚,不把输入盒顶高(直接子元素由下面的 + 共享规则清零 margin,间距交给各自 composer 的 gap)。 */ max-height: 96px; overflow: auto; overflow-wrap: anywhere; @@ -11750,7 +11762,7 @@ button.design-workspace-tree__entry:hover, .project-chat-surface.is-direct-codex .project-chat-composer.is-direct-codex .project-chat-composer-notice { - margin: 4px 0 0; + margin: 0; color: var(--platform-text-soft); font-size: 12px; } @@ -13101,19 +13113,20 @@ details.design-agent-reasoning[open] /* ============================================================ 输入区工具栏与状态提示(2026-10 · issue #600) ============================================================ - 三组规则,输入区三层布局的收尾: + 三组规则,输入区三层布局的收尾。这里只补前文没有的属性:模型钮的 160px 上限 / + 64px 下限、提示区 96px 上限、队列 chip 与提示段落的 `margin` 都写回前文各自那条 + 规则(`.conversation-model-select` / `.conversation-model-trigger` / + `.project-chat-composer-notice` / `.project-chat-composer-queue`),不在这里重复声明。 ① 工具栏里的下拉控件(推理档 / 模型)要能收缩、模型名要能省略,宽度不够时靠换行 让位,而不是把整组推到输入盒外面去和左边的 `@` `+` 重叠; ② 模型控件自己的状态提示(`ConversationModelSelect` 的 `[role='alert']` / `[role='status']`)从"浮在输入区上方"改成"控件排内独占一行":它原来的 `bottom: 36px` 正好把错误文案画在输入内容区第 3~4 行文字上(实测 70×36px - 与编辑器相交); - ③ 状态提示区(队列 chip、提示段落)与输入盒、工具栏共用同一档行间距。 + 与编辑器相交)——这条覆盖的是全局规则,靠更长的选择器链(多带 + `.project-chat-composer-controls`)取胜,不依赖源码顺序; + ③ 状态提示区(队列 chip、提示段落)与输入盒、工具栏共用同一档行间距。 */ - 这一组必须放在文件最后:`.conversation-model-select` 的定位与宽度由前面几条同 - 选择器(或更高权重)的规则决定,同特异性下只有靠后写的才能盖回去。 */ - -/* ① 下拉控件:可收缩 + 组内换行;模型名超长走省略号,不再把触发钮撑到 180px。 */ +/* ① 下拉控件:可收缩 + 组内换行;模型名超长走省略号(上限已写回前文那条规则)。 */ .game-workbench-layout--design .project-chat-composer-controls .conversation-model-select, @@ -13148,13 +13161,21 @@ details.design-agent-reasoning[open] .project-chat-composer.is-direct-codex .project-chat-composer-controls .project-chat-reasoning-effort { - /* 档位文案很短(默认 / 高 / 中 / 低),不参与收缩——收缩会把它截成半个字。 - 要让位时由模型钮(名字走省略号)承担。 */ - flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; } +/* 档位文案很短(默认 / 高 / 中 / 低),不参与收缩——收缩会把它截成半个字。 + 要让位时由模型钮(名字走省略号)承担。(策划面已经在 `.game-workbench-layout--design + .project-chat-reasoning-effort` 那条里写了 `flex: 0 0 auto`,这里只补 Direct 侧。) */ +.game-workbench-chat + .project-chat-surface.is-direct-codex + .project-chat-composer.is-direct-codex + .project-chat-composer-controls + .project-chat-reasoning-effort { + flex: 0 0 auto; +} + .game-workbench-layout--design .project-chat-composer-controls .project-chat-reasoning-effort @@ -13204,47 +13225,3 @@ details.design-agent-reasoning[open] text-align: right; overflow-wrap: anywhere; } - -/* 模型控件的宽度上限与触发钮同档(160px):模型名、错误提示都在这一档里用省略号 / - 折行收住,这样「@ + · 推理档 · 模型 · 语音 · 发送」在 400px 以上的面板里始终是一行, - 更窄的面板由外层换行让位(左侧 `@` `+` 与右侧控件组各占一行)。 */ -.game-workbench-layout--design - .project-chat-composer-controls - .conversation-model-select, -.game-workbench-chat - .project-chat-surface.is-direct-codex - .project-chat-composer.is-direct-codex - .project-chat-composer-controls - .conversation-model-select { - max-width: 160px; -} - -.game-workbench-layout--design - .project-chat-composer-controls - .conversation-model-trigger, -.game-workbench-chat - .project-chat-surface.is-direct-codex - .project-chat-composer.is-direct-codex - .project-chat-composer-controls - .conversation-model-trigger { - max-width: 160px; - /* 下限只是「别缩到看不见」的兜底:最窄的 280px 面板下模型钮仍有 ~74px。 */ - min-width: 64px; -} - -/* ③ 状态提示区:队列 chip 与提示段落跟输入盒、工具栏共用同一档行间距。 */ -.game-workbench-chat - .project-chat-surface.is-direct-codex - .project-chat-composer.is-direct-codex - .project-chat-composer-queue { - margin: 0; -} - -.game-workbench-chat - .project-chat-surface.is-direct-codex - .project-chat-composer.is-direct-codex - > .project-chat-composer-notice { - margin: 0; - max-height: 72px; - overflow: auto; -}