中控页面去掉安装到桌面按钮,改由浏览器地址栏安装。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-10-05 19:04:54 +08:00
parent 7fd1e7aefd
commit 2dcb191c2f
3 changed files with 8 additions and 132 deletions
+1 -39
View File
@@ -169,16 +169,11 @@ a:hover { color: #7dd3fc; }
.nav-spot--flat .nav-spot-last,
.nav-spot--flat .nav-spot-chg,
.nav-spot--flat .nav-spot-pct { color: #9aa3bf; }
.topbar-actions {
.topbar-logout {
position: fixed;
top: 16px;
right: 22px;
z-index: 20;
display: flex;
align-items: center;
gap: 10px;
}
.topbar-logout {
color: var(--muted);
font-size: 0.82rem;
letter-spacing: 0.04em;
@@ -186,39 +181,6 @@ a:hover { color: #7dd3fc; }
.topbar-logout:hover {
color: #e8f1ff;
}
.topbar-install {
appearance: none;
border: 1px solid #304164;
background: #151a2a;
color: #dbe4ff;
font-size: 0.78rem;
border-radius: 8px;
padding: 4px 10px;
cursor: pointer;
font-family: inherit;
}
.topbar-install:hover {
color: #ffffff;
border-color: #3d5278;
}
.topbar-install-hint {
position: fixed;
top: 46px;
right: 22px;
z-index: 20;
margin: 0;
max-width: min(360px, calc(100vw - 40px));
color: var(--muted);
font-size: 0.75rem;
line-height: 1.4;
text-align: right;
}
@media (display-mode: standalone) {
.topbar-install,
.topbar-install-hint {
display: none !important;
}
}
@media (max-width: 1100px) {
.topbar-row {
grid-template-columns: 1fr;
+2 -84
View File
@@ -1,89 +1,7 @@
(function (global) {
var deferredPrompt = null;
function isStandalone() {
return (
(global.matchMedia && global.matchMedia("(display-mode: standalone)").matches) ||
global.navigator.standalone === true
);
}
function btn() {
return document.getElementById("hub-install-btn");
}
function setHint(msg) {
var el = document.getElementById("hub-install-hint");
if (el) el.textContent = msg || "";
}
function showInstall() {
var el = btn();
if (!el || isStandalone()) return;
el.hidden = false;
}
function hideInstall() {
var el = btn();
if (el) el.hidden = true;
setHint("");
}
function downloadShortcut() {
var origin = global.location.origin;
var body = "[InternetShortcut]\r\nURL=" + origin + "/\r\n";
var blob = new Blob([body], { type: "application/internet-shortcut" });
var a = document.createElement("a");
a.href = URL.createObjectURL(blob);
a.download = "期权中控.url";
document.body.appendChild(a);
a.click();
a.remove();
setTimeout(function () {
URL.revokeObjectURL(a.href);
}, 1000);
}
async function onInstallClick() {
setHint("");
if (deferredPrompt) {
deferredPrompt.prompt();
try {
var choice = await deferredPrompt.userChoice;
deferredPrompt = null;
if (choice && choice.outcome === "accepted") {
hideInstall();
return;
}
} catch (e) {
deferredPrompt = null;
}
}
downloadShortcut();
setHint("已下载快捷方式,拖到桌面即可。Chrome / Edge 也可在地址栏右侧点「安装」。");
}
function boot() {
if (isStandalone()) {
hideInstall();
return;
}
showInstall();
global.addEventListener("beforeinstallprompt", function (ev) {
ev.preventDefault();
deferredPrompt = ev;
showInstall();
});
global.addEventListener("appinstalled", function () {
deferredPrompt = null;
hideInstall();
});
var el = btn();
if (el) el.addEventListener("click", onInstallClick);
if ("serviceWorker" in navigator) {
navigator.serviceWorker.register("/sw.js", { scope: "/" }).catch(function () {});
}
if (!("serviceWorker" in navigator)) return;
navigator.serviceWorker.register("/sw.js", { scope: "/" }).catch(function () {});
}
global.HubPwa = { boot: boot };
})(window);