aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/README.md')
-rw-r--r--desktop/README.md16
1 files changed, 16 insertions, 0 deletions
diff --git a/desktop/README.md b/desktop/README.md
index 092baae..3fd1cac 100644
--- a/desktop/README.md
+++ b/desktop/README.md
@@ -24,6 +24,19 @@ declared argument to be present and a defaulted parameter registers as a type
the IPC layer rejects. The page-less grid entry is therefore the zero-argument
`toggle`. `ipc call drawer close` closes it.
+## The settings window
+
+The drawer is the quick area: live state, and things toggled often. Pages
+that are set once and left alone live in a settings window instead, a normal
+Hyprland window rather than a layer surface, with those pages listed down its
+left. A module joins it with `settings: true`, which also drops its tile. The
+gear tile opens it, and so does IPC:
+
+ qs -p ./desktop ipc call settings open autostart
+ qs -p ./desktop ipc call settings toggle
+
+`open` takes a page name; an unknown or empty one opens the first page.
+
## The modules
modules/sound/ output and input volume, the OSD, the player
@@ -38,6 +51,7 @@ the IPC layer rejects. The page-less grid entry is therefore the zero-argument
modules/user/ the greeting row and the user's details page
modules/clipboard/ cliphist history: search, copy, delete, clear all
modules/git/ the global git config, opened from the user page
+ modules/autostart/ Hyprland's autostart.lua, in the settings window
Sound, mail, vm, network, bluetooth, kdeconnect and ai each carry their own README.
Appearance is a tile onto the separate appearance shell, whose README covers the
@@ -54,6 +68,8 @@ drawer needs to show it:
- `tileContent`: a `Component` for the short state line under the label, or
null for a tile that says nothing beyond its name.
- `page`: a `Component` for the full-height page behind the tile, or null.
+- `settings`: the page lives in the settings window, not the drawer, and the
+ module has no tile.
- `activate()`: what a tile with no page does when clicked.
- `alwaysActive`: declares whether the module's service is meant to run while
the drawer is closed. The drawer does not read it, the module implements its