added the option to disable the system tray icon and fixed the settings menu

This commit is contained in:
Rick van Lieshout 2020-10-07 20:10:31 +02:00
parent c222113cf1
commit e2ea4d13c4
11 changed files with 51 additions and 20 deletions

View File

@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## 1.2.0
- Added the ability to disable the tray icon
## 1.1.1
Bugfixes:
- Arch AUR install failed before, it is fixed now by using the included build scripts
## 1.1.0 ## 1.1.0
- updated to electron 8.0.0 - updated to electron 8.0.0

View File

@ -95,7 +95,12 @@ Whilst there are a handful of projects attempting to run Tidal on Electron they
Sometimes it's just easier to start over, cover my own needs and then making it available to the public :) Sometimes it's just easier to start over, cover my own needs and then making it available to the public :)
## Special thanks to.. ## Special thanks to...
- [Castlabs](https://castlabs.com/) - [Castlabs](https://castlabs.com/)
For maintaining Electron with Widevine CDM installation, Verified Media Path (VMP), and persistent licenses (StorageID) For maintaining Electron with Widevine CDM installation, Verified Media Path (VMP), and persistent licenses (StorageID)
## Buy me a coffee? Please don't
Instead spend some money on a charity I care for: [kwf.nl](secure.kwf.nl/donation)
Inspired by [haydenjames' issue](https://github.com/Mastermindzh/tidal-hifi/issues/27#issuecomment-704198429)

View File

@ -1,6 +1,6 @@
pkgbase = tidal-hifi-git pkgbase = tidal-hifi-git
pkgdesc = The web version of listen.tidal.com running in electron with hifi support thanks to widevine. pkgdesc = The web version of listen.tidal.com running in electron with hifi support thanks to widevine.
pkgver = 1.1.1 pkgver = 1.2.0
pkgrel = 1 pkgrel = 1
url = https://github.com/Mastermindzh/tidal-hifi url = https://github.com/Mastermindzh/tidal-hifi
arch = x86_64 arch = x86_64
@ -11,7 +11,7 @@ pkgbase = tidal-hifi-git
depends = nss depends = nss
depends = gtk3 depends = gtk3
provides = tidal-hifi provides = tidal-hifi
source = https://github.com/Mastermindzh/tidal-hifi/archive/1.1.1.zip source = https://github.com/Mastermindzh/tidal-hifi/archive/1.2.0.zip
source = tidal-hifi.desktop source = tidal-hifi.desktop
sha512sums = ed6127627400cc8d1a614f3084eaed0ee9109cc4be99ad8865a7cd68c45d9bbd7b20404c394930af005320da5cc2221a8818a7cb48d4cccc73991e88320408e5 sha512sums = ed6127627400cc8d1a614f3084eaed0ee9109cc4be99ad8865a7cd68c45d9bbd7b20404c394930af005320da5cc2221a8818a7cb48d4cccc73991e88320408e5
sha512sums = 35f38ac308b871c1822d7f6f760f2fb54c3748cf769822cb0f0dfb90f0f5754ba9316da5e903a0d2e9839de3a43ec76f238f3f2e44021956fa1da19142081349 sha512sums = 35f38ac308b871c1822d7f6f760f2fb54c3748cf769822cb0f0dfb90f0f5754ba9316da5e903a0d2e9839de3a43ec76f238f3f2e44021956fa1da19142081349

View File

@ -2,7 +2,7 @@
_pkgname=tidal-hifi _pkgname=tidal-hifi
pkgname="$_pkgname-git" pkgname="$_pkgname-git"
pkgver=1.1.1 pkgver=1.2.0
pkgrel=1 pkgrel=1
pkgdesc="The web version of listen.tidal.com running in electron with hifi support thanks to widevine." pkgdesc="The web version of listen.tidal.com running in electron with hifi support thanks to widevine."
arch=("x86_64") arch=("x86_64")

View File

@ -1,6 +1,6 @@
{ {
"name": "tidal-hifi", "name": "tidal-hifi",
"version": "1.1.1", "version": "1.2.0",
"description": "Tidal on Electron with widevine(hifi) support", "description": "Tidal on Electron with widevine(hifi) support",
"main": "src/main.js", "main": "src/main.js",
"scripts": { "scripts": {

View File

@ -18,6 +18,7 @@ const settings = {
port: "apiSettings.port", port: "apiSettings.port",
}, },
mpris: "mpris", mpris: "mpris",
trayIcon: "trayIcon",
windowBounds: { windowBounds: {
root: "windowBounds", root: "windowBounds",
width: "windowBounds.width", width: "windowBounds.width",

View File

@ -83,8 +83,7 @@ app.on("ready", () => {
addMenu(); addMenu();
createSettingsWindow(); createSettingsWindow();
addGlobalShortcuts(); addGlobalShortcuts();
addTray({ icon }); store.get(settings.trayIcon) && addTray({ icon }) && refreshTray();
refreshTray();
store.get(settings.api) && expressModule.run(mainWindow); store.get(settings.api) && expressModule.run(mainWindow);
}); });

View File

@ -17,7 +17,8 @@ function refreshSettings() {
api.checked = store.get(settings.api); api.checked = store.get(settings.api);
port.value = store.get(settings.apiSettings.port); port.value = store.get(settings.apiSettings.port);
menuBar.checked = store.get(settings.menuBar); menuBar.checked = store.get(settings.menuBar);
mpris.checked = store.get(settings.mpris); trayIcon.checked = store.get(settings.trayIcon);
// mpris.checked = store.get(settings.mpris);
} }
/** /**
@ -76,7 +77,8 @@ window.addEventListener("DOMContentLoaded", () => {
api = get("apiCheckbox"); api = get("apiCheckbox");
port = get("port"); port = get("port");
menuBar = get("menuBar"); menuBar = get("menuBar");
mpris = get("mprisCheckbox"); trayIcon = get("trayIcon");
// mpris = get("mprisCheckbox");
refreshSettings(); refreshSettings();
@ -85,5 +87,6 @@ window.addEventListener("DOMContentLoaded", () => {
addInputListener(api, settings.api); addInputListener(api, settings.api);
addInputListener(port, settings.apiSettings.port); addInputListener(port, settings.apiSettings.port);
addInputListener(menuBar, settings.menuBar); addInputListener(menuBar, settings.menuBar);
addInputListener(mpris, settings.mpris); addInputListener(trayIcon, settings.trayIcon);
// addInputListener(mpris, settings.mpris);
}); });

View File

@ -68,15 +68,25 @@
</label> </label>
</div> </div>
</div> </div>
<div class="section">
<h3>System</h3>
<div class="option">
<h4>Tray icon</h4>
<p>
Show Tidal-hifi's tray icon<br />
</p>
<label class="switch">
<input id="trayIcon" type="checkbox">
<span class="slider round"></span>
</label>
</div>
</div>
</section> </section>
<section id="api" class="tab-panel"> <section id="api" class="tab-panel">
<div class="section"> <div class="section">
<h3>Api</h3> <h3>Api</h3>
<p style="margin-bottom: 15px;"> <p style="margin-bottom: 15px;">
Tidal-hifi has a web api built in to allow users to get current song information. You can optionally enable playback control as well. Tidal-hifi has a web api built in to allow users to get current song information. You can optionally enable playback control as well.
<br />
<br />
<small>* api changes require a restart to update</small>
</p> </p>
<div class="option"> <div class="option">
@ -104,15 +114,12 @@
</label> </label>
</div> </div>
</div> </div>
<button onClick="restart()">Restart Tidal-hifi</button>
</section> </section>
<section id="integrations" class="tab-panel"> <section id="integrations" class="tab-panel">
<div class="section"> <div class="section">
<h3>integrations</h3> <h3>integrations</h3>
<p style="margin-bottom: 15px;"> <p style="margin-bottom: 15px;">
Tidal-hifi is extensible trough the use of integrations. You can enable or disable integrations here Tidal-hifi is extensible trough the use of integrations. You can enable or disable integrations here
<br />
* not all integrations require restarting but some do, your best bet is to restart :)
</p> </p>
<!-- disabled until the 403 with mpris-service/dbus is fixed --> <!-- disabled until the 403 with mpris-service/dbus is fixed -->
<!-- <div class="option"> <!-- <div class="option">
@ -125,7 +132,6 @@
<span class="slider round"></span> <span class="slider round"></span>
</label> </label>
</div> --> </div> -->
<button onClick="restart()">Restart Tidal-hifi</button>
</div> </div>
</section> </section>
<section id="about" class="tab-panel"> <section id="about" class="tab-panel">
@ -138,6 +144,9 @@
</div> </div>
</section> </section>
<small>Some settings require a restart of Tidal-hifi. To do so click the button below:</small>
<button onClick="restart()" style ="width: 100%">Restart Tidal-hifi</button>
</div> </div>
</div> </div>
</div> </div>

View File

@ -14,6 +14,7 @@ const store = new Store({
apiSettings: { apiSettings: {
port: 47836, port: 47836,
}, },
trayIcon: true,
mpris: false, mpris: false,
windowBounds: { width: 800, height: 600 }, windowBounds: { width: 800, height: 600 },
}, },

View File

@ -8,6 +8,9 @@ trayModule.addTray = function(options = { icon: "" }) {
}; };
trayModule.refreshTray = function () { trayModule.refreshTray = function () {
if (!tray) {
trayModule.addTray();
}
tray.on("click", function (e) { tray.on("click", function (e) {
// do nothing on click // do nothing on click
}); });