From 673596eb06259b32759e3e800ed4ea4af81da423 Mon Sep 17 00:00:00 2001 From: bebiksior Date: Sun, 16 Aug 2026 12:19:14 +0200 Subject: [PATCH 1/2] =?UTF-8?q?=E2=9C=A8=20Add=20keyboard=20shortcuts=20HU?= =?UTF-8?q?D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #31 --- .../components/ShortcutsDialog/Container.vue | 81 +++++++++++++++++++ .../src/components/ShortcutsDialog/index.ts | 1 + .../layouts/AuthenticatedLayout/Container.vue | 13 +++ 3 files changed, 95 insertions(+) create mode 100644 packages/frontend/src/components/ShortcutsDialog/Container.vue create mode 100644 packages/frontend/src/components/ShortcutsDialog/index.ts diff --git a/packages/frontend/src/components/ShortcutsDialog/Container.vue b/packages/frontend/src/components/ShortcutsDialog/Container.vue new file mode 100644 index 0000000..5dee54f --- /dev/null +++ b/packages/frontend/src/components/ShortcutsDialog/Container.vue @@ -0,0 +1,81 @@ + + + diff --git a/packages/frontend/src/components/ShortcutsDialog/index.ts b/packages/frontend/src/components/ShortcutsDialog/index.ts new file mode 100644 index 0000000..9c39cd3 --- /dev/null +++ b/packages/frontend/src/components/ShortcutsDialog/index.ts @@ -0,0 +1 @@ +export { default as ShortcutsDialog } from "./Container.vue"; diff --git a/packages/frontend/src/layouts/AuthenticatedLayout/Container.vue b/packages/frontend/src/layouts/AuthenticatedLayout/Container.vue index 9c3ee11..a9b2038 100644 --- a/packages/frontend/src/layouts/AuthenticatedLayout/Container.vue +++ b/packages/frontend/src/layouts/AuthenticatedLayout/Container.vue @@ -6,6 +6,7 @@ import { useRouter } from "vue-router"; import { useAuthStore } from "../../stores/auth"; import { useThemeStore } from "../../stores/theme"; import { CommandPalette } from "@/components/CommandPalette"; +import { ShortcutsDialog } from "@/components/ShortcutsDialog"; import { UserNoticeDialog } from "@/components/UserNoticeDialog"; import { config } from "@/config"; @@ -13,6 +14,7 @@ const authStore = useAuthStore(); const themeStore = useThemeStore(); const router = useRouter(); const menu = ref(); +const shortcutsVisible = ref(false); const goSettings = async () => { await router.push({ name: "settings" }); @@ -40,6 +42,13 @@ const menuItems = computed(() => { : []; const linkItems = [ + { + label: "Keyboard shortcuts", + icon: "pi pi-question-circle", + command: () => { + shortcutsVisible.value = true; + }, + }, { label: "API Docs", icon: "pi pi-book", @@ -91,6 +100,10 @@ const goLogin = async () => {