diff --git a/frontend/components/theme-provider.tsx b/frontend/components/theme-provider.tsx index 3d44f48..3ce77b8 100644 --- a/frontend/components/theme-provider.tsx +++ b/frontend/components/theme-provider.tsx @@ -1,7 +1,7 @@ "use client" import * as React from "react" -import { ThemeProvider as NextThemesProvider, useTheme } from "next-themes" +import { ThemeProvider as NextThemesProvider } from "next-themes" function ThemeProvider({ children, @@ -15,57 +15,9 @@ function ThemeProvider({ disableTransitionOnChange {...props} > - {children} ) } -function isTypingTarget(target: EventTarget | null) { - if (!(target instanceof HTMLElement)) { - return false - } - - return ( - target.isContentEditable || - target.tagName === "INPUT" || - target.tagName === "TEXTAREA" || - target.tagName === "SELECT" - ) -} - -function ThemeHotkey() { - const { resolvedTheme, setTheme } = useTheme() - - React.useEffect(() => { - function onKeyDown(event: KeyboardEvent) { - if (event.defaultPrevented || event.repeat) { - return - } - - if (event.metaKey || event.ctrlKey || event.altKey) { - return - } - - if (event.key.toLowerCase() !== "d") { - return - } - - if (isTypingTarget(event.target)) { - return - } - - setTheme(resolvedTheme === "dark" ? "light" : "dark") - } - - window.addEventListener("keydown", onKeyDown) - - return () => { - window.removeEventListener("keydown", onKeyDown) - } - }, [resolvedTheme, setTheme]) - - return null -} - export { ThemeProvider }