mirror of
https://github.com/cucumber-sp/yandex-music-linux.git
synced 2024-12-24 14:34:39 +03:00
fc008fe50c
Change-Id: Iafebe0ebd029b1414a3a435e28b0ce74d70e0a92
45 lines
1.8 KiB
Diff
45 lines
1.8 KiB
Diff
diff --git a/main/lib/createTray.js b/main/lib/createTray.js
|
|
--- a/main/lib/createTray.js
|
|
+++ b/main/lib/createTray.js
|
|
@@ -0,0 +1,20 @@
|
|
+const { app, Menu, Tray, nativeImage } = require('electron');
|
|
+const path = require('path');
|
|
+
|
|
+function createTray(window) {
|
|
+ const iconPath = path.join(__dirname, '../../build/next-desktop/favicon.png');
|
|
+ const tray = new Tray(iconPath);
|
|
+ const contextMenu = Menu.buildFromTemplate([
|
|
+ {label: 'Open Window', click: () => window.show()},
|
|
+ {label: 'Quit YandexMusic', click: () => app.quit()}
|
|
+ ]);
|
|
+ tray.setToolTip('Yandex Music');
|
|
+ tray.setContextMenu(contextMenu);
|
|
+
|
|
+ tray.on('click', () => {
|
|
+ window.show();
|
|
+ });
|
|
+ tray.setIgnoreDoubleClickEvents(true);
|
|
+}
|
|
+
|
|
+exports.createTray = createTray;
|
|
|
|
diff --git a/main/index.js b/main/index.js
|
|
--- a/main/index.js
|
|
+++ b/main/index.js
|
|
@@ -23,6 +23,7 @@ const handleMetrikaRequests_js_1 = require("./lib/handlers/handleMetrikaRequests
|
|
const loadURL_js_1 = require("./lib/loadURL.js");
|
|
const safeRedirects_js_1 = require("./lib/safeRedirects.js");
|
|
const handleWindowSessionEvents_js_1 = require("./lib/handlers/handleWindowSessionEvents.js");
|
|
+const {createTray} = require('./lib/createTray.js');
|
|
(0, handleError_js_1.handleUncaughtException)();
|
|
(0, singleInstance_js_1.checkForSingleInstance)();
|
|
(0, handleDeeplink_js_1.handleDeeplinkOnApplicationStartup)();
|
|
@@ -30,6 +31,7 @@ const handleWindowSessionEvents_js_1 = require("./lib/handlers/handleWindowSessi
|
|
await electron_1.app.whenReady();
|
|
(0, menu_js_1.setupMenu)();
|
|
const window = await (0, createWindow_js_1.createWindow)();
|
|
+ createTray(window);
|
|
(0, safeRedirects_js_1.safeRedirects)(window);
|
|
(0, handleWindowLifecycleEvents_js_1.handleWindowLifecycleEvents)(window);
|
|
(0, handleWindowSessionEvents_js_1.handleWindowSessionEvents)(window);
|