From e7588ce2d2f658832c6f2dcc1c73384f12b66fb0 Mon Sep 17 00:00:00 2001
From: E44 <129310925+programmer-44@users.noreply.github.com>
Date: Sat, 8 Nov 2025 22:15:33 +0100
Subject: [PATCH] improve ux design with disabled buttons and info texts while
no display is selected
---
.../src/components/ControlView.svelte | 28 +++++++---
.../frontend/src/components/FileView.svelte | 56 ++++++++++++++-----
2 files changed, 61 insertions(+), 23 deletions(-)
diff --git a/control/frontend/src/components/ControlView.svelte b/control/frontend/src/components/ControlView.svelte
index 9900a53..c6c97c2 100644
--- a/control/frontend/src/components/ControlView.svelte
+++ b/control/frontend/src/components/ControlView.svelte
@@ -17,6 +17,7 @@
import KeyInput from './KeyInput.svelte';
import { send_keyboard_input, show_blackscreen } from '../ts/api_handler';
import { run_on_all_selected_displays } from '../ts/stores/displays';
+ import { selected_display_ids } from '../ts/stores/select';
let popup_content: PopupContent = $state({
open: false,
@@ -60,6 +61,7 @@
{
run_on_all_selected_displays(show_blackscreen, true);
}}>Blackout
- Fallback-Bild anzeigen
Tastatur-Eingaben durchgeben
-
PC hochfahren PC hochfahren
-
PC herunterfahren PC herunterfahren
-
Shell-Befehl ausführen
diff --git a/control/frontend/src/components/FileView.svelte b/control/frontend/src/components/FileView.svelte
index 22772ba..b422d44 100644
--- a/control/frontend/src/components/FileView.svelte
+++ b/control/frontend/src/components/FileView.svelte
@@ -1,14 +1,25 @@
@@ -92,11 +103,26 @@
- {#each get_current_folder_elements($all_files, $current_file_path, $selected_display_ids) as folder_element (folder_element.id)}
-
- {/each}
+ {#if $selected_display_ids.length === 0}
+
+ Es wurden keine Bildschirme ausgewählt.
+
+ {:else}
+ {#each get_current_folder_elements($all_files, $current_file_path, $selected_display_ids) as folder_element (folder_element.id)}
+
+ {/each}
+ {#if get_current_folder_elements($all_files, $current_file_path, $selected_display_ids).length === 0}
+
+ Es sind keine Dateien auf {$selected_display_ids.length === 1
+ ? 'dem ausgewähltem Bildchirm'
+ : 'den ausgewählten Bildschirmen'} vorhanden. Klicke auf um Datei(en) hochzuladen.
+
+ {/if}
+ {/if}