Allow user to open project menu on mobile

This commit is contained in:
David Corbitt
2023-08-08 10:20:10 -07:00
parent f47010a6e7
commit 8c5345a291

View File

@@ -12,8 +12,9 @@ import {
Button, Button,
useDisclosure, useDisclosure,
Spinner, Spinner,
useBreakpointValue,
} from "@chakra-ui/react"; } from "@chakra-ui/react";
import { useEffect, useState } from "react"; import React, { useCallback, useEffect, useState } from "react";
import Link from "next/link"; import Link from "next/link";
import { AiFillCaretDown } from "react-icons/ai"; import { AiFillCaretDown } from "react-icons/ai";
import { BsGear, BsPlus } from "react-icons/bs"; import { BsGear, BsPlus } from "react-icons/bs";
@@ -55,6 +56,16 @@ export default function ProjectMenu() {
await router.push({ pathname: "/settings" }); await router.push({ pathname: "/settings" });
}, [createMutation, router]); }, [createMutation, router]);
const openMenu = useCallback(
(event: React.MouseEvent<Element, MouseEvent>) => {
event.preventDefault();
popover.onToggle();
},
[popover],
);
const sidebarExpanded = useBreakpointValue({ base: false, md: true });
return ( return (
<> <>
<Popover <Popover
@@ -87,6 +98,7 @@ export default function ProjectMenu() {
m={{ base: 0, md: 1 }} m={{ base: 0, md: 1 }}
alignItems="center" alignItems="center"
justifyContent="center" justifyContent="center"
onClick={sidebarExpanded ? undefined : openMenu}
> >
<Text>{selectedOrg?.name[0]?.toUpperCase()}</Text> <Text>{selectedOrg?.name[0]?.toUpperCase()}</Text>
</Flex> </Flex>
@@ -107,10 +119,7 @@ export default function ProjectMenu() {
onMouseEnter={() => setExpandButtonHovered(true)} onMouseEnter={() => setExpandButtonHovered(true)}
onMouseLeave={() => setExpandButtonHovered(false)} onMouseLeave={() => setExpandButtonHovered(false)}
_hover={{ bgColor: isActive ? "gray.300" : "gray.200", transitionDelay: 0 }} _hover={{ bgColor: isActive ? "gray.300" : "gray.200", transitionDelay: 0 }}
onClick={(event) => { onClick={openMenu}
event.preventDefault();
popover.onToggle();
}}
/> />
</PopoverTrigger> </PopoverTrigger>
</HStack> </HStack>