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)
|
console.log(truekind,id)
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if (parent == "library_songs"){
|
if (parent == "librarysongs"){
|
||||||
console.log("asc")
|
console.log("asc")
|
||||||
let query = app.library.songs.listing.map(item => new MusicKit.MediaItem(item));
|
let query = app.library.songs.listing.map(item => new MusicKit.MediaItem(item));
|
||||||
this.mk.clearQueue().then(function (_) {
|
this.mk.clearQueue().then(function (_) {
|
||||||
|
@ -1582,7 +1582,7 @@ const app = new Vue({
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.mk.setQueue({[truekind]: [id]}).then(function (queue) {
|
this.mk.setQueue({[truekind]: [id]}).then(function (queue) {
|
||||||
MusicKit.getInstance().changeToMediaAtIndex(childIndex)
|
app.mk.changeToMediaAtIndex(childIndex)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
@ -1703,7 +1703,7 @@ const app = new Vue({
|
||||||
return newurl
|
return newurl
|
||||||
},
|
},
|
||||||
getNowPlayingArtworkBG(size = 600) {
|
getNowPlayingArtworkBG(size = 600) {
|
||||||
let interval = setInterval(() => {
|
let bginterval = setInterval(() => {
|
||||||
if (!this.mkReady()) {
|
if (!this.mkReady()) {
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
@ -1711,15 +1711,18 @@ const app = new Vue({
|
||||||
try {
|
try {
|
||||||
if (this.mk.nowPlayingItem && this.mk.nowPlayingItem.id != this.currentTrackID && document.querySelector('.bg-artwork')) {
|
if (this.mk.nowPlayingItem && this.mk.nowPlayingItem.id != this.currentTrackID && document.querySelector('.bg-artwork')) {
|
||||||
if (document.querySelector('.bg-artwork')) {
|
if (document.querySelector('.bg-artwork')) {
|
||||||
clearInterval(interval);
|
clearInterval(bginterval);
|
||||||
}
|
}
|
||||||
this.currentTrackID = this.mk.nowPlayingItem.id;
|
this.currentTrackID = this.mk.nowPlayingItem.id;
|
||||||
document.querySelector('.bg-artwork').src = "";
|
document.querySelector('.bg-artwork').src = "";
|
||||||
if (this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"]) {
|
if (this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"]) {
|
||||||
document.querySelector('.bg-artwork').src = this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"].replace('{w}', size).replace('{h}', size);
|
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 {
|
} else {
|
||||||
this.setLibraryArtBG()
|
this.setLibraryArtBG()
|
||||||
}
|
}
|
||||||
|
} else if (this.mk.nowPlayingItem.id == this.currentTrackID){
|
||||||
|
try { clearInterval(bginterval); } catch (err) { console.log(err) }
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.setLibraryArtBG()
|
this.setLibraryArtBG()
|
||||||
|
@ -1738,9 +1741,12 @@ const app = new Vue({
|
||||||
document.querySelector('.app-playback-controls .artwork').style.setProperty('--artwork', '');
|
document.querySelector('.app-playback-controls .artwork').style.setProperty('--artwork', '');
|
||||||
if (this.mk["nowPlayingItem"]["attributes"]["artwork"]["url"]) {
|
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)}")`);
|
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 {
|
} else {
|
||||||
this.setLibraryArt()
|
this.setLibraryArt()
|
||||||
}
|
}
|
||||||
|
} else if (this.mk.nowPlayingItem.id == this.currentTrackID){
|
||||||
|
try { clearInterval(interval); } catch (err) { console.log(err) }
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e);
|
console.log(e);
|
||||||
|
@ -1857,7 +1863,8 @@ document.addEventListener('musickitloaded', function () {
|
||||||
build: '1978.4.1',
|
build: '1978.4.1',
|
||||||
version: "1.0"
|
version: "1.0"
|
||||||
},
|
},
|
||||||
sourceType: 24
|
sourceType: 24,
|
||||||
|
suppressErrorDialog: true
|
||||||
});
|
});
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
app.init()
|
app.init()
|
||||||
|
|
|
@ -41,6 +41,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="library.songs.downloadState == 3">Library contains no songs.</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>
|
</div>
|
||||||
</template>
|
</template>
|
Loading…
Add table
Add a link
Reference in a new issue