Aller au contenu principal

globalShortcut

Détecte les événements de clavier lorsque l'application n'a pas le focus du clavier.

Processus : Main

Le module globalShortcut peut inscrire/désinscrire un raccourci clavier global avec le système d'exploitation afin que vous puissiez personnaliser les opérations pour les différents raccourcis.

Remarque : Le raccourci est global; il fonctionnera même si l'application n'a pas le focus du clavier. Ce module ne peut pas être utilisé avant que l'événement ready du module ne soit émis.

const { app, globalShortcut } = require('electron')

app.whenReady().then(() => {
// Enregistre un écouteur pour le raccourci 'CommandOrControl+X.
const ret = globalShortcut.register('CommandOrControl+X', () => {
console.log('CommandOrControl+X is pressed')
})

if (!ret) {
console.log('enregistrement échoué')
}

// Check si le raccourci est enregistré.
console.log(globalShortcut.isRegistered('CommandOrControl+X'))
})

app.on('will-quit', () => {
// Retire le raccourci.
globalShortcut.unregister('CommandOrControl+X')

// Supprime tous les raccourcis.
globalShortcut.unregisterAll()
})

Méthodes

Le module globalShortcut dispose des méthodes suivantes :

globalShortcut.register(accelerator, callback)

Retourne boolean - Si le raccourci a été enregistré avec succès.

Enregistre un raccourci global correspondant à accelerator. La callback est appelée lorsque le raccourci enregistré est saisi par l'utilisateur.

Lorsque l'accélérateur est déjà utilisé par d'autres applications, cet appel échouera silencieusement. Ce comportement est prévu par les systèmes d'exploitation, car ils ne veulent pas que les applications se battent pour des raccourcis globaux.

Les accélérateurs suivants ne seront pas enregistrés correctement sur macOS 10.14 Mojave à moins que l'application ait été autorisée en tant qu'application client approuvée :

  • "Media Play/Pause"
  • "Media Piste Suivante"
  • "Media Piste Précédente"
  • "Media Stop"

globalShortcut.registerAll(accélérateurs, callback)

Enregistre un raccourci global pour chaque élément accelerator de accelerators. La callback est appelée lorsque l'un des raccourcis enregistrés est saisi par l'utilisateur.

Lorsqu'un accélérateur donné est déjà pris par d'autres applications, cet appel échouera silencieusement. Ce comportement est prévu par les systèmes d'exploitation, car ils ne veulent pas que les applications se battent pour des raccourcis globaux.

Les accélérateurs suivants ne seront pas enregistrés correctement sur macOS 10.14 Mojave à moins que l'application ait été autorisée en tant qu'application client approuvée :

  • "Media Play/Pause"
  • "Media Piste Suivante"
  • "Media Piste Précédente"
  • "Media Stop"

globalShortcut.isRegistered(accelerator)

Retourne un boolean - Si l'application à enregistrer l'accelerator.

Lorsque l'accelerator est déjà utilisé par d'autres applications, cet appel retournera toujours false. Ce comportement est prévu par les systèmes d'exploitation, car ils ne veulent pas que les applications se battent pour des raccourcis globaux.

globalShortcut.unregister(accelerator)

Supprime le raccourci global de l'accelerator.

globalShortcut.unregisterAll()

Supprime tous les raccourcis globaux.