Home is now Overview | My Home | Phone. Overview leads with quick-action tiles (focus, Do Not Disturb, health, snapshots, storage), keeps the findings card — updates fold in, the reclaim-space prompt is gone on purpose — and adds glance cards, the next calendar event, and weather. My Home groups every light by Home Assistant area: the helper gained an `areas` command (one REST template render, no websocket), and the rooms degrade to a flat list on setups without areas. The favorites editor and connection card moved intact. Phone gains a vitals strip — battery and cell signal read from KDE Connect's plugin D-Bus objects, where absence is data, not an error — beside ring, clipboard, send-a-file, and the BlueBubbles handoff. The retired home-phone id resolves to my-home forever via a new alias map in SettingsRoutes (with a hasOwnProperty guard so prototype names cannot leak into settingsPage). Storage no longer claims 0 B free — the old page read a field the disks helper never emitted. Contracts updated alongside; per the new workflow, the full suite runs once at the end of the redesign (see the test backlog note). Claude-Session: https://claude.ai/code/session_01Ms2FbjQy31TVf3CEvQhGM8
33 lines
727 B
QML
33 lines
727 B
QML
import Quickshell
|
|
import QtQuick
|
|
import qs.config
|
|
import qs.services
|
|
|
|
FloatingWindow {
|
|
id: root
|
|
|
|
readonly property var myHomeDiagnostics: settingsShell.myHomeDiagnostics
|
|
|
|
title: "Settings"
|
|
visible: ShellState.settingsOpen
|
|
implicitWidth: 1120
|
|
implicitHeight: 760
|
|
minimumSize: Qt.size(900, 620)
|
|
color: Theme.alpha(Theme.bg, 0)
|
|
|
|
onVisibleChanged: {
|
|
if (visible) {
|
|
SystemSettings.refresh();
|
|
} else if (ShellState.settingsOpen) {
|
|
// Keep Super+I deterministic after compositor close/Alt+F4.
|
|
ShellState.closeSettings();
|
|
}
|
|
}
|
|
|
|
SettingsShell {
|
|
id: settingsShell
|
|
anchors.fill: parent
|
|
hostWindow: root
|
|
}
|
|
}
|