mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
remove page from widget
This commit is contained in:
parent
0f51a375ce
commit
515f4eff93
2 changed files with 58 additions and 87 deletions
|
@ -2505,10 +2505,9 @@ function pageIdOn(eventName, id, fn) {
|
||||||
|
|
||||||
pageClassOn('pagecreate', "page", function () {
|
pageClassOn('pagecreate', "page", function () {
|
||||||
|
|
||||||
var jPage = $(this);
|
|
||||||
var page = this;
|
var page = this;
|
||||||
|
|
||||||
var current = jPage.data('theme');
|
var current = page.getAttribute('data-theme');
|
||||||
|
|
||||||
if (!current) {
|
if (!current) {
|
||||||
|
|
||||||
|
@ -2520,11 +2519,7 @@ pageClassOn('pagecreate', "page", function () {
|
||||||
newTheme = 'a';
|
newTheme = 'a';
|
||||||
}
|
}
|
||||||
|
|
||||||
current = jPage.page("option", "theme");
|
page.setAttribute("data-theme", newTheme);
|
||||||
|
|
||||||
if (current && current != newTheme) {
|
|
||||||
jPage.page("option", "theme", newTheme);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
|
@ -667,81 +667,6 @@
|
||||||
$(event.target).enhanceWithin();
|
$(event.target).enhanceWithin();
|
||||||
});
|
});
|
||||||
|
|
||||||
$.widget("mobile.page", {
|
|
||||||
options: {
|
|
||||||
theme: "a",
|
|
||||||
domCache: false,
|
|
||||||
|
|
||||||
// Deprecated in 1.4 remove in 1.5
|
|
||||||
contentTheme: null,
|
|
||||||
enhanced: false
|
|
||||||
},
|
|
||||||
|
|
||||||
// DEPRECATED for > 1.4
|
|
||||||
// TODO remove at 1.5
|
|
||||||
_createWidget: function () {
|
|
||||||
|
|
||||||
$.Widget.prototype._createWidget.apply(this, arguments);
|
|
||||||
this._trigger("init");
|
|
||||||
},
|
|
||||||
|
|
||||||
_create: function () {
|
|
||||||
|
|
||||||
if (!this.options.enhanced) {
|
|
||||||
this._enhance();
|
|
||||||
}
|
|
||||||
|
|
||||||
this.element.enhanceWithin();
|
|
||||||
},
|
|
||||||
|
|
||||||
_enhance: function () {
|
|
||||||
var attrPrefix = "data-",
|
|
||||||
self = this;
|
|
||||||
|
|
||||||
var element = this.element[0];
|
|
||||||
|
|
||||||
if (this.options.role) {
|
|
||||||
element.setAttribute("data-role", this.options.role);
|
|
||||||
}
|
|
||||||
|
|
||||||
element.setAttribute("tabindex", "0");
|
|
||||||
element.classList.add("ui-page");
|
|
||||||
element.classList.add("ui-page-theme-" + this.options.theme);
|
|
||||||
|
|
||||||
var contents = element.querySelectorAll("div[data-role='content']");
|
|
||||||
|
|
||||||
for (var i = 0, length = contents.length; i < length; i++) {
|
|
||||||
var content = contents[i];
|
|
||||||
var theme = content.getAttribute(attrPrefix + "theme") || undefined;
|
|
||||||
self.options.contentTheme = theme || self.options.contentTheme || (self.options.dialog && self.options.theme) || (self.element.data("role") === "dialog" && self.options.theme);
|
|
||||||
content.classList.add("ui-content");
|
|
||||||
if (self.options.contentTheme) {
|
|
||||||
content.classList.add("ui-body-" + (self.options.contentTheme));
|
|
||||||
}
|
|
||||||
// Add ARIA role
|
|
||||||
content.setAttribute("role", "main");
|
|
||||||
content.classList.add("ui-content");
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
_setOptions: function (o) {
|
|
||||||
|
|
||||||
var elem = this.element[0];
|
|
||||||
if (o.theme !== undefined) {
|
|
||||||
elem.classList.remove("ui-page-theme-" + this.options.theme);
|
|
||||||
elem.classList.add("ui-page-theme-" + o.theme);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (o.contentTheme !== undefined) {
|
|
||||||
var elems = elem.querySelectorAll("*[data-" + "" + "='content']");
|
|
||||||
for (var i = 0, length = elems.length; i < length; i++) {
|
|
||||||
var el = elems[i];
|
|
||||||
el.classList.remove("ui-body-" + this.options.contentTheme);
|
|
||||||
el.classList.add("ui-body-" + o.contentTheme);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
|
||||||
|
|
||||||
|
@ -1519,6 +1444,60 @@
|
||||||
|
|
||||||
(function ($, undefined) {
|
(function ($, undefined) {
|
||||||
|
|
||||||
|
function jqmPage(pageElem) {
|
||||||
|
|
||||||
|
var self = this;
|
||||||
|
if (pageElem.hasPage) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
pageElem.hasPage = true;
|
||||||
|
|
||||||
|
pageElem.dispatchEvent(new CustomEvent("pagecreate", {
|
||||||
|
bubbles: true
|
||||||
|
}));
|
||||||
|
|
||||||
|
self.element = $(pageElem);
|
||||||
|
|
||||||
|
self.options = {
|
||||||
|
theme: pageElem.getAttribute('data-theme') || 'a'
|
||||||
|
};
|
||||||
|
|
||||||
|
self._enhance = function () {
|
||||||
|
var attrPrefix = "data-";
|
||||||
|
|
||||||
|
var element = self.element[0];
|
||||||
|
|
||||||
|
element.setAttribute("data-role", 'page');
|
||||||
|
|
||||||
|
element.setAttribute("tabindex", "0");
|
||||||
|
element.classList.add("ui-page");
|
||||||
|
element.classList.add("ui-page-theme-" + self.options.theme);
|
||||||
|
|
||||||
|
var contents = element.querySelectorAll("div[data-role='content']");
|
||||||
|
|
||||||
|
for (var i = 0, length = contents.length; i < length; i++) {
|
||||||
|
var content = contents[i];
|
||||||
|
var theme = content.getAttribute(attrPrefix + "theme") || undefined;
|
||||||
|
self.options.contentTheme = theme || self.options.contentTheme || (self.options.dialog && self.options.theme) || (self.element.data("role") === "dialog" && self.options.theme);
|
||||||
|
content.classList.add("ui-content");
|
||||||
|
if (self.options.contentTheme) {
|
||||||
|
content.classList.add("ui-body-" + (self.options.contentTheme));
|
||||||
|
}
|
||||||
|
// Add ARIA role
|
||||||
|
content.setAttribute("role", "main");
|
||||||
|
content.classList.add("ui-content");
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
self._enhance();
|
||||||
|
self.element.enhanceWithin();
|
||||||
|
|
||||||
|
pageElem.dispatchEvent(new CustomEvent("pageinit", {
|
||||||
|
bubbles: true
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
var pageCache = {};
|
var pageCache = {};
|
||||||
|
|
||||||
function pageContainer(containerElem) {
|
function pageContainer(containerElem) {
|
||||||
|
@ -1605,9 +1584,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
self._enhance = function (content, role) {
|
self._enhance = function (content, role) {
|
||||||
// TODO consider supporting a custom callback, and passing in
|
new jqmPage(content[0]);
|
||||||
// the settings which includes the role
|
|
||||||
return content.page({ role: role });
|
|
||||||
};
|
};
|
||||||
|
|
||||||
self._include = function (page, jPage, settings) {
|
self._include = function (page, jPage, settings) {
|
||||||
|
@ -2005,8 +1982,7 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// We need to make sure the page we are given has already been enhanced.
|
new jqmPage(toPage[0]);
|
||||||
toPage.page({ role: settings.role });
|
|
||||||
|
|
||||||
// If the changePage request was sent from a hashChange event, check to
|
// If the changePage request was sent from a hashChange event, check to
|
||||||
// see if the page is already within the urlHistory stack. If so, we'll
|
// see if the page is already within the urlHistory stack. If so, we'll
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue