feat: add hotkeys (#986)
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
import { useCallback } from "react";
|
import { useCallback } from "react";
|
||||||
import { Group, Menu } from "@mantine/core";
|
import { Group, Menu } from "@mantine/core";
|
||||||
|
import { useHotkeys } from "@mantine/hooks";
|
||||||
import {
|
import {
|
||||||
IconBox,
|
IconBox,
|
||||||
IconBoxAlignTop,
|
IconBoxAlignTop,
|
||||||
@@ -137,6 +138,8 @@ const EditModeMenu = () => {
|
|||||||
setEditMode(true);
|
setEditMode(true);
|
||||||
}, [board, isEditMode, saveBoard, setEditMode]);
|
}, [board, isEditMode, saveBoard, setEditMode]);
|
||||||
|
|
||||||
|
useHotkeys([["mod+e", toggle]]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<HeaderButton onClick={toggle} loading={isPending}>
|
<HeaderButton onClick={toggle} loading={isPending}>
|
||||||
{isEditMode ? <IconPencilOff stroke={1.5} /> : <IconPencil stroke={1.5} />}
|
{isEditMode ? <IconPencilOff stroke={1.5} /> : <IconPencil stroke={1.5} />}
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { useCallback, useEffect } from "react";
|
|||||||
import Link from "next/link";
|
import Link from "next/link";
|
||||||
import { useRouter } from "next/navigation";
|
import { useRouter } from "next/navigation";
|
||||||
import { Center, Menu, Stack, Text, useMantineColorScheme } from "@mantine/core";
|
import { Center, Menu, Stack, Text, useMantineColorScheme } from "@mantine/core";
|
||||||
import { useTimeout } from "@mantine/hooks";
|
import { useHotkeys, useTimeout } from "@mantine/hooks";
|
||||||
import {
|
import {
|
||||||
IconCheck,
|
IconCheck,
|
||||||
IconHome,
|
IconHome,
|
||||||
@@ -33,6 +33,7 @@ interface UserAvatarMenuProps {
|
|||||||
export const UserAvatarMenu = ({ children }: UserAvatarMenuProps) => {
|
export const UserAvatarMenu = ({ children }: UserAvatarMenuProps) => {
|
||||||
const t = useScopedI18n("common.userAvatar.menu");
|
const t = useScopedI18n("common.userAvatar.menu");
|
||||||
const { colorScheme, toggleColorScheme } = useMantineColorScheme();
|
const { colorScheme, toggleColorScheme } = useMantineColorScheme();
|
||||||
|
useHotkeys([["mod+J", toggleColorScheme]]);
|
||||||
|
|
||||||
const ColorSchemeIcon = colorScheme === "dark" ? IconSun : IconMoon;
|
const ColorSchemeIcon = colorScheme === "dark" ? IconSun : IconMoon;
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ import {
|
|||||||
useMantineColorScheme,
|
useMantineColorScheme,
|
||||||
useMantineTheme,
|
useMantineTheme,
|
||||||
} from "@mantine/core";
|
} from "@mantine/core";
|
||||||
import { useDisclosure } from "@mantine/hooks";
|
import { getHotkeyHandler, useDisclosure } from "@mantine/hooks";
|
||||||
import { Link, RichTextEditor, useRichTextEditorContext } from "@mantine/tiptap";
|
import { Link, RichTextEditor, useRichTextEditorContext } from "@mantine/tiptap";
|
||||||
import {
|
import {
|
||||||
IconCheck,
|
IconCheck,
|
||||||
@@ -231,6 +231,7 @@ export function Notebook({ options, isEditMode, boardId, itemId }: WidgetCompone
|
|||||||
p={0}
|
p={0}
|
||||||
mt={0}
|
mt={0}
|
||||||
h="100%"
|
h="100%"
|
||||||
|
onKeyDown={isEditing ? getHotkeyHandler([["mod+s", handleEditToggle]]) : undefined}
|
||||||
editor={editor}
|
editor={editor}
|
||||||
styles={(theme) => ({
|
styles={(theme) => ({
|
||||||
root: {
|
root: {
|
||||||
|
|||||||
Reference in New Issue
Block a user