diff --git a/apps/matrix/apps/web/src/lib/components/chat/MessageInput.svelte b/apps/matrix/apps/web/src/lib/components/chat/MessageInput.svelte index f35c3ca51..254b61edc 100644 --- a/apps/matrix/apps/web/src/lib/components/chat/MessageInput.svelte +++ b/apps/matrix/apps/web/src/lib/components/chat/MessageInput.svelte @@ -28,6 +28,7 @@ let isTyping = $state(false); let uploading = $state(false); let uploadProgress = $state(0); + let showAttachMenu = $state(false); // Voice recording state let isRecording = $state(false); @@ -235,10 +236,10 @@ } -
+
{#if replyTo || editMessage} -
+
{#if editMessage}

Nachricht bearbeiten

@@ -268,148 +269,144 @@ {#if uploading} -
- +
+
-
+
- {uploadProgress}% + {uploadProgress}%
{/if} {#if isRecording} -
-
-
-

Aufnahme läuft...

-
- {formatDuration(recordingDuration)} +
+
+

Aufnahme...

+ {formatDuration(recordingDuration)}
{/if} - -
- -
- - + +
+ +
+ - - - - -
- -
- - - {#if isRecording} + {#if showAttachMenu} + - {:else if message.trim()} - - {:else} - + class="fixed inset-0 z-40" + onclick={() => (showAttachMenu = false)} + aria-label="Menü schließen" + > + +
+ + +
{/if}
+ + + + + +
+ +
+ + + {#if isRecording} + + {:else if message.trim()} + + {:else} + + {/if}
-

+

{#if editMessage} - Enter zum Speichern, Escape zum Abbrechen + Enter = Speichern · Escape = Abbrechen {:else} - Enter zum Senden, Shift+Enter für neue Zeile + Enter = Senden · Shift+Enter = Neue Zeile {/if}

diff --git a/apps/matrix/apps/web/src/routes/(app)/chat/+page.svelte b/apps/matrix/apps/web/src/routes/(app)/chat/+page.svelte index 114664434..79763c753 100644 --- a/apps/matrix/apps/web/src/routes/(app)/chat/+page.svelte +++ b/apps/matrix/apps/web/src/routes/(app)/chat/+page.svelte @@ -32,10 +32,10 @@ } -
+