diff --git a/frontend-web/src/components/workspace/appearance-controls.tsx b/frontend-web/src/components/workspace/appearance-controls.tsx
index 0f159a88..47d53b75 100644
--- a/frontend-web/src/components/workspace/appearance-controls.tsx
+++ b/frontend-web/src/components/workspace/appearance-controls.tsx
@@ -15,6 +15,7 @@ import {
} from "@/components/ui/dropdown-menu";
import { useTheme, type ThemeType } from "@/contexts/ThemeContext";
import { useAppearanceSettings, useLayoutMode } from "@/core/system-settings/hooks";
+import { isHideChromeActive } from "@/core/embed/embed-session";
import { env } from "@/env";
import { cn } from "@/lib/utils";
import { buildLightAppUrl } from "@/strategy-components/lib/light-app";
@@ -97,7 +98,7 @@ export function ThemeSwitcher({ tone }: { tone: AppearanceControlTone }) {
useEffect(() => () => cancelClose(), []);
- if (env.FORCE_COLLAPSED_SIDEBAR) return null;
+ if (env.FORCE_COLLAPSED_SIDEBAR || isHideChromeActive()) return null;
return (
diff --git a/frontend-web/src/core/embed/embed-session.ts b/frontend-web/src/core/embed/embed-session.ts
index 8e0f8a32..445a348f 100644
--- a/frontend-web/src/core/embed/embed-session.ts
+++ b/frontend-web/src/core/embed/embed-session.ts
@@ -151,6 +151,10 @@ export function isChromeHidden(): boolean {
return s?.embed === true || s?.hideChrome === true;
}
+export function isHideChromeActive(): boolean {
+ return readEmbedSession()?.hideChrome === true;
+}
+
/**
* 本标签页是否处于独立会话态:鉴权身份按标签页隔离(走 sessionStorage)。
* `embed` 已隐含同样的隔离,故 `authStorage()` 取「embed || isolate」之并;这里只判 `isolate`,
diff --git a/frontend-web/src/pages/ChatPage.tsx b/frontend-web/src/pages/ChatPage.tsx
index 8ee81291..5df27895 100644
--- a/frontend-web/src/pages/ChatPage.tsx
+++ b/frontend-web/src/pages/ChatPage.tsx
@@ -37,6 +37,7 @@ import { Welcome } from "@/components/workspace/welcome";
import { CompactWelcome } from "@/components/workspace/compact-welcome";
import { readSidebarEnabled } from "@/core/page-layout/sidebar-enabled";
import { isChatsIframeWorkspacePath } from "@/core/page-layout/chats-iframe-route";
+import { isHideChromeActive } from "@/core/embed/embed-session";
import { useSidebar } from "@/components/ui/sidebar";
import { Button } from "@/components/ui/button";
import { PanelLeftOpen } from "lucide-react";
@@ -459,6 +460,7 @@ export default function ChatPage() {
const compactChrome =
chromeByPreference && !isChatsIframeWorkspacePath(pathname);
const compactLanding = isLandingState && compactChrome;
+ const compactActionsHidden = isHideChromeActive();
return (
@@ -483,7 +485,7 @@ export default function ChatPage() {
{/* 仅在收起态显示「展开历史」钮;展开后由侧栏内(新对话右侧)的收起钮负责收起。 */}
- {compactChrome && !historySidebarOpen && (
+ {compactChrome && !historySidebarOpen && !compactActionsHidden && (