Compare commits

...

5 Commits
1.1.0 ... 1.2.0

12 changed files with 59 additions and 27 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.0 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,10 +11,10 @@ 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.0.zip source = https://github.com/Mastermindzh/tidal-hifi/archive/1.2.0.zip
source = tidal-hifi.desktop source = tidal-hifi.desktop
sha512sums = b855f6530b945e4b0f7891c04a8b0279cf642d9cfcf180b8ded629a85743899ac431d3de87fcecb605fae82e1df2dc86d0a72c3cc85d426bf8fe08b41630c299 sha512sums = ed6127627400cc8d1a614f3084eaed0ee9109cc4be99ad8865a7cd68c45d9bbd7b20404c394930af005320da5cc2221a8818a7cb48d4cccc73991e88320408e5
sha512sums = fa5fa918ea890baa5f500db3153a6eff3d63966528ffa3349acda3ea02fbecb1ea78a1ba1d23ef7402de2228fc0a483252e0b7e72c73cfb25ed401bedaf856f5 sha512sums = 35f38ac308b871c1822d7f6f760f2fb54c3748cf769822cb0f0dfb90f0f5754ba9316da5e903a0d2e9839de3a43ec76f238f3f2e44021956fa1da19142081349
pkgname = tidal-hifi-git pkgname = tidal-hifi-git

View File

@@ -2,7 +2,7 @@
_pkgname=tidal-hifi _pkgname=tidal-hifi
pkgname="$_pkgname-git" pkgname="$_pkgname-git"
pkgver=1.1.0 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")
@@ -15,8 +15,8 @@ provides=("$_pkgname")
source=("https://github.com/Mastermindzh/tidal-hifi/archive/$pkgver.zip" source=("https://github.com/Mastermindzh/tidal-hifi/archive/$pkgver.zip"
"${_pkgname}.desktop") "${_pkgname}.desktop")
sha512sums=('b855f6530b945e4b0f7891c04a8b0279cf642d9cfcf180b8ded629a85743899ac431d3de87fcecb605fae82e1df2dc86d0a72c3cc85d426bf8fe08b41630c299' sha512sums=('ed6127627400cc8d1a614f3084eaed0ee9109cc4be99ad8865a7cd68c45d9bbd7b20404c394930af005320da5cc2221a8818a7cb48d4cccc73991e88320408e5'
'fa5fa918ea890baa5f500db3153a6eff3d63966528ffa3349acda3ea02fbecb1ea78a1ba1d23ef7402de2228fc0a483252e0b7e72c73cfb25ed401bedaf856f5') '35f38ac308b871c1822d7f6f760f2fb54c3748cf769822cb0f0dfb90f0f5754ba9316da5e903a0d2e9839de3a43ec76f238f3f2e44021956fa1da19142081349')
cdToPkg(){ cdToPkg(){
cd "tidal-hifi-$pkgver" cd "tidal-hifi-$pkgver"
@@ -33,7 +33,7 @@ build() {
cdToPkg cdToPkg
# We are not using the systems Electron as we need castlab's Electron. # We are not using the systems Electron as we need castlab's Electron.
npx electron-builder --linux dir npm run build-arch
} }
package() { package() {

2
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{ {
"name": "tidal-hifi", "name": "tidal-hifi",
"version": "1.1.0", "version": "1.1.1",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {

View File

@@ -1,6 +1,6 @@
{ {
"name": "tidal-hifi", "name": "tidal-hifi",
"version": "1.1.0", "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": {
@@ -9,7 +9,7 @@
"build-deb": "electron-builder --publish=never -c ./build/electron-builder.deb.yml", "build-deb": "electron-builder --publish=never -c ./build/electron-builder.deb.yml",
"build-rpm": "electron-builder --publish=never -c ./build/electron-builder.rpm.yml", "build-rpm": "electron-builder --publish=never -c ./build/electron-builder.rpm.yml",
"build-snap": "electron-builder --publish=never -c ./build/electron-builder.snap.yml", "build-snap": "electron-builder --publish=never -c ./build/electron-builder.snap.yml",
"build-arch": "npm run build-without-release -c ./build/electron-builder.pacman.yml", "build-arch": "electron-builder --publish=never -c ./build/electron-builder.pacman.yml",
"build-wl": "electron-builder --publish=never -c ./build/electron-builder.yml -wl", "build-wl": "electron-builder --publish=never -c ./build/electron-builder.yml -wl",
"build-mac": "electron-builder --publish=never -c ./build/electron-builder.yml -m" "build-mac": "electron-builder --publish=never -c ./build/electron-builder.yml -m"
}, },
@@ -20,6 +20,7 @@
"linux" "linux"
], ],
"author": "Rick van Lieshout <info@rickvanlieshout.com> (http://rickvanlieshout.com)", "author": "Rick van Lieshout <info@rickvanlieshout.com> (http://rickvanlieshout.com)",
"homepage": "https://github.com/Mastermindzh/tidal-hifi",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"electron-store": "^5.1.1", "electron-store": "^5.1.1",

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
}); });