diff --git a/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte b/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte index f7d4c30ec8..b0ac455bc8 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer-nav-bar.svelte @@ -7,6 +7,7 @@ import DeleteAction from '$lib/components/asset-viewer/actions/delete-action.svelte'; import DownloadAction from '$lib/components/asset-viewer/actions/download-action.svelte'; import FavoriteAction from '$lib/components/asset-viewer/actions/favorite-action.svelte'; + import KeepThisDeleteOthersAction from '$lib/components/asset-viewer/actions/keep-this-delete-others.svelte'; import RestoreAction from '$lib/components/asset-viewer/actions/restore-action.svelte'; import SetAlbumCoverAction from '$lib/components/asset-viewer/actions/set-album-cover-action.svelte'; import SetFeaturedPhotoAction from '$lib/components/asset-viewer/actions/set-person-featured-action.svelte'; @@ -14,7 +15,6 @@ import ShareAction from '$lib/components/asset-viewer/actions/share-action.svelte'; import ShowDetailAction from '$lib/components/asset-viewer/actions/show-detail-action.svelte'; import UnstackAction from '$lib/components/asset-viewer/actions/unstack-action.svelte'; - import KeepThisDeleteOthersAction from '$lib/components/asset-viewer/actions/keep-this-delete-others.svelte'; import CircleIconButton from '$lib/components/elements/buttons/circle-icon-button.svelte'; import ButtonContextMenu from '$lib/components/shared-components/context-menu/button-context-menu.svelte'; import MenuOption from '$lib/components/shared-components/context-menu/menu-option.svelte'; @@ -22,6 +22,7 @@ import { user } from '$lib/stores/user.store'; import { photoZoomState } from '$lib/stores/zoom-image.store'; import { getAssetJobName, getSharedLink } from '$lib/utils'; + import { canCopyImageToClipboard } from '$lib/utils/asset-utils'; import { openFileUploadDialog } from '$lib/utils/file-uploader'; import { AssetJobName, @@ -45,9 +46,8 @@ mdiPresentationPlay, mdiUpload, } from '@mdi/js'; - import { canCopyImageToClipboard } from '$lib/utils/asset-utils'; - import { t } from 'svelte-i18n'; import type { Snippet } from 'svelte'; + import { t } from 'svelte-i18n'; interface Props { asset: AssetResponseDto; @@ -104,7 +104,7 @@
{#if showCloseButton} diff --git a/web/src/lib/components/asset-viewer/asset-viewer.svelte b/web/src/lib/components/asset-viewer/asset-viewer.svelte index 08772bcec4..5606da31a9 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer.svelte @@ -4,6 +4,7 @@ import MotionPhotoAction from '$lib/components/asset-viewer/actions/motion-photo-action.svelte'; import NextAssetAction from '$lib/components/asset-viewer/actions/next-asset-action.svelte'; import PreviousAssetAction from '$lib/components/asset-viewer/actions/previous-asset-action.svelte'; + import AssetViewerNavBar from '$lib/components/asset-viewer/asset-viewer-nav-bar.svelte'; import { AssetAction, ProjectionType } from '$lib/constants'; import { activityManager } from '$lib/managers/activity-manager.svelte'; import { authManager } from '$lib/managers/auth-manager.svelte'; @@ -34,7 +35,6 @@ import { NotificationType, notificationController } from '../shared-components/notification/notification'; import ActivityStatus from './activity-status.svelte'; import ActivityViewer from './activity-viewer.svelte'; - import AssetViewerNavBar from './asset-viewer-nav-bar.svelte'; import DetailPanel from './detail-panel.svelte'; import CropArea from './editor/crop-tool/crop-area.svelte'; import EditorPanel from './editor/editor-panel.svelte'; @@ -379,12 +379,13 @@
{#if $slideshowState === SlideshowState.None && !isShowEditor} -
+
{/if} + {#if $slideshowState != SlideshowState.None} +
+ assetViewerHtmlElement?.requestFullscreen?.()} + onPrevious={() => navigateAsset('previous')} + onNext={() => navigateAsset('next')} + onClose={() => ($slideshowState = SlideshowState.StopSlideshow)} + /> +
+ {/if} + {#if $slideshowState === SlideshowState.None && showNavigation && !isShowEditor} -
+
navigateAsset('previous')} />
{/if} -
- {#if $slideshowState != SlideshowState.None} -
- assetViewerHtmlElement?.requestFullscreen?.()} - onPrevious={() => navigateAsset('previous')} - onNext={() => navigateAsset('next')} - onClose={() => ($slideshowState = SlideshowState.StopSlideshow)} - /> -
- {/if} - +
{#if previewStackedAsset} {#key previewStackedAsset.id} {#if previewStackedAsset.type === AssetTypeEnum.Image} @@ -504,7 +505,7 @@ /> {/if} {#if $slideshowState === SlideshowState.None && isShared && ((album && album.isActivityEnabled) || activityManager.commentCount > 0)} -
+
{#if $slideshowState === SlideshowState.None && showNavigation && !isShowEditor} -
+
navigateAsset('next')} />
{/if} @@ -528,7 +529,7 @@
($isShowDetail = false)} /> @@ -539,7 +540,7 @@
@@ -550,7 +551,7 @@ {@const stackedAssets = stack.assets}
{#each stackedAssets as stackedAsset (stackedAsset.id)} @@ -588,7 +589,7 @@
- (isShowChangeDate = false)} - /> - + (isShowChangeDate = false)} + /> {/if}
diff --git a/web/src/lib/components/asset-viewer/photo-viewer.svelte b/web/src/lib/components/asset-viewer/photo-viewer.svelte index 531f075b86..4838ee1fc6 100644 --- a/web/src/lib/components/asset-viewer/photo-viewer.svelte +++ b/web/src/lib/components/asset-viewer/photo-viewer.svelte @@ -1,27 +1,27 @@