UNPKG

@robbplo/hyperterm-summon

Version:

Summon your Hyperterm windows with a system-wide hotkey

40 lines (31 loc) 1.02 kB
const registerShortcut = require('hyperterm-register-shortcut'); const toggle = require('./toggle'); const DEFAULTS = { hideDock: false, hideOnBlur: false, hotkey: 'Ctrl+;', }; const applyConfig = (app, handleBlur) => { const config = Object.assign({}, DEFAULTS, app.config.getConfig().summon); // TODO: Unregister prior to registering when supported registerShortcut('summon', toggle, config.hotkey)(app); if (app.dock) { config.hideDock ? app.dock.hide() : app.dock.show(); } if (!config.hideOnBlur) { app.removeListener('browser-window-blur', handleBlur); } else if (!app.listeners('browser-window-blur').includes(handleBlur)) { app.on('browser-window-blur', handleBlur); } }; const generateActivateCallback = (callback, app) => event => callback(app); const onApp = (app, callback, handleActivate) => { app.on('activate', handleActivate); callback(); return app.config.subscribe(callback); }; module.exports = { applyConfig, generateActivateCallback, onApp, };