mini player + dark glass: eight shapes run by the hidden main as the one brain, dissolving covers and accents, drag from anywhere, and the space between the panes turned to real acrylic - with the webview flags that keep rest frames honest

This commit is contained in:
KeelrLeek committed 2026-08-26 07:56:00 -05:00
1 parent 9b84b30aef
commit dc7ea16b22
33 files changed
+2432 -5

No files matched your search

+19
View File
@@ -36,6 +36,9 @@
restoreSession,
} from "./lib/state.svelte.js";
import { floatScroll } from "./lib/scrollbar.js";
import { initMiniBridge } from "./lib/miniBridge.svelte.js";
import { applyGlass } from "./lib/glass.js";
import { getSettings } from "./lib/api.js";
const views = {
home: Home,
@@ -97,6 +100,14 @@
]);
initEvents();
// The mini player's channel to this window — this window stays the one
// brain while the mini is up (see miniBridge.svelte.js).
initMiniBridge();
// Dark-glass mode is persisted in config; the window boots solid and
// glasses up as soon as the setting arrives (no-op when off).
void getSettings()
.then((s) => s?.glass_mode && applyGlass(true))
.catch(() => {});
autoConnect();
refreshLibrary();
refreshPlaylists();
@@ -208,6 +219,14 @@
transition: none;
}
/* Dark-glass mode: the CANVAS alone — the black the panes float on (grid
gaps, edge padding, the titlebar strip) — goes translucent over the OS
acrylic. The panes above it all paint their own opaque surfaces and
must stay untouched. */
:global(:root.glass) .app {
background: rgba(0, 0, 0, 0.7);
}
/* Collapsed left nav: narrow the sidebar column to an icon rail. The
grid-template-columns transition animates the reflow. */
.app.sidebar-collapsed {