fix lyrics priority and pip

This commit is contained in:
vapormusic 2022-10-13 20:16:28 +07:00
parent 5fd1667e41
commit 9622814ebf
4 changed files with 27 additions and 15 deletions

View file

@ -42,10 +42,11 @@
"format:write": "npx prettier --write \"src/**/*.{js,json,ts,less}\"" "format:write": "npx prettier --write \"src/**/*.{js,json,ts,less}\""
}, },
"dependencies": { "dependencies": {
"@achingbrain/ssdp": "^4.0.1",
"@sentry/electron": "^4.0.3", "@sentry/electron": "^4.0.3",
"@sentry/integrations": "^7.14.2", "@sentry/integrations": "^7.14.2",
"adm-zip": "0.4.10", "adm-zip": "0.4.10",
"airtunes2": "github:ciderapp/node_airtunes2", "airtunes2": "git+https://github.com/ciderapp/node_airtunes2.git",
"castv2-client": "^1.2.0", "castv2-client": "^1.2.0",
"chokidar": "^3.5.3", "chokidar": "^3.5.3",
"discord-auto-rpc": "^1.0.17", "discord-auto-rpc": "^1.0.17",
@ -66,10 +67,13 @@
"music-metadata": "7.12.6", "music-metadata": "7.12.6",
"node-gyp": "^9.2.0", "node-gyp": "^9.2.0",
"node-ssdp": "^4.0.1", "node-ssdp": "^4.0.1",
"node-ssdp-js": "^0.9.6",
"qrcode": "^1.5.1", "qrcode": "^1.5.1",
"request": "^2.88.2", "request": "^2.88.2",
"run-script-os": "^1.1.6", "run-script-os": "^1.1.6",
"simple-ssdp": "^1.0.2",
"source-map-support": "^0.5.21", "source-map-support": "^0.5.21",
"ssdp-js": "^1.0.1",
"ts-md5": "1.2.11", "ts-md5": "1.2.11",
"upnp-mediarenderer-client": "github:vapormusic/node-upnp-mediarenderer-client", "upnp-mediarenderer-client": "github:vapormusic/node-upnp-mediarenderer-client",
"v8-compile-cache": "^2.3.0", "v8-compile-cache": "^2.3.0",

View file

@ -3267,7 +3267,9 @@ const app = new Vue({
this.loadYTLyrics(); this.loadYTLyrics();
} else { } else {
// only load MXM lyrics if AM lyrics failed to load // only load MXM lyrics if AM lyrics failed to load
this.loadAMLyrics(); if (app.cfg.lyrics.enable_mxm) {
this.loadMXM();} else {
this.loadAMLyrics();}
} }
}, },
async loadAMLyrics() { async loadAMLyrics() {
@ -3279,10 +3281,16 @@ const app = new Vue({
this.lyricsMediaItem = response.data?.data[0]?.attributes["ttml"]; this.lyricsMediaItem = response.data?.data[0]?.attributes["ttml"];
this.parseTTML(); this.parseTTML();
} catch (_) { } catch (_) {
this.loadMXM(); if (app.cfg.lyrics.enable_mxm) {
this.loadQQLyrics()
} else {
this.loadMXM();}
} }
} else { } else {
this.loadMXM(); if (app.cfg.lyrics.enable_mxm) {
this.loadQQLyrics() // since mxm is already prioritized, we can just load qq lyrics if am fails
} else {
this.loadMXM();}
} }
}, },
addToLibrary(id) { addToLibrary(id) {
@ -3415,8 +3423,7 @@ const app = new Vue({
} }
if (lrcfile === "") { if (lrcfile === "") {
app.loadQQLyrics(); app.loadAMLyrics()
// app.loadAMLyrics()
} else { } else {
if (richsync == [] || richsync.length == 0) { if (richsync == [] || richsync.length == 0) {
console.log("musixmatch worki"); console.log("musixmatch worki");
@ -3468,20 +3475,17 @@ const app = new Vue({
} }
} catch (e) { } catch (e) {
console.log(e); console.log(e);
app.loadQQLyrics(); app.loadAMLyrics()
// app.loadAMLyrics()
} }
} }
} catch (e) { } catch (e) {
console.error(e); console.error(e);
app.loadQQLyrics(); app.loadAMLyrics()
//app.loadAMLyrics()
} }
}; };
req.onerror = function () { req.onerror = function () {
app.loadQQLyrics();
console.log("error"); console.log("error");
// app.loadAMLyrics(); app.loadAMLyrics();
}; };
req.open("POST", url, true); req.open("POST", url, true);
req.send(); req.send();

View file

@ -2399,7 +2399,7 @@ input[type="range"].web-slider.display--small::-webkit-slider-thumb {
&.mini { &.mini {
width: 20%; width: 20%;
height: 20%; height: 20%;
right: 1vw; right: 2vw;
bottom: 5vh; bottom: 5vh;
} }
} }
@ -2431,6 +2431,10 @@ input[type="range"].web-slider.display--small::-webkit-slider-thumb {
filter: opacity(0.6); filter: opacity(0.6);
transition: 0.2s ease-in-out filter; transition: 0.2s ease-in-out filter;
&.mini {
right: 0px;
}
&:hover { &:hover {
filter: opacity(1); filter: opacity(1);
transition: 0.2s ease-in-out filter; transition: 0.2s ease-in-out filter;

View file

@ -117,13 +117,13 @@
:style="{'opacity': 0.3, 'pointer-events': 'none'}"></button> :style="{'opacity': 0.3, 'pointer-events': 'none'}"></button>
</template> </template>
</div> </div>
<div id="player-pip" <div id="player-pip" :class="{'mini': mvViewMode == 'mini'}"
@click="pip()" @click="pip()"
title="Picture-in-Picture" title="Picture-in-Picture"
v-b-tooltip.hover> v-b-tooltip.hover>
<%- include("../svg/pip.svg") %> <%- include("../svg/pip.svg") %>
</div> </div>
<div id="player-fullscreen" <div id="player-fullscreen" v-if="mvViewMode == 'full'"
@click="fullscreen(!fullscreenState, true)" @click="fullscreen(!fullscreenState, true)"
title="Fullscreen" title="Fullscreen"
v-b-tooltip.hover> v-b-tooltip.hover>