Revert "Make main menu full width on mobile again."

This reverts commit 70d48d547207d0cd611ea2683731fe7676a1a0fc.
This commit is contained in:
barnabasmolnar 2023-04-26 12:52:35 +02:00
parent 70d48d5472
commit b63d17045e
5 changed files with 15 additions and 22 deletions

View File

@ -3,11 +3,6 @@
.excalidraw {
[data-radix-popper-content-wrapper] {
z-index: 1 !important;
@include isMobile {
width: 100%;
max-width: var(--radix-popper-available-width);
}
}
.dropdown-menu {
@ -35,6 +30,15 @@
&--mobile {
max-width: none;
// bottom: 55px;
// top: auto;
// left: 0;
// // TODO barnabasmolnar/mainmenu-radix
// // double check rendering/styling on mobile
// // width: 100%;
// display: flex;
// flex-direction: column;
// row-gap: 0.75rem;
.dropdown-menu-container {
padding: 8px 8px;

View File

@ -16,7 +16,6 @@ const MenuContent = ({
onSelect,
style,
sideOffset,
collisionBoundary,
}: {
children?: React.ReactNode;
onClickOutside?: () => void;
@ -27,7 +26,6 @@ const MenuContent = ({
onSelect?: (event: Event) => void;
style?: React.CSSProperties;
sideOffset?: number;
collisionBoundary?: Element | Element[] | null | undefined;
}) => {
const device = useDevice();
const menuRef = useOutsideClickHook(() => {
@ -41,7 +39,6 @@ const MenuContent = ({
return (
<DropdownMenuContentPropsContext.Provider value={{ onSelect }}>
<DropdownMenuPrimitive.Content
collisionBoundary={collisionBoundary}
ref={menuRef}
className={classNames}
style={style}

View File

@ -7,11 +7,9 @@ import clsx from "clsx";
const DropdownMenuSubContent = ({
children,
className,
sideOffset,
}: {
children?: React.ReactNode;
className?: string;
sideOffset?: number;
}) => {
const device = useDevice();
@ -20,10 +18,7 @@ const DropdownMenuSubContent = ({
}).trim();
return (
<DropdownMenuPrimitive.SubContent
className={classNames}
sideOffset={sideOffset}
>
<DropdownMenuPrimitive.SubContent className={classNames}>
{device.isMobile ? (
<Stack.Col className="dropdown-menu-container">{children}</Stack.Col>
) : (

View File

@ -33,7 +33,9 @@ const MainMenu = Object.assign(
const device = useDevice();
const appState = useExcalidrawAppState();
const setAppState = useExcalidrawSetAppState();
const onClickOutside = () => setAppState({ openMenu: null });
const onClickOutside = device.isMobile
? undefined
: () => setAppState({ openMenu: null });
return (
<mainMenuTunnel.In>
@ -48,11 +50,6 @@ const MainMenu = Object.assign(
{HamburgerMenuIcon}
</DropdownMenu.Trigger>
<DropdownMenu.Content
collisionBoundary={
device.isMobile
? document.querySelector(".App-bottom-bar")
: undefined
}
sideOffset={device.isMobile ? 20 : undefined}
className="mainmenu-content"
onClickOutside={onClickOutside}

View File

@ -587,8 +587,8 @@ export default function App({ appTitle, useCustom, customArgs }: AppProps) {
</MainMenu.Sub.Content>
</MainMenu.Sub>
<MainMenu.Sub>
<MainMenu.Sub.Trigger>Trigger me with offset</MainMenu.Sub.Trigger>
<MainMenu.Sub.Content sideOffset={-80}>
<MainMenu.Sub.Trigger>Trigger me</MainMenu.Sub.Trigger>
<MainMenu.Sub.Content>
<MainMenu.Sub>
<MainMenu.Sub.Trigger>Trigger me inside</MainMenu.Sub.Trigger>
<MainMenu.Sub.Content>