diff --git a/src/components/Drawer.tsx b/src/components/Drawer.tsx
new file mode 100644
index 0000000..9ee6660
--- /dev/null
+++ b/src/components/Drawer.tsx
@@ -0,0 +1,20 @@
+import { useSignal } from "@preact/signals";
+import { PropsWithChildren } from "preact/compat";
+
+type DrawerProps = PropsWithChildren<{}>;
+
+export default function Drawer({ children }: DrawerProps) {
+ const isOpen = useSignal(false);
+ return (
+
+
+ {isOpen.value && children}
+
+ );
+}
diff --git a/src/components/Main.tsx b/src/components/Main.tsx
index 82f0e44..ff79f39 100644
--- a/src/components/Main.tsx
+++ b/src/components/Main.tsx
@@ -5,6 +5,7 @@ import ReadingBox from "./ReadingBox";
import Reference from "./Reference";
import FontPicker from "./FontPicker";
import DualText from "./DualText";
+import Drawer from "./Drawer";
export default function Main() {
useEffect(() => {
@@ -28,12 +29,14 @@ export default function Main() {
-
>
);
diff --git a/src/components/ReadingBox.tsx b/src/components/ReadingBox.tsx
index 75b1cbd..fe366ad 100644
--- a/src/components/ReadingBox.tsx
+++ b/src/components/ReadingBox.tsx
@@ -1,10 +1,10 @@
import { useSignal } from "@preact/signals";
import localforage from "localforage";
-import { useEffect } from "preact/hooks";
+import { useEffect, useRef } from "preact/hooks";
import DualText from "./DualText";
export default function ReadingBox() {
- const isEditing = useSignal(false);
+ const editModalRef = useRef(null);
const contents =
useSignal(`It is a period of civil war. Rebel spaceships, striking from a hidden base, have won their first victory against the evil Galactic Empire.
@@ -25,32 +25,40 @@ Pursued by the Empire's sinister agents, Princess Leia races home aboard her sta
}, []);
return (