diff options
| author | Danilo M. <danix@danix.xyz> | 2026-11-10 10:06:13 +0100 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-11-10 10:06:13 +0100 |
| commit | 58e37da20ed56eef1863f259e17a819105ac33f2 (patch) | |
| tree | 17e39338164390043b30e10aded0aecb2e6e3e03 /desktop/modules/qtmaildir/ChoiceSetting.qml | |
| parent | d10f2cc00c1091f63e335df1d6913c7abddf06e5 (diff) | |
| download | quickshell-58e37da20ed56eef1863f259e17a819105ac33f2.tar.gz quickshell-58e37da20ed56eef1863f259e17a819105ac33f2.zip | |
feat(deckit): settings page for deck-it, the tablet dashboard
A page under Desktop for deck-it's ~/.config/deck-it/config.toml and its
login line. deck-it now merges that file over its shipped config key by
key, so the page writes only what differs and takes its placeholders
from `deck-it defaults` rather than copying them.
- Start at login edits hypr-theme's autostart.lua at once, as the
Autostart page does, through Autostart.js: it re-enables a commented
deck-it line or adds `deck-it wifi --wait`; off comments them out.
- Every config key, with launchers picked from the installed apps (desktop
ids, reorderable) and module switches built from the defaults.
- A status line polls `deck-it status` every 2s while the page is open;
Restart runs `deck-it stop` and the login command, then reports
"Restarted" once the server runs with a tablet tunnelled, or what it
saw after 30s.
Shared helpers it needed: Toml.js reads plain decimals (the display
scale), Store keeps a list of numbers numeric (the workspaces), and
ChoiceSetting takes a store as Setting and BoolSetting already do.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop/modules/qtmaildir/ChoiceSetting.qml')
| -rw-r--r-- | desktop/modules/qtmaildir/ChoiceSetting.qml | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/desktop/modules/qtmaildir/ChoiceSetting.qml b/desktop/modules/qtmaildir/ChoiceSetting.qml index 01de9da..0a365d0 100644 --- a/desktop/modules/qtmaildir/ChoiceSetting.qml +++ b/desktop/modules/qtmaildir/ChoiceSetting.qml @@ -22,10 +22,12 @@ Column { // [{value, label}] property var options: [] property string fallbackLabel: "Default" + // The draft it edits; qtmaildir's by default, deck-it passes its own. + property var store: Qtm objectName: section + "/" + key width: parent ? parent.width : 0 - readonly property string value: Qtm.get(s.section, s.key) ?? "" + readonly property string value: s.store.get(s.section, s.key) ?? "" Item { width: s.width @@ -66,7 +68,7 @@ Column { anchors.fill: parent hoverEnabled: true cursorShape: Qt.PointingHandCursor - onClicked: Qtm.set(s.section, s.key, chip.modelData.value === "" ? null : chip.modelData.value) + onClicked: s.store.set(s.section, s.key, chip.modelData.value === "" ? null : chip.modelData.value) } } } |
