Update Shell

This commit is contained in:
Bruce
2025-11-21 12:55:08 +08:00
parent 1674f2c35b
commit ae3771bfdb
33 changed files with 972 additions and 78 deletions
+47
View File
@@ -9,6 +9,7 @@
}
var supportPageList = [
"splash",
"loading",
"select",
"preinstall",
"installing",
@@ -22,6 +23,8 @@
"installfailed"
];
var splashBackColor = "";
function setPage(swPageLabel, bIsMulti) {
var page = getPage();
swPageLabel = ("" + (swPageLabel || ""));
@@ -32,6 +35,13 @@
if (page.classList.contains(supportPageList[i])) page.classList.remove(supportPageList[i]);
}
}
if (Bridge.NString.equals(swPageLabel, "splash")) {
if (splashBackColor) {
page.style.backgroundColor = splashBackColor;
}
} else {
page.style.backgroundColor = "";
}
if (page.classList.contains("multiple")) page.classList.remove("multiple");
for (var j = 0; j < supportMulPageList.length; j++) {
if (Bridge.NString.equals(swPageLabel, supportMulPageList[j]) && bIsMulti) {
@@ -60,6 +70,40 @@
setPage(getPageLabel(), bIsMulti);
}
function getSplashPage() {
var page = document.querySelector(".page.splash");
if (!page) return null;
var ret = {};
Object.defineProperty(ret, "background", {
get: function() {
var page = document.querySelector(".page.splash");
return page.style.backgroundColor || splashBackColor;
},
set: function(value) {
splashBackColor = value;
var page = document.querySelector(".page.splash");
if (page) page.style.backgroundColor = value;
}
});
Object.defineProperty(ret, "imagesrc", {
get: function() {
var splashimg = page.querySelector("img.splash");
return splashimg.src;
},
set: function(value) {
var splashimg = page.querySelector("img.splash");
splashimg.src = value;
}
});
Object.defineProperty(ret, "content", {
get: function() {
var content = page.querySelector(".content.splash");
return content;
},
});
return ret;
}
module.exports = {
Page: {}
};
@@ -71,4 +115,7 @@
get: function() { return isMultiPage(); },
set: function(bIsMulti) { setPage(getPageLabel(), bIsMulti); }
});
Object.defineProperty(Page, "splash", {
get: function() { return getSplashPage(); }
});
})(this);