From 6f9a2595c139b27e84d02bba052c2e17182354d0 Mon Sep 17 00:00:00 2001 From: Wenchao An Date: Tue, 15 Sep 2026 21:28:24 +0800 Subject: [PATCH] fix(agents): keep settings dialog within the viewport (#5458) * fix(agents): keep settings dialog within the viewport * fix(agents): reveal and describe expanded subagent details --- .../agents/agent-settings-dialog.tsx | 88 +++--- .../tests/e2e/agent-settings-layout.spec.ts | 255 ++++++++++++++++++ 2 files changed, 313 insertions(+), 30 deletions(-) create mode 100644 frontend/tests/e2e/agent-settings-layout.spec.ts diff --git a/frontend/src/components/workspace/agents/agent-settings-dialog.tsx b/frontend/src/components/workspace/agents/agent-settings-dialog.tsx index 0e8154301..ba6bba57f 100644 --- a/frontend/src/components/workspace/agents/agent-settings-dialog.tsx +++ b/frontend/src/components/workspace/agents/agent-settings-dialog.tsx @@ -1,6 +1,7 @@ "use client"; -import { useMemo, useState } from "react"; +import { ChevronRightIcon } from "lucide-react"; +import { useId, useMemo, useState } from "react"; import { toast } from "sonner"; import { Button } from "@/components/ui/button"; @@ -61,6 +62,7 @@ export function AgentSettingsDialog({ const { t } = useI18n(); const { models } = useModels(); const { subagents } = useSubagents(); + const subagentDescriptionId = useId(); const updateAgent = useUpdateAgent(); const [displayName, setDisplayName] = useState(agent.display_name ?? ""); @@ -164,13 +166,13 @@ export function AgentSettingsDialog({ return ( - - + + {t.agents.settingsTitle} {t.agents.settingsDescription} -
+