diff --git a/web/src/lib/components/photos-page/asset-select-context-menu.svelte b/web/src/lib/components/photos-page/asset-select-context-menu.svelte index 9bfb493cfb..9202c6611f 100644 --- a/web/src/lib/components/photos-page/asset-select-context-menu.svelte +++ b/web/src/lib/components/photos-page/asset-select-context-menu.svelte @@ -1,4 +1,5 @@ - - -{#if showContextMenu} - (showContextMenu = false)}> -
- -
-
-{/if} +
(showContextMenu = false)}> + + {#if showContextMenu} + +
+ +
+
+ {/if} +
diff --git a/web/src/routes/(user)/albums/[albumId]/+page.svelte b/web/src/routes/(user)/albums/[albumId]/+page.svelte index 296d38e32f..8e5a92aebd 100644 --- a/web/src/routes/(user)/albums/[albumId]/+page.svelte +++ b/web/src/routes/(user)/albums/[albumId]/+page.svelte @@ -44,6 +44,7 @@ import Plus from 'svelte-material-icons/Plus.svelte'; import ShareVariantOutline from 'svelte-material-icons/ShareVariantOutline.svelte'; import type { PageData } from './$types'; + import { clickOutside } from '$lib/utils/click-outside'; export let data: PageData; @@ -166,9 +167,10 @@ timelineInteractionStore.clearMultiselect(); }; - const handleOpenAlbumOptions = ({ x, y }: MouseEvent) => { - contextMenuPosition = { x, y }; - viewMode = ViewMode.ALBUM_OPTIONS; + const handleOpenAlbumOptions = ({ x }: MouseEvent) => { + const navigationBarHeight = 75; + contextMenuPosition = { x: x, y: navigationBarHeight }; + viewMode = viewMode === ViewMode.VIEW ? ViewMode.ALBUM_OPTIONS : ViewMode.VIEW; }; const handleSelectFromComputer = async () => { @@ -330,13 +332,15 @@ {#if isOwned} - - {#if viewMode === ViewMode.ALBUM_OPTIONS} - (viewMode = ViewMode.VIEW)}> - (viewMode = ViewMode.SELECT_THUMBNAIL)} text="Set album cover" /> - - {/if} - +
(viewMode = ViewMode.VIEW)}> + + {#if viewMode === ViewMode.ALBUM_OPTIONS} + + (viewMode = ViewMode.SELECT_THUMBNAIL)} text="Set album cover" /> + + {/if} + +
{/if} {/if}