raccourciclavier [R]eveal [H]ide

This commit is contained in:
valere
2025-12-22 09:52:16 +01:00
parent 5948b4efbd
commit ecc1c22475

View File

@@ -1,5 +1,7 @@
import { useUiStore } from '~/store/ui' import { useUiStore } from '~/store/ui'
import { usePlayerStore } from '~/store/player' import { usePlayerStore } from '~/store/player'
import { useCardStore } from '~/store/card'
import { useDataStore } from '~/store/data'
export default defineNuxtPlugin((nuxtApp) => { export default defineNuxtPlugin((nuxtApp) => {
// Ne s'exécuter que côté client // Ne s'exécuter que côté client
@@ -7,6 +9,8 @@ export default defineNuxtPlugin((nuxtApp) => {
const ui = useUiStore() const ui = useUiStore()
const player = usePlayerStore() const player = usePlayerStore()
const cardStore = useCardStore()
const dataStore = useDataStore()
function isInputElement(target: EventTarget | null): boolean { function isInputElement(target: EventTarget | null): boolean {
return ( return (
@@ -41,6 +45,24 @@ export default defineNuxtPlugin((nuxtApp) => {
switch (e.code) { switch (e.code) {
// Gestion de la barre d'espace pour play/pause // Gestion de la barre d'espace pour play/pause
case 'KeyR': // R pour révéler toutes les cartes
e.preventDefault()
e.stopPropagation()
if (!isInputElement(e.target as HTMLElement) && ui.getSelectedBox) {
const tracks = dataStore.getTracksByboxId(ui.getSelectedBox.id)
cardStore.revealAllCards(tracks)
}
break
case 'KeyH': // H pour cacher toutes les cartes
e.preventDefault()
e.stopPropagation()
if (!isInputElement(e.target as HTMLElement) && ui.getSelectedBox) {
const tracks = dataStore.getTracksByboxId(ui.getSelectedBox.id)
cardStore.hideAllCards(tracks)
}
break
case 'Space': case 'Space':
e.preventDefault() e.preventDefault()
e.stopPropagation() e.stopPropagation()