From f578f2c2c00219961a1874982f5706750c178b33 Mon Sep 17 00:00:00 2001 From: Wim Brand Date: Wed, 1 Apr 2026 19:38:15 +0200 Subject: [PATCH] Move search bar into modal --- svelte/src/filesystem/Breadcrumbs.svelte | 30 +-- svelte/src/filesystem/Filesystem.svelte | 11 +- .../{filemanager => }/SearchBar.svelte | 162 +++++++------ svelte/src/filesystem/Toolbar.svelte | 3 +- svelte/src/filesystem/edit_window/Branding.ts | 2 +- .../filesystem/filemanager/FileManager.svelte | 9 +- .../filesystem/filemanager/FilePicker.svelte | 26 +- .../src/filesystem/viewers/FilePreview.svelte | 5 +- svelte/src/util/TabMenu.svelte | 14 +- svelte/src/wrap/BreadcrumbStore.ts | 4 + svelte/src/wrap/MainMenu.svelte | 224 ++++++++++-------- svelte/src/wrap/Router.svelte | 10 + svelte/src/wrap/RouterStore.ts | 1 + 13 files changed, 299 insertions(+), 202 deletions(-) rename svelte/src/filesystem/{filemanager => }/SearchBar.svelte (60%) create mode 100644 svelte/src/wrap/BreadcrumbStore.ts diff --git a/svelte/src/filesystem/Breadcrumbs.svelte b/svelte/src/filesystem/Breadcrumbs.svelte index 01cc1cc..400923d 100644 --- a/svelte/src/filesystem/Breadcrumbs.svelte +++ b/svelte/src/filesystem/Breadcrumbs.svelte @@ -1,9 +1,10 @@ - - + +{/snippet} diff --git a/svelte/src/filesystem/Filesystem.svelte b/svelte/src/filesystem/Filesystem.svelte index 1d707c6..7931e0d 100644 --- a/svelte/src/filesystem/Filesystem.svelte +++ b/svelte/src/filesystem/Filesystem.svelte @@ -10,6 +10,7 @@ import { global_navigator } from "./FSNavigator" import { css_from_path } from "filesystem/edit_window/Branding"; import AffiliatePrompt from "user_home/AffiliatePrompt.svelte"; import { current_page_store } from "wrap/RouterStore"; +import SearchBar from "./SearchBar.svelte"; let file_preview: FilePreview = $state() let toolbar: Toolbar = $state() @@ -18,6 +19,7 @@ let details_visible = $state(false) let edit_window: EditWindow = $state() let edit_visible = $state(false) let details_window: DetailsWindow = $state() +let search_bar: SearchBar = $state() const nav = global_navigator @@ -85,6 +87,9 @@ const keydown = (e: KeyboardEvent) => { case "r": nav.shuffle = !nav.shuffle break; + case "/": + search_bar.open() + break; case "a": case "ArrowLeft": nav.open_sibling(-1) @@ -146,6 +151,7 @@ const keydown = (e: KeyboardEvent) => { upload_widget={upload_widget} edit_window={edit_window} details_window={details_window} + search_bar={search_bar} /> @@ -158,6 +164,8 @@ const keydown = (e: KeyboardEvent) => { /> + + @@ -183,8 +191,7 @@ const keydown = (e: KeyboardEvent) => { .filesystem { display: flex; flex-direction: column; - height: 100vh; - width: 100%; + flex: 1 1 auto; /* auto grow */ } .file_preview { diff --git a/svelte/src/filesystem/filemanager/SearchBar.svelte b/svelte/src/filesystem/SearchBar.svelte similarity index 60% rename from svelte/src/filesystem/filemanager/SearchBar.svelte rename to svelte/src/filesystem/SearchBar.svelte index 9ef197b..d8a933a 100644 --- a/svelte/src/filesystem/filemanager/SearchBar.svelte +++ b/svelte/src/filesystem/SearchBar.svelte @@ -1,13 +1,15 @@ +{#snippet breadcrumbs()} + {current_page.title} + {#if current_subpage !== null} + chevron_right + {current_subpage.title} + {/if} +{/snippet} + {#if current_page !== null && current_page.hide_frame !== true}
@@ -106,9 +117,6 @@ onMount(() => { {/if}