fix possible leak on bg change
This commit is contained in:
parent
f02baae6ce
commit
f193299996
2 changed files with 13 additions and 6 deletions
|
@ -1573,7 +1573,7 @@ const app = new Vue({
|
|||
console.log(truekind,id)
|
||||
|
||||
try {
|
||||
if (parent == "library_songs"){
|
||||
if (parent == "librarysongs"){
|
||||
console.log("asc")
|
||||
let query = app.library.songs.listing.map(item => new MusicKit.MediaItem(item));
|
||||
this.mk.clearQueue().then(function (_) {
|
||||
|
@ -1582,7 +1582,7 @@ const app = new Vue({
|
|||
})
|
||||
} else {
|
||||
this.mk.setQueue({[truekind]: [id]}).then(function (queue) {
|
||||
MusicKit.getInstance().changeToMediaAtIndex(childIndex)
|
||||
app.mk.changeToMediaAtIndex(childIndex)
|
||||
})
|
||||
}
|
||||
} catch (err) {
|
||||
|
@ -1703,7 +1703,7 @@ const app = new Vue({
|
|||
return newurl
|
||||
},
|
||||
getNowPlayingArtworkBG(size = 600) {
|
||||
let interval = setInterval(() => {
|
||||
let bginterval = setInterval(() => {
|
||||
if (!this.mkReady()) {
|
||||
return ""
|
||||
}
|
||||
|
@ -1711,15 +1711,18 @@ const app = new Vue({
|
|||
try {
|
||||
if (this.mk.nowPlayingItem && this.mk.nowPlayingItem.id != this.currentTrackID && document.querySelector('.bg-artwork')) {
|
||||
if (document.querySelector('.bg-artwork')) {
|
||||
clearInterval(interval);
|
||||
clearInterval(bginterval);
|
||||
}
|
||||
this.currentTrackID = this.mk.nowPlayingItem.id;
|
||||
document.querySelector('.bg-artwork').src = "";
|
||||
if (this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"]) {
|
||||
document.querySelector('.bg-artwork').src = this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"].replace('{w}', size).replace('{h}', size);
|
||||
try { clearInterval(bginterval); } catch (err) { console.log(err) }
|
||||
} else {
|
||||
this.setLibraryArtBG()
|
||||
}
|
||||
} else if (this.mk.nowPlayingItem.id == this.currentTrackID){
|
||||
try { clearInterval(bginterval); } catch (err) { console.log(err) }
|
||||
}
|
||||
} catch (e) {
|
||||
this.setLibraryArtBG()
|
||||
|
@ -1738,9 +1741,12 @@ const app = new Vue({
|
|||
document.querySelector('.app-playback-controls .artwork').style.setProperty('--artwork', '');
|
||||
if (this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"]) {
|
||||
document.querySelector('.app-playback-controls .artwork').style.setProperty('--artwork', `url("${decodeURI((this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"])).replace('{w}', size).replace('{h}', size)}")`);
|
||||
try { clearInterval(interval); } catch (err) { console.log(err) }
|
||||
} else {
|
||||
this.setLibraryArt()
|
||||
}
|
||||
} else if (this.mk.nowPlayingItem.id == this.currentTrackID){
|
||||
try { clearInterval(interval); } catch (err) { console.log(err) }
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
|
@ -1857,7 +1863,8 @@ document.addEventListener('musickitloaded', function () {
|
|||
build: '1978.4.1',
|
||||
version: "1.0"
|
||||
},
|
||||
sourceType: 24
|
||||
sourceType: 24,
|
||||
suppressErrorDialog: true
|
||||
});
|
||||
setTimeout(() => {
|
||||
app.init()
|
||||
|
|
|
@ -41,6 +41,6 @@
|
|||
</div>
|
||||
</div>
|
||||
<div v-if="library.songs.downloadState == 3">Library contains no songs.</div>
|
||||
<mediaitem-list-item :item="item" :parent="'library_songs'" :index="index" :show-meta-data="true" :show-library-status="false" v-for="(item, index) in library.songs.displayListing"></mediaitem-list-item>
|
||||
<mediaitem-list-item :item="item" :parent="'librarysongs'" :index="index" :show-meta-data="true" :show-library-status="false" v-for="(item, index) in library.songs.displayListing"></mediaitem-list-item>
|
||||
</div>
|
||||
</template>
|
Loading…
Add table
Add a link
Reference in a new issue