ProzillaOS/src/App.tsx
2024-05-10 17:39:24 +02:00

47 lines
No EOL
1.5 KiB
TypeScript

import styles from "./App.module.css";
import { Taskbar } from "./components/taskbar/Taskbar";
import { WindowsManagerProvider } from "./hooks/windows/windowsManagerContext";
import { WindowsView } from "./components/windows/WindowsView";
import { VirtualRootProvider } from "./hooks/virtual-drive/virtualRootContext";
import { Desktop } from "./components/desktop/Desktop";
import { SettingsManagerProvider } from "./hooks/settings/settingsManagerContext";
import { ModalsView } from "./components/modals/ModalsView";
import { ReactElement, useEffect } from "react";
import { ZIndexManagerProvider } from "./hooks/z-index/zIndexManagerContext";
import { ModalsManagerProvider } from "./hooks/modals/modalsManagerContext";
import { ThemeProvider } from "./hooks/themes/themes";
export default function App(): ReactElement {
useEffect(() => {
const onContextMenu = (event: Event) => {
event.preventDefault();
};
document.addEventListener("contextmenu", onContextMenu);
return () => {
document.removeEventListener("contextmenu", onContextMenu);
};
}, []);
return (
<VirtualRootProvider>
<ZIndexManagerProvider>
<WindowsManagerProvider>
<ModalsManagerProvider>
<SettingsManagerProvider>
<ThemeProvider>
<div className={styles.App}>
<Taskbar/>
<WindowsView/>
<ModalsView/>
<Desktop/>
</div>
</ThemeProvider>
</SettingsManagerProvider>
</ModalsManagerProvider>
</WindowsManagerProvider>
</ZIndexManagerProvider>
</VirtualRootProvider>
);
};