From 203cbbbfdb16b50bed7a09761feb7baf0b578df8 Mon Sep 17 00:00:00 2001 From: Snowknight26 Date: Sat, 1 Jun 2024 21:57:04 -0500 Subject: [PATCH 1/4] fix(web): stop slideshow when pressing escape from asset viewer (#9929) * fix(web): stop slideshow when pressing escape from asset viewer * Fix formatting --- .../lib/components/asset-viewer/asset-viewer.svelte | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/web/src/lib/components/asset-viewer/asset-viewer.svelte b/web/src/lib/components/asset-viewer/asset-viewer.svelte index 58ba9db425..f5fe57f24b 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer.svelte @@ -273,10 +273,12 @@ }; const closeViewer = async () => { - $slideshowState = SlideshowState.StopSlideshow; - document.body.style.cursor = ''; - dispatch('close'); - await navigate({ targetRoute: 'current', assetId: null }); + if ($slideshowState === SlideshowState.None) { + dispatch('close'); + await navigate({ targetRoute: 'current', assetId: null }); + } else { + $slideshowState = SlideshowState.StopSlideshow; + } }; const navigateAssetRandom = async () => { From 5af67d159f8f9f206b0a5a69cd2bcd7996de6c67 Mon Sep 17 00:00:00 2001 From: Jacob Watson Date: Sun, 2 Jun 2024 22:11:45 +1000 Subject: [PATCH 2/4] fix(web): disable bulk action buttons while items selected (#9938) fix(web):disabled bulk action buttons while items selected --- .../trash/[[photos=photos]]/[[assetId=id]]/+page.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte b/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte index 21616b441b..cf5edaae34 100644 --- a/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte +++ b/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte @@ -97,13 +97,13 @@ {#if $featureFlags.loaded && $featureFlags.trash}
- +
Restore all
- handleEmptyTrash()}> + handleEmptyTrash()} disabled={$isMultiSelectState}>
Empty trash From d1135db8cf33901aee6449a6029480198099afa3 Mon Sep 17 00:00:00 2001 From: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com> Date: Sun, 2 Jun 2024 14:20:11 +0200 Subject: [PATCH 3/4] refactor(web): remove events from clickOutside action (#9943) --- web/src/lib/actions/click-outside.ts | 17 ++--------------- .../album-page/share-info-modal.svelte | 2 +- .../asset-viewer/activity-viewer.svelte | 6 ++---- .../components/asset-viewer/asset-viewer.svelte | 1 - web/src/lib/components/elements/dropdown.svelte | 2 +- .../components/faces-page/people-card.svelte | 2 +- .../photos-page/actions/delete-assets.svelte | 11 ----------- .../asset-select-context-menu.svelte | 2 +- .../context-menu/context-menu.svelte | 5 ++--- .../right-click-context-menu.svelte | 9 +-------- .../navigation-bar/navigation-bar.svelte | 7 ++++--- .../[[assetId=id]]/+page.svelte | 2 +- .../(user)/photos/[[assetId=id]]/+page.svelte | 11 +---------- .../admin/library-management/+page.svelte | 2 +- 14 files changed, 18 insertions(+), 61 deletions(-) diff --git a/web/src/lib/actions/click-outside.ts b/web/src/lib/actions/click-outside.ts index ddb648a4f2..bbcb0c405b 100644 --- a/web/src/lib/actions/click-outside.ts +++ b/web/src/lib/actions/click-outside.ts @@ -1,19 +1,12 @@ import { matchesShortcut } from '$lib/actions/shortcut'; import type { ActionReturn } from 'svelte/action'; -interface Attributes { - /** @deprecated */ - 'on:outclick'?: (e: CustomEvent) => void; - /** @deprecated **/ - 'on:escape'?: (e: CustomEvent) => void; -} - interface Options { onOutclick?: () => void; onEscape?: () => void; } -export function clickOutside(node: HTMLElement, options: Options = {}): ActionReturn { +export function clickOutside(node: HTMLElement, options: Options = {}): ActionReturn { const { onOutclick, onEscape } = options; const handleClick = (event: MouseEvent) => { @@ -22,11 +15,7 @@ export function clickOutside(node: HTMLElement, options: Options = {}): ActionRe return; } - if (onOutclick) { - onOutclick(); - } else { - node.dispatchEvent(new CustomEvent('outclick')); - } + onOutclick?.(); }; const handleKey = (event: KeyboardEvent) => { @@ -37,8 +26,6 @@ export function clickOutside(node: HTMLElement, options: Options = {}): ActionRe if (onEscape) { event.stopPropagation(); onEscape(); - } else { - node.dispatchEvent(new CustomEvent('escape')); } }; diff --git a/web/src/lib/components/album-page/share-info-modal.svelte b/web/src/lib/components/album-page/share-info-modal.svelte index 6856b0b357..be47f4e258 100644 --- a/web/src/lib/components/album-page/share-info-modal.svelte +++ b/web/src/lib/components/album-page/share-info-modal.svelte @@ -126,7 +126,7 @@ /> {#if selectedMenuUser === user} - (selectedMenuUser = null)}> + (selectedMenuUser = null)}> {#if role === AlbumUserRole.Viewer} handleSetReadonly(user, AlbumUserRole.Editor)} text="Allow edits" /> {:else} diff --git a/web/src/lib/components/asset-viewer/activity-viewer.svelte b/web/src/lib/components/asset-viewer/activity-viewer.svelte index 0e4b61080b..bb1a50c2f9 100644 --- a/web/src/lib/components/asset-viewer/activity-viewer.svelte +++ b/web/src/lib/components/asset-viewer/activity-viewer.svelte @@ -201,8 +201,7 @@