diff --git a/src/main/base/browserwindow.ts b/src/main/base/browserwindow.ts index 5939e870..04faf2bc 100644 --- a/src/main/base/browserwindow.ts +++ b/src/main/base/browserwindow.ts @@ -150,6 +150,39 @@ export class BrowserWindow { res.render("main", this.EnvironmentVariables); }); + app.get("/api/playback/:action", (req, res)=>{ + const action = req.params.action; + switch(action) { + case "playpause": + BrowserWindow.win.webContents.executeJavaScript("wsapi.togglePlayPause()") + res.send("Play/Pause toggle") + break; + case "play": + BrowserWindow.win.webContents.executeJavaScript("MusicKit.getInstance().play()") + res.send("Playing") + break; + case "pause": + BrowserWindow.win.webContents.executeJavaScript("MusicKit.getInstance().pause()") + res.send("Paused") + break; + case "stop": + BrowserWindow.win.webContents.executeJavaScript("MusicKit.getInstance().stop()") + res.send("Stopped") + break; + case "next": + BrowserWindow.win.webContents.executeJavaScript("MusicKit.getInstance().skipToNextItem()") + res.send("Next") + break; + case "previous": + BrowserWindow.win.webContents.executeJavaScript("MusicKit.getInstance().skipToPreviousItem()") + res.send("Previous") + break; + default: { + res.send("Invalid action") + } + } + }) + app.get("/themes/:theme", (req, res) => { const theme = req.params.theme.toLowerCase(); const themePath = join(utils.getPath('srcPath'), "./renderer/themes/", theme); diff --git a/src/renderer/assets/AppChromeBtn-Open.svg b/src/renderer/assets/AppChromeBtn-Open.svg new file mode 100644 index 00000000..fb24b33d --- /dev/null +++ b/src/renderer/assets/AppChromeBtn-Open.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/renderer/assets/banner.png b/src/renderer/assets/banner.png index 1edba696..1a1b099a 100644 Binary files a/src/renderer/assets/banner.png and b/src/renderer/assets/banner.png differ diff --git a/src/renderer/assets/banner2.png b/src/renderer/assets/banner2.png new file mode 100644 index 00000000..1edba696 Binary files /dev/null and b/src/renderer/assets/banner2.png differ diff --git a/src/renderer/assets/twitter.svg b/src/renderer/assets/twitter.svg new file mode 100644 index 00000000..1bbb2f50 --- /dev/null +++ b/src/renderer/assets/twitter.svg @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/renderer/js/WSAPI_Interop.js b/src/renderer/js/WSAPI_Interop.js index e86327be..525ad47e 100644 --- a/src/renderer/js/WSAPI_Interop.js +++ b/src/renderer/js/WSAPI_Interop.js @@ -96,6 +96,9 @@ const wsapi = { toggleShuffle() { MusicKit.getInstance().shuffleMode = MusicKit.getInstance().shuffleMode === 0 ? 1 : 0 }, + togglePlayPause() { + app.mk.isPlaying ? app.mk.pause() : app.mk.play() + }, toggleRepeat() { if(MusicKit.getInstance().repeatMode == 0) { MusicKit.getInstance().repeatMode = 1 diff --git a/src/renderer/style.less b/src/renderer/style.less index 32c31859..560b21e2 100644 --- a/src/renderer/style.less +++ b/src/renderer/style.less @@ -998,7 +998,7 @@ input[type=range].web-slider::-webkit-slider-runnable-track { } .app-chrome .app-chrome-item > .app-mainmenu { - width: 116px; + width: 110px; font-size: 13px; background: url("./assets/AppChromeBtn.svg"); background-size: contain; @@ -1007,6 +1007,7 @@ input[type=range].web-slider::-webkit-slider-runnable-track { height: 70%; margin-right: 16px; margin-left: 16px; + margin-top: 1.5px; border: 0px; border-radius: 6px; @@ -1017,6 +1018,10 @@ input[type=range].web-slider::-webkit-slider-runnable-track { &:active, &.active { background-color: var(--selected-click); } + + &.active { + background-image: url("./assets/AppChromeBtn-Open.svg"); + } } .app-chrome .app-chrome-item > .window-controls { diff --git a/src/renderer/themes/dark.less b/src/renderer/themes/dark.less new file mode 100644 index 00000000..5a8b69aa --- /dev/null +++ b/src/renderer/themes/dark.less @@ -0,0 +1,3 @@ +#app { + --color1: #111; +} \ No newline at end of file diff --git a/src/renderer/views/main.ejs b/src/renderer/views/main.ejs index 4973ed00..cf6adea2 100644 --- a/src/renderer/views/main.ejs +++ b/src/renderer/views/main.ejs @@ -172,7 +172,7 @@ -
+
Open Collective

{{$root.getLz('term.socials')}}

+
diff --git a/src/renderer/views/pages/settings.ejs b/src/renderer/views/pages/settings.ejs index 8c5bd28f..57ed1d90 100644 --- a/src/renderer/views/pages/settings.ejs +++ b/src/renderer/views/pages/settings.ejs @@ -104,6 +104,7 @@