mirror of
https://github.com/rubickCenter/rubick
synced 2025-06-16 16:36:57 +08:00
✨ toggle visibility with hotkey
This commit is contained in:
parent
ac1b202f44
commit
391c9f2952
@ -6,7 +6,7 @@ const registerHotKey = (mainWindow: BrowserWindow): void => {
|
|||||||
const config = global.OP_CONFIG.get();
|
const config = global.OP_CONFIG.get();
|
||||||
app.setLoginItemSettings({
|
app.setLoginItemSettings({
|
||||||
openAtLogin: config.perf.common.start,
|
openAtLogin: config.perf.common.start,
|
||||||
openAsHidden: true,
|
openAsHidden: true
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -16,6 +16,9 @@ const registerHotKey = (mainWindow: BrowserWindow): void => {
|
|||||||
globalShortcut.unregisterAll();
|
globalShortcut.unregisterAll();
|
||||||
// 注册偏好快捷键
|
// 注册偏好快捷键
|
||||||
globalShortcut.register(config.perf.shortCut.showAndHidden, () => {
|
globalShortcut.register(config.perf.shortCut.showAndHidden, () => {
|
||||||
|
const currentShow = mainWindow.isVisible() && mainWindow.isFocused();
|
||||||
|
if (currentShow) return mainWindow.hide();
|
||||||
|
|
||||||
const { x, y } = screen.getCursorScreenPoint();
|
const { x, y } = screen.getCursorScreenPoint();
|
||||||
const currentDisplay = screen.getDisplayNearestPoint({ x, y });
|
const currentDisplay = screen.getDisplayNearestPoint({ x, y });
|
||||||
const wx = parseInt(
|
const wx = parseInt(
|
||||||
@ -33,7 +36,7 @@ const registerHotKey = (mainWindow: BrowserWindow): void => {
|
|||||||
mainWindow.setVisibleOnAllWorkspaces(true, { visibleOnFullScreen: true });
|
mainWindow.setVisibleOnAllWorkspaces(true, { visibleOnFullScreen: true });
|
||||||
mainWindow.focus();
|
mainWindow.focus();
|
||||||
mainWindow.setVisibleOnAllWorkspaces(false, {
|
mainWindow.setVisibleOnAllWorkspaces(false, {
|
||||||
visibleOnFullScreen: true,
|
visibleOnFullScreen: true
|
||||||
});
|
});
|
||||||
mainWindow.setPosition(wx, wy);
|
mainWindow.setPosition(wx, wy);
|
||||||
mainWindow.show();
|
mainWindow.show();
|
||||||
@ -49,7 +52,7 @@ const registerHotKey = (mainWindow: BrowserWindow): void => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 注册自定义全局快捷键
|
// 注册自定义全局快捷键
|
||||||
config.global.forEach((sc) => {
|
config.global.forEach(sc => {
|
||||||
if (!sc.key || !sc.value) return;
|
if (!sc.key || !sc.value) return;
|
||||||
globalShortcut.register(sc.key, () => {
|
globalShortcut.register(sc.key, () => {
|
||||||
mainWindow.webContents.send("global-short-key", sc.value);
|
mainWindow.webContents.send("global-short-key", sc.value);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user