From 2dc95704c53ff7775215897c1063d6ffe3bafbb6 Mon Sep 17 00:00:00 2001
From: Ivan Mondragon <23062199+imondrag@users.noreply.github.com>
Date: Fri, 6 Sep 2024 06:26:58 -0700
Subject: [PATCH] feat(web): add download shortcut on the timeline & asset
 viewer (#12339)

feat(web): implement download shortcut
---
 .../lib/components/photos-page/actions/download-action.svelte  | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/web/src/lib/components/photos-page/actions/download-action.svelte b/web/src/lib/components/photos-page/actions/download-action.svelte
index 073d20901c..7716fbe36d 100644
--- a/web/src/lib/components/photos-page/actions/download-action.svelte
+++ b/web/src/lib/components/photos-page/actions/download-action.svelte
@@ -2,6 +2,7 @@
   import CircleIconButton from '$lib/components/elements/buttons/circle-icon-button.svelte';
   import { downloadArchive, downloadFile } from '$lib/utils/asset-utils';
   import MenuOption from '../../shared-components/context-menu/menu-option.svelte';
+  import { shortcut } from '$lib/actions/shortcut';
   import { getAssetControlContext } from '../asset-select-control-bar.svelte';
   import { mdiCloudDownloadOutline, mdiFileDownloadOutline, mdiFolderDownloadOutline } from '@mdi/js';
   import { t } from 'svelte-i18n';
@@ -26,6 +27,8 @@
   $: menuItemIcon = getAssets().size === 1 ? mdiFileDownloadOutline : mdiFolderDownloadOutline;
 </script>
 
+<svelte:window use:shortcut={{ shortcut: { key: 'd', shift: true }, onShortcut: handleDownloadFiles }} />
+
 {#if menuItem}
   <MenuOption text={$t('download')} icon={menuItemIcon} onClick={handleDownloadFiles} />
 {:else}