fix(webui): align group rename dialog terminology

This commit is contained in:
Xubin Ren
2026-08-14 19:55:25 +09:00
parent 221e8a4e4a
commit 4d18dd2c30
13 changed files with 58 additions and 41 deletions
+3 -3
View File
@@ -2892,9 +2892,9 @@ function Shell({
<RenameChatDialog <RenameChatDialog
open open
title={pendingTabRename.label} title={pendingTabRename.label}
dialogTitle={t("workbench.renameTabTitle")} dialogTitle={t("workbench.renameGroupTitle")}
description={t("workbench.renameTabDescription")} description={t("workbench.renameGroupDescription")}
placeholder={t("workbench.renameTabPlaceholder")} placeholder={t("workbench.renameGroupPlaceholder")}
onCancel={() => setPendingTabRename(null)} onCancel={() => setPendingTabRename(null)}
onConfirm={onConfirmTabRename} onConfirm={onConfirmTabRename}
/> />
+16 -8
View File
@@ -44,33 +44,41 @@ export function RenameChatDialog({
<Dialog open={open} onOpenChange={(next) => { <Dialog open={open} onOpenChange={(next) => {
if (!next) onCancel(); if (!next) onCancel();
}}> }}>
<DialogContent className="max-w-sm p-5"> <DialogContent className="max-w-sm rounded-[20px] p-5 sm:p-6">
<form <form
className="grid gap-4" className="grid gap-5"
onSubmit={(event) => { onSubmit={(event) => {
event.preventDefault(); event.preventDefault();
if (!trimmed) return; if (!trimmed) return;
onConfirm(trimmed); onConfirm(trimmed);
}} }}
> >
<DialogHeader className="text-left"> <DialogHeader className="space-y-1 text-left">
<DialogTitle>{dialogTitle ?? t("chat.renameTitle")}</DialogTitle> <DialogTitle className="text-xl leading-tight">
<DialogDescription> {dialogTitle ?? t("chat.renameTitle")}
</DialogTitle>
<DialogDescription className="leading-relaxed">
{description ?? t("chat.renameDescription")} {description ?? t("chat.renameDescription")}
</DialogDescription> </DialogDescription>
</DialogHeader> </DialogHeader>
<Input <Input
className="h-11 rounded-xl border-border/80 bg-muted/20 px-3.5 text-[15px]"
value={value} value={value}
onChange={(event) => setValue(event.target.value)} onChange={(event) => setValue(event.target.value)}
placeholder={placeholder ?? t("chat.renamePlaceholder")} placeholder={placeholder ?? t("chat.renamePlaceholder")}
autoFocus autoFocus
maxLength={160} maxLength={160}
/> />
<DialogFooter className="gap-2 sm:space-x-0"> <DialogFooter className="gap-2 pt-1 sm:space-x-0">
<Button type="button" variant="outline" onClick={onCancel}> <Button
className="min-w-20 rounded-xl"
type="button"
variant="outline"
onClick={onCancel}
>
{t("deleteConfirm.cancel")} {t("deleteConfirm.cancel")}
</Button> </Button>
<Button type="submit" disabled={!trimmed}> <Button className="min-w-20 rounded-xl" type="submit" disabled={!trimmed}>
{t("chat.renameSave")} {t("chat.renameSave")}
</Button> </Button>
</DialogFooter> </DialogFooter>
+3 -3
View File
@@ -1458,9 +1458,9 @@
"dropPane": "Move {{pane}} into {{tab}}", "dropPane": "Move {{pane}} into {{tab}}",
"createGroup": "Create group", "createGroup": "Create group",
"moveTo": "Move to", "moveTo": "Move to",
"renameTabTitle": "Rename tab", "renameGroupTitle": "Rename group",
"renameTabDescription": "Give this tab a name for organizing its panes.", "renameGroupDescription": "Give this group a name.",
"renameTabPlaceholder": "Tab name", "renameGroupPlaceholder": "Group name",
"dissolveTab": "Dissolve group", "dissolveTab": "Dissolve group",
"layout": "Pane layout", "layout": "Pane layout",
"addPane": "Add pane", "addPane": "Add pane",
+3 -3
View File
@@ -1445,9 +1445,9 @@
"dropPane": "Mover {{pane}} a {{tab}}", "dropPane": "Mover {{pane}} a {{tab}}",
"createGroup": "Crear grupo", "createGroup": "Crear grupo",
"moveTo": "Mover a", "moveTo": "Mover a",
"renameTabTitle": "Renombrar pestaña", "renameGroupTitle": "Renombrar grupo",
"renameTabDescription": "Ponle un nombre a esta pestaña para organizar sus paneles.", "renameGroupDescription": "Ponle un nombre a este grupo.",
"renameTabPlaceholder": "Nombre de la pestaña", "renameGroupPlaceholder": "Nombre del grupo",
"dissolveTab": "Disolver grupo", "dissolveTab": "Disolver grupo",
"layout": "Diseño de paneles", "layout": "Diseño de paneles",
"addPane": "Añadir panel", "addPane": "Añadir panel",
+3 -3
View File
@@ -1444,9 +1444,9 @@
"dropPane": "Déplacer {{pane}} dans {{tab}}", "dropPane": "Déplacer {{pane}} dans {{tab}}",
"createGroup": "Créer un groupe", "createGroup": "Créer un groupe",
"moveTo": "Déplacer vers", "moveTo": "Déplacer vers",
"renameTabTitle": "Renommer longlet", "renameGroupTitle": "Renommer le groupe",
"renameTabDescription": "Donnez un nom à cet onglet pour organiser ses volets.", "renameGroupDescription": "Donnez un nom à ce groupe.",
"renameTabPlaceholder": "Nom de longlet", "renameGroupPlaceholder": "Nom du groupe",
"dissolveTab": "Dissoudre le groupe", "dissolveTab": "Dissoudre le groupe",
"layout": "Disposition des volets", "layout": "Disposition des volets",
"addPane": "Ajouter un volet", "addPane": "Ajouter un volet",
+3 -3
View File
@@ -1444,9 +1444,9 @@
"dropPane": "Pindahkan {{pane}} ke {{tab}}", "dropPane": "Pindahkan {{pane}} ke {{tab}}",
"createGroup": "Buat grup", "createGroup": "Buat grup",
"moveTo": "Pindahkan ke", "moveTo": "Pindahkan ke",
"renameTabTitle": "Ganti nama tab", "renameGroupTitle": "Ganti nama grup",
"renameTabDescription": "Beri nama tab ini untuk mengatur panelnya.", "renameGroupDescription": "Beri nama untuk grup ini.",
"renameTabPlaceholder": "Nama tab", "renameGroupPlaceholder": "Nama grup",
"dissolveTab": "Bubarkan grup", "dissolveTab": "Bubarkan grup",
"layout": "Tata letak panel", "layout": "Tata letak panel",
"addPane": "Tambah panel", "addPane": "Tambah panel",
+3 -3
View File
@@ -1444,9 +1444,9 @@
"dropPane": "{{pane}} を {{tab}} に移動", "dropPane": "{{pane}} を {{tab}} に移動",
"createGroup": "グループを作成", "createGroup": "グループを作成",
"moveTo": "移動先", "moveTo": "移動先",
"renameTabTitle": "タブ名を変更", "renameGroupTitle": "グループ名を変更",
"renameTabDescription": "ペインを整理するため、このタブに名前を付けます。", "renameGroupDescription": "このグループに名前を付けます。",
"renameTabPlaceholder": "タブ名", "renameGroupPlaceholder": "グループ名",
"dissolveTab": "グループを解除", "dissolveTab": "グループを解除",
"layout": "ペインレイアウト", "layout": "ペインレイアウト",
"addPane": "ペインを追加", "addPane": "ペインを追加",
+3 -3
View File
@@ -1444,9 +1444,9 @@
"dropPane": "{{pane}}을(를) {{tab}}으로 이동", "dropPane": "{{pane}}을(를) {{tab}}으로 이동",
"createGroup": "그룹 만들기", "createGroup": "그룹 만들기",
"moveTo": "이동", "moveTo": "이동",
"renameTabTitle": " 이름 바꾸기", "renameGroupTitle": "그룹 이름 바꾸기",
"renameTabDescription": "창을 정리할 수 있도록 이 탭에 이름을 지정하세요.", "renameGroupDescription": "이 그룹에 이름을 지정하세요.",
"renameTabPlaceholder": " 이름", "renameGroupPlaceholder": "그룹 이름",
"dissolveTab": "그룹 해제", "dissolveTab": "그룹 해제",
"layout": "창 레이아웃", "layout": "창 레이아웃",
"addPane": "창 추가", "addPane": "창 추가",
+3 -3
View File
@@ -1458,9 +1458,9 @@
"dropPane": "Mover {{pane}} para {{tab}}", "dropPane": "Mover {{pane}} para {{tab}}",
"createGroup": "Criar grupo", "createGroup": "Criar grupo",
"moveTo": "Mover para", "moveTo": "Mover para",
"renameTabTitle": "Renomear aba", "renameGroupTitle": "Renomear grupo",
"renameTabDescription": "Dê um nome a esta aba para organizar seus painéis.", "renameGroupDescription": "Dê um nome a este grupo.",
"renameTabPlaceholder": "Nome da aba", "renameGroupPlaceholder": "Nome do grupo",
"dissolveTab": "Desfazer grupo", "dissolveTab": "Desfazer grupo",
"layout": "Layout de painéis", "layout": "Layout de painéis",
"addPane": "Adicionar painel", "addPane": "Adicionar painel",
+3 -3
View File
@@ -1444,9 +1444,9 @@
"dropPane": "Di chuyển {{pane}} vào {{tab}}", "dropPane": "Di chuyển {{pane}} vào {{tab}}",
"createGroup": "Tạo nhóm", "createGroup": "Tạo nhóm",
"moveTo": "Di chuyển đến", "moveTo": "Di chuyển đến",
"renameTabTitle": "Đổi tên thẻ", "renameGroupTitle": "Đổi tên nhóm",
"renameTabDescription": "Đặt tên cho thẻ này để sắp xếp các khung.", "renameGroupDescription": "Đặt tên cho nhóm này.",
"renameTabPlaceholder": "Tên thẻ", "renameGroupPlaceholder": "Tên nhóm",
"dissolveTab": "Giải tán nhóm", "dissolveTab": "Giải tán nhóm",
"layout": "Bố cục khung", "layout": "Bố cục khung",
"addPane": "Thêm khung", "addPane": "Thêm khung",
+3 -3
View File
@@ -1458,9 +1458,9 @@
"dropPane": "将 {{pane}} 移入 {{tab}}", "dropPane": "将 {{pane}} 移入 {{tab}}",
"createGroup": "创建分组", "createGroup": "创建分组",
"moveTo": "移动到", "moveTo": "移动到",
"renameTabTitle": "重命名标签页", "renameGroupTitle": "重命名分组",
"renameTabDescription": "为这个标签页命名,以便组织其中的窗格。", "renameGroupDescription": "为这个分组命名。",
"renameTabPlaceholder": "标签页名称", "renameGroupPlaceholder": "分组名称",
"dissolveTab": "解散分组", "dissolveTab": "解散分组",
"layout": "窗格布局", "layout": "窗格布局",
"addPane": "添加窗格", "addPane": "添加窗格",
+3 -3
View File
@@ -1444,9 +1444,9 @@
"dropPane": "將 {{pane}} 移入 {{tab}}", "dropPane": "將 {{pane}} 移入 {{tab}}",
"createGroup": "建立群組", "createGroup": "建立群組",
"moveTo": "移動到", "moveTo": "移動到",
"renameTabTitle": "重新命名分頁", "renameGroupTitle": "重新命名群組",
"renameTabDescription": "為這個分頁命名,以便整理其中的窗格。", "renameGroupDescription": "為這個群組命名。",
"renameTabPlaceholder": "分頁名稱", "renameGroupPlaceholder": "群組名稱",
"dissolveTab": "解散群組", "dissolveTab": "解散群組",
"layout": "窗格佈局", "layout": "窗格佈局",
"addPane": "新增窗格", "addPane": "新增窗格",
+9
View File
@@ -3246,6 +3246,15 @@ describe("App layout", () => {
}), }),
}), }),
)); ));
fireEvent.pointerDown(within(tabGroup).getByRole("button", {
name: "Topic actions for Solo pane",
}), { button: 0, ctrlKey: false });
fireEvent.click(await screen.findByRole("menuitem", { name: "Rename" }));
const renameDialog = await screen.findByRole("dialog", { name: "Rename group" });
expect(within(renameDialog).getByText("Give this group a name.")).toBeInTheDocument();
expect(within(renameDialog).getByPlaceholderText("Group name")).toHaveValue("Solo pane");
}); });
it("restores a created pane group from gateway state after remount", async () => { it("restores a created pane group from gateway state after remount", async () => {