Initial attempt @ using radixdropdown for mainmenu

This commit is contained in:
barnabasmolnar 2023-04-17 16:59:05 +02:00
parent c3e8ddaf58
commit e094b8b539
5 changed files with 360 additions and 8 deletions

View file

@ -7,6 +7,8 @@ import Stack from "../Stack";
import React from "react";
import { DropdownMenuContentPropsContext } from "./common";
import * as DropdownMenuRadix from "@radix-ui/react-dropdown-menu";
const MenuContent = ({
children,
onClickOutside,
@ -34,7 +36,7 @@ const MenuContent = ({
return (
<DropdownMenuContentPropsContext.Provider value={{ onSelect }}>
<div
<DropdownMenuRadix.Content
ref={menuRef}
className={classNames}
style={style}
@ -53,7 +55,7 @@ const MenuContent = ({
{children}
</Island>
)}
</div>
</DropdownMenuRadix.Content>
</DropdownMenuContentPropsContext.Provider>
);
};

View file

@ -1,5 +1,6 @@
import clsx from "clsx";
import { useDevice, useExcalidrawAppState } from "../App";
import * as DropdownMenuRadix from "@radix-ui/react-dropdown-menu";
const MenuTrigger = ({
className = "",
@ -21,7 +22,7 @@ const MenuTrigger = ({
},
).trim();
return (
<button
<DropdownMenuRadix.Trigger
data-prevent-outside-click
className={classNames}
onClick={onToggle}
@ -29,7 +30,7 @@ const MenuTrigger = ({
data-testid="dropdown-menu-button"
>
{children}
</button>
</DropdownMenuRadix.Trigger>
);
};