Files
outline/app/hooks/useEditingFocus.ts
Hemachandar db114fd966 perf: store document state in context (#7658)
* perf: store document state in context

* provide doc-context for shared routes
2024-10-01 05:16:32 -07:00

20 lines
432 B
TypeScript

import { useDocumentContext } from "~/components/DocumentContext";
import useIdle from "./useIdle";
const activityEvents = [
"click",
"mousemove",
"DOMMouseScroll",
"mousewheel",
"mousedown",
"touchstart",
"touchmove",
"focus",
];
export default function useEditingFocus() {
const { editor } = useDocumentContext();
const isIdle = useIdle(3000, activityEvents);
return isIdle && !!editor?.view.hasFocus();
}