summarylogtreecommitdiffstats
path: root/15-systray-icon.patch
blob: 49d5341325a9aefca77cab8c030d2a9addae5e06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
diff --git a/build/main.js b/build/main.js
index a6317ab..eda605f 100644
--- a/build/main.js
+++ b/build/main.js
@@ -104,23 +104,16 @@
       return !app.isPackaged;
     }
     function getAppIcon(app) {
-      let appIcon = "";
-      switch (getPlatformName()) {
-        case PLATFORM.WINDOWS:
-          appIcon = "win/systray.png";
-          break;
-        case PLATFORM.DARWIN:
-          appIcon = "mac/trayTemplate.png";
-          break;
-        case PLATFORM.LINUX:
-          appIcon = "linux/systray.png";
-      }
-      return external_path_default().join(
-        isDev(app)
-          ? external_path_default().join(app.getAppPath(), "resources")
-          : process.resourcesPath,
-        appIcon,
-      );
+      const override = process.env.DEEZER_TRAY_ICON;
+      if (override && override.length) return override;
+      let scale = 1;
+      try {
+        const { screen } = require("electron");
+        const disp = screen.getPrimaryDisplay && screen.getPrimaryDisplay();
+        scale = (disp && disp.scaleFactor) || 1;
+      } catch (_) {}
+      const file = scale >= 2 ? "systray-48.png" : "systray-24.png";
+      return external_path_default().join(app.getAppPath(), "resources", "linux", file);
     }
     function getDzTld() {
       return process.env.DZ_DEV_ENV ? "deezerdev.com" : "deezer.com";