From 883ab4655702d0575d48c71d17cf0b2b88075d6f Mon Sep 17 00:00:00 2001 From: Peng Xiao Date: Wed, 13 Dec 2023 07:14:24 +0000 Subject: [PATCH] fix(core): bg color issues in transparent mode (#5278) fix the following style issue ![CleanShot 2023-12-13 at 00.06.13@2x.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/46f5e766-e6c9-4965-bab7-6fd6dbb2c651.png) --- .../src/components/workspace/index.css.ts | 4 ++++ .../component/src/components/workspace/index.tsx | 4 +++- .../core/src/layouts/workspace-layout.tsx | 15 +++++++++++---- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/packages/frontend/component/src/components/workspace/index.css.ts b/packages/frontend/component/src/components/workspace/index.css.ts index a5a91dee95..027bd41143 100644 --- a/packages/frontend/component/src/components/workspace/index.css.ts +++ b/packages/frontend/component/src/components/workspace/index.css.ts @@ -54,6 +54,7 @@ export const mainContainerStyle = style({ width: 0, flex: 1, maxWidth: '100%', + backgroundColor: 'var(--affine-background-primary-color)', selectors: { '&[data-show-padding="true"]': { margin: '8px', @@ -79,6 +80,9 @@ export const mainContainerStyle = style({ left: 0, WebkitAppRegion: 'drag', }, + '&[data-transparent=true]': { + backgroundColor: 'transparent', + }, }, } as ComplexStyleRule); diff --git a/packages/frontend/component/src/components/workspace/index.tsx b/packages/frontend/component/src/components/workspace/index.tsx index 157df78619..aa3195f0f0 100644 --- a/packages/frontend/component/src/components/workspace/index.tsx +++ b/packages/frontend/component/src/components/workspace/index.tsx @@ -35,13 +35,14 @@ export const AppContainer = ({ export interface MainContainerProps extends HTMLAttributes { className?: string; padding?: boolean; + transparent?: boolean; } export const MainContainer = forwardRef< HTMLDivElement, PropsWithChildren >(function MainContainer( - { className, padding, children, ...props }, + { className, padding, children, transparent, ...props }, ref ): ReactElement { return ( @@ -50,6 +51,7 @@ export const MainContainer = forwardRef< className={clsx(mainContainerStyle, className)} data-is-macos={environment.isDesktop && environment.isMacOs} data-show-padding={!!padding} + data-transparent={transparent} ref={ref} > {children} diff --git a/packages/frontend/core/src/layouts/workspace-layout.tsx b/packages/frontend/core/src/layouts/workspace-layout.tsx index f3d482f720..c578613e34 100644 --- a/packages/frontend/core/src/layouts/workspace-layout.tsx +++ b/packages/frontend/core/src/layouts/workspace-layout.tsx @@ -219,6 +219,10 @@ export const WorkspaceLayoutInner = ({ const { appSettings } = useAppSettingHelper(); const location = useLocation(); + const { pageId } = useParams(); + + // todo: refactor this that the root layout do not need to check route state + const isInPageDetail = !!pageId; return ( <> @@ -247,15 +251,18 @@ export const WorkspaceLayoutInner = ({ paths={pathGenerator} /> - }> - + + {migration ? ( ) : ( children )} - - + +