2018-10-23 01:05:09 +03:00
|
|
|
define(["browser", "appSettings", "events"], function(browser, appSettings, events) {
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
function setLayout(instance, layout, selectedLayout) {
|
|
|
|
layout === selectedLayout ? (instance[layout] = !0, document.documentElement.classList.add("layout-" + layout)) : (instance[layout] = !1, document.documentElement.classList.remove("layout-" + layout))
|
|
|
|
}
|
|
|
|
|
|
|
|
function LayoutManager() {}
|
|
|
|
return LayoutManager.prototype.setLayout = function(layout, save) {
|
|
|
|
layout && "auto" !== layout ? (setLayout(this, "mobile", layout), setLayout(this, "tv", layout), setLayout(this, "desktop", layout), !1 !== save && appSettings.set("layout", layout)) : (this.autoLayout(), !1 !== save && appSettings.set("layout", "")), events.trigger(this, "modechange")
|
|
|
|
}, LayoutManager.prototype.getSavedLayout = function(layout) {
|
|
|
|
return appSettings.get("layout")
|
|
|
|
}, LayoutManager.prototype.autoLayout = function() {
|
|
|
|
browser.mobile ? this.setLayout("mobile", !1) : browser.tv || browser.xboxOne ? this.setLayout("tv", !1) : this.setLayout(this.defaultLayout || "tv", !1)
|
|
|
|
}, LayoutManager.prototype.init = function() {
|
|
|
|
var saved = this.getSavedLayout();
|
|
|
|
saved ? this.setLayout(saved, !1) : this.autoLayout()
|
|
|
|
}, new LayoutManager
|
|
|
|
});
|