fix(core): bg color issues in transparent mode (#5278)
fix the following style issue 
This commit is contained in:
@@ -54,6 +54,7 @@ export const mainContainerStyle = style({
|
|||||||
width: 0,
|
width: 0,
|
||||||
flex: 1,
|
flex: 1,
|
||||||
maxWidth: '100%',
|
maxWidth: '100%',
|
||||||
|
backgroundColor: 'var(--affine-background-primary-color)',
|
||||||
selectors: {
|
selectors: {
|
||||||
'&[data-show-padding="true"]': {
|
'&[data-show-padding="true"]': {
|
||||||
margin: '8px',
|
margin: '8px',
|
||||||
@@ -79,6 +80,9 @@ export const mainContainerStyle = style({
|
|||||||
left: 0,
|
left: 0,
|
||||||
WebkitAppRegion: 'drag',
|
WebkitAppRegion: 'drag',
|
||||||
},
|
},
|
||||||
|
'&[data-transparent=true]': {
|
||||||
|
backgroundColor: 'transparent',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
} as ComplexStyleRule);
|
} as ComplexStyleRule);
|
||||||
|
|
||||||
|
|||||||
@@ -35,13 +35,14 @@ export const AppContainer = ({
|
|||||||
export interface MainContainerProps extends HTMLAttributes<HTMLDivElement> {
|
export interface MainContainerProps extends HTMLAttributes<HTMLDivElement> {
|
||||||
className?: string;
|
className?: string;
|
||||||
padding?: boolean;
|
padding?: boolean;
|
||||||
|
transparent?: boolean;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const MainContainer = forwardRef<
|
export const MainContainer = forwardRef<
|
||||||
HTMLDivElement,
|
HTMLDivElement,
|
||||||
PropsWithChildren<MainContainerProps>
|
PropsWithChildren<MainContainerProps>
|
||||||
>(function MainContainer(
|
>(function MainContainer(
|
||||||
{ className, padding, children, ...props },
|
{ className, padding, children, transparent, ...props },
|
||||||
ref
|
ref
|
||||||
): ReactElement {
|
): ReactElement {
|
||||||
return (
|
return (
|
||||||
@@ -50,6 +51,7 @@ export const MainContainer = forwardRef<
|
|||||||
className={clsx(mainContainerStyle, className)}
|
className={clsx(mainContainerStyle, className)}
|
||||||
data-is-macos={environment.isDesktop && environment.isMacOs}
|
data-is-macos={environment.isDesktop && environment.isMacOs}
|
||||||
data-show-padding={!!padding}
|
data-show-padding={!!padding}
|
||||||
|
data-transparent={transparent}
|
||||||
ref={ref}
|
ref={ref}
|
||||||
>
|
>
|
||||||
{children}
|
{children}
|
||||||
|
|||||||
@@ -219,6 +219,10 @@ export const WorkspaceLayoutInner = ({
|
|||||||
|
|
||||||
const { appSettings } = useAppSettingHelper();
|
const { appSettings } = useAppSettingHelper();
|
||||||
const location = useLocation();
|
const location = useLocation();
|
||||||
|
const { pageId } = useParams();
|
||||||
|
|
||||||
|
// todo: refactor this that the root layout do not need to check route state
|
||||||
|
const isInPageDetail = !!pageId;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
@@ -247,15 +251,18 @@ export const WorkspaceLayoutInner = ({
|
|||||||
paths={pathGenerator}
|
paths={pathGenerator}
|
||||||
/>
|
/>
|
||||||
</Suspense>
|
</Suspense>
|
||||||
<Suspense fallback={<MainContainer />}>
|
<MainContainer
|
||||||
<MainContainer padding={appSettings.clientBorder}>
|
transparent={isInPageDetail}
|
||||||
|
padding={appSettings.clientBorder}
|
||||||
|
>
|
||||||
|
<Suspense>
|
||||||
{migration ? (
|
{migration ? (
|
||||||
<WorkspaceUpgrade migration={migration} />
|
<WorkspaceUpgrade migration={migration} />
|
||||||
) : (
|
) : (
|
||||||
children
|
children
|
||||||
)}
|
)}
|
||||||
</MainContainer>
|
</Suspense>
|
||||||
</Suspense>
|
</MainContainer>
|
||||||
</AppContainer>
|
</AppContainer>
|
||||||
<PageListTitleCellDragOverlay />
|
<PageListTitleCellDragOverlay />
|
||||||
</DndContext>
|
</DndContext>
|
||||||
|
|||||||
Reference in New Issue
Block a user