From c2991b8e26548043498f35d1bb9a2b6481210178 Mon Sep 17 00:00:00 2001 From: Kieran Date: Sat, 21 Oct 2023 22:26:04 +0100 Subject: [PATCH] fix: note creator mobile --- packages/app/src/Element/AsyncIcon.tsx | 3 +-- packages/app/src/Element/Chat/DmWindow.tsx | 2 +- .../app/src/Element/Chat/WriteMessage.tsx | 26 +++++-------------- .../app/src/Element/Event/NoteCreator.css | 1 + .../app/src/Element/Event/NoteCreator.tsx | 8 +++--- packages/app/src/index.css | 14 ++++++---- 6 files changed, 23 insertions(+), 31 deletions(-) diff --git a/packages/app/src/Element/AsyncIcon.tsx b/packages/app/src/Element/AsyncIcon.tsx index 4dab80185..503e0ca22 100644 --- a/packages/app/src/Element/AsyncIcon.tsx +++ b/packages/app/src/Element/AsyncIcon.tsx @@ -1,7 +1,6 @@ import Icon from "Icons/Icon"; import useLoading from "Hooks/useLoading"; import Spinner from "Icons/Spinner"; -import classNames from "classnames"; export type AsyncIconProps = React.HTMLProps & { iconName: string; @@ -17,7 +16,7 @@ export function AsyncIcon(props: AsyncIconProps) { delete mergedProps["iconSize"]; delete mergedProps["loading"]; return ( -
+
{loading ? : } {props.children}
diff --git a/packages/app/src/Element/Chat/DmWindow.tsx b/packages/app/src/Element/Chat/DmWindow.tsx index e0103e760..5a46c1ae5 100644 --- a/packages/app/src/Element/Chat/DmWindow.tsx +++ b/packages/app/src/Element/Chat/DmWindow.tsx @@ -34,7 +34,7 @@ export default function DmWindow({ id }: { id: string }) {
{chat && }
-
+
diff --git a/packages/app/src/Element/Chat/WriteMessage.tsx b/packages/app/src/Element/Chat/WriteMessage.tsx index 20930a1d6..0d6a34aa4 100644 --- a/packages/app/src/Element/Chat/WriteMessage.tsx +++ b/packages/app/src/Element/Chat/WriteMessage.tsx @@ -1,17 +1,14 @@ +import { useState } from "react"; import { NostrEvent, NostrLink, NostrPrefix } from "@snort/system"; import useEventPublisher from "Hooks/useEventPublisher"; -import Icon from "Icons/Icon"; -import Spinner from "Icons/Spinner"; -import { useState } from "react"; import useFileUpload from "Upload"; import { openFile } from "SnortUtils"; import Textarea from "../Textarea"; import { Chat } from "chat"; +import { AsyncIcon } from "Element/AsyncIcon"; export default function WriteMessage({ chat }: { chat: Chat }) { const [msg, setMsg] = useState(""); - const [sending, setSending] = useState(false); - const [uploading, setUploading] = useState(false); const [otherEvents, setOtherEvents] = useState>([]); const [error, setError] = useState(""); const { publisher, system } = useEventPublisher(); @@ -31,7 +28,6 @@ export default function WriteMessage({ chat }: { chat: Chat }) { } async function uploadFile(file: File | Blob) { - setUploading(true); try { if (file) { const rx = await uploader.upload(file, file.name); @@ -51,25 +47,19 @@ export default function WriteMessage({ chat }: { chat: Chat }) { if (e instanceof Error) { setError(e.message); } - } finally { - setUploading(false); } } async function sendMessage() { if (msg && publisher && chat) { - setSending(true); const ev = await chat.createMessage(msg, publisher); await chat.sendMessage(ev, system); setMsg(""); - setSending(false); } } function onChange(e: React.ChangeEvent) { - if (!sending) { - setMsg(e.target.value); - } + setMsg(e.target.value); } async function onEnter(e: React.KeyboardEvent) { @@ -82,10 +72,8 @@ export default function WriteMessage({ chat }: { chat: Chat }) { return ( <> - -
+ attachFile()} /> +