fix: repair live view + settings in standalone multi-canvas mode
Two gaps surfaced after adding per-design localStorage storage: - Live view (/view) still read the legacy bare `homelable_canvas` key, which no longer exists once canvases are keyed per design — the read-only tab rendered empty. Now passes the active design id (?design=<id>) and reads that design's canvas, falling back to the first design. - The Settings modal was gated out entirely in standalone, leaving the Settings button dead even though canvas prefs (snap, hide-IP) work without a backend. Mount it in standalone; only the backend status-check section stays hidden. ha-relevant: no
This commit is contained in:
@@ -498,7 +498,10 @@ export default function App() {
|
||||
// Otherwise fetch the configured live view key and build /view?key=...&design=<id>.
|
||||
const handleViewOnly = useCallback(async () => {
|
||||
if (STANDALONE) {
|
||||
window.open('/view', '_blank', 'noopener,noreferrer')
|
||||
// Standalone reads canvas from localStorage; pass the active design id so
|
||||
// the read-only tab renders the same canvas the user is viewing.
|
||||
const url = activeDesignId ? `/view?design=${encodeURIComponent(activeDesignId)}` : '/view'
|
||||
window.open(url, '_blank', 'noopener,noreferrer')
|
||||
return
|
||||
}
|
||||
try {
|
||||
@@ -933,9 +936,9 @@ export default function App() {
|
||||
onCancel={() => setPendingContainerAdd(null)}
|
||||
/>
|
||||
|
||||
{!STANDALONE && (
|
||||
<SettingsModal open={settingsOpen} onClose={() => setSettingsOpen(false)} />
|
||||
)}
|
||||
{/* Mounted in standalone too: status-check settings are hidden inside,
|
||||
but canvas prefs (snap, hide-IP) still apply. */}
|
||||
<SettingsModal open={settingsOpen} onClose={() => setSettingsOpen(false)} />
|
||||
|
||||
<PendingDevicesModal
|
||||
open={pendingModalOpen}
|
||||
|
||||
Reference in New Issue
Block a user