Add context menu to breadcrumbs

This commit is contained in:
2026-02-26 14:47:01 +01:00
parent d756d545db
commit 00b432f3dc
4 changed files with 42 additions and 22 deletions

View File

@@ -2,15 +2,28 @@
import { fs_encode_path } from "lib/FilesystemAPI.svelte";
import { path_link, type FSNavigator } from "./FSNavigator";
import { menu_is_open } from "wrap/MainMenu.svelte";
import FileMenu from "./filemanager/FileMenu.svelte";
import EditWindow from "./edit_window/EditWindow.svelte";
let { nav }: {
let {
nav,
edit_window = null
}: {
nav: FSNavigator;
edit_window?: EditWindow;
} = $props();
let file_menu: FileMenu = $state()
</script>
<div class="breadcrumbs" class:menu_closed={!$menu_is_open}>
{#each $nav.path as node, i (node.path)}
<a href={"/d"+fs_encode_path(node.path)} class="breadcrumb button flat" use:path_link={{nav: nav, node: node}}>
<a
href={"/d"+fs_encode_path(node.path)}
class="breadcrumb button flat"
use:path_link={{nav: nav, node: node}}
oncontextmenu={e => file_menu.open(node, e.target, e)}
>
{#if node.abuse_type !== undefined}
<i class="icon small">block</i>
{:else if node.is_shared()}
@@ -26,6 +39,8 @@ let { nav }: {
{/each}
</div>
<FileMenu bind:this={file_menu} nav={nav} edit_window={edit_window} />
<style>
.breadcrumbs {
flex: 0 0 auto;