mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-17 19:08:18 -07:00
35 lines
2.0 KiB
JavaScript
35 lines
2.0 KiB
JavaScript
define(["userSettings", "loading", "connectionManager", "apphost", "layoutManager", "focusManager", "homeSections", "emby-itemscontainer"], function(userSettings, loading, connectionManager, appHost, layoutManager, focusManager, homeSections) {
|
|
"use strict";
|
|
|
|
function HomeTab(view, params) {
|
|
this.view = view, this.params = params, this.apiClient = connectionManager.currentApiClient(), this.sectionsContainer = view.querySelector(".sections"), view.querySelector(".sections").addEventListener("settingschange", onHomeScreenSettingsChanged.bind(this))
|
|
}
|
|
|
|
function onHomeScreenSettingsChanged() {
|
|
this.sectionsRendered = !1, this.paused || this.onResume({
|
|
refresh: !0
|
|
})
|
|
}
|
|
return HomeTab.prototype.onResume = function(options) {
|
|
if (this.sectionsRendered) {
|
|
var sectionsContainer = this.sectionsContainer;
|
|
return sectionsContainer ? homeSections.resume(sectionsContainer, options) : Promise.resolve()
|
|
}
|
|
loading.show();
|
|
var view = this.view,
|
|
apiClient = this.apiClient;
|
|
return this.destroyHomeSections(), this.sectionsRendered = !0, apiClient.getCurrentUser().then(function(user) {
|
|
return homeSections.loadSections(view.querySelector(".sections"), apiClient, user, userSettings).then(function() {
|
|
options.autoFocus && focusManager.autoFocus(view), loading.hide()
|
|
})
|
|
})
|
|
}, HomeTab.prototype.onPause = function() {
|
|
var sectionsContainer = this.sectionsContainer;
|
|
sectionsContainer && homeSections.pause(sectionsContainer)
|
|
}, HomeTab.prototype.destroy = function() {
|
|
this.view = null, this.params = null, this.apiClient = null, this.destroyHomeSections(), this.sectionsContainer = null
|
|
}, HomeTab.prototype.destroyHomeSections = function() {
|
|
var sectionsContainer = this.sectionsContainer;
|
|
sectionsContainer && homeSections.destroySections(sectionsContainer)
|
|
}, HomeTab
|
|
}); |