diff options
| -rw-r--r-- | desktop/README.md | 15 | ||||
| -rw-r--r-- | desktop/modules/network/README.md | 7 |
2 files changed, 11 insertions, 11 deletions
diff --git a/desktop/README.md b/desktop/README.md index 01ed1ce..7dc9612 100644 --- a/desktop/README.md +++ b/desktop/README.md @@ -25,13 +25,12 @@ the IPC layer rejects. The page-less grid entry is therefore the zero-argument modules/sound/ output and input volume, the OSD, the player modules/network/ wired and wifi, radio, scan, join, forget - modules/bluetooth/ adapter, scan, pair, connect, forget, trust modules/mail/ unread per account, threads, the watcher dot modules/vm/ libvirt state, live stats, snapshots modules/appearance/ a tile that opens the separate appearance shell -Sound, mail and vm each carry their own README. Appearance is a tile onto the -separate appearance shell, whose README covers the picker it opens. +Sound, mail, vm and network each carry their own README. Appearance is a tile +onto the separate appearance shell, whose README covers the picker it opens. ## Writing a module @@ -57,8 +56,8 @@ fire-and-forget, so its click calls `activate()` and closes the drawer. `modules/appearance/AppearanceModule.qml` is the smallest complete example: a name, an icon, a label, and an `activate()` that launches the separate appearance shell. It has no page, and it owns only a `Process` that fires the -picker on click, no always-active service. Sound, mail and vm each add a -service and a page on top of that same shape. +picker on click, no always-active service. Sound, mail, vm and network each add +a service and a page on top of that same shape. Module files live under `desktop/modules/<name>/` and reference root types (`Module`, `Page`, `Button`, `Theme`), so each needs `import "../.."`. A plain @@ -70,8 +69,8 @@ directory import does not reach the parent. The moved `TransportButton.qml` and `alwaysActive` is declarative metadata: it documents whether a module's service is meant to run while the drawer is closed. The drawer does not read or enforce it. Each module implements its own service lifetime, and the property records -that choice rather than driving it. Sound and mail are `alwaysActive: true`; vm -is false. +that choice rather than driving it. Sound, mail and network are +`alwaysActive: true`; vm is false. Sound's OSD has to answer a volume keypress with no drawer open, which is the whole point of it, so its PipeWire service is instantiated eagerly and runs for @@ -102,7 +101,7 @@ is an empty `Item` claiming the space, not a placeholder graphic, so the grid below it sits where it will sit once notifications arrive. The bottom is a fixed, never-scrolled `Flow` grid: three columns at 180px minimum, wrapping and adding rows up to a 3x3 ceiling for the modules that exist, in the order -Sound, Network, Bluetooth, Mail, Appearance, Machines. +Sound, Network, Mail, Appearance, Machines. ## Hyprland and waybar diff --git a/desktop/modules/network/README.md b/desktop/modules/network/README.md index fbf43e1..394b356 100644 --- a/desktop/modules/network/README.md +++ b/desktop/modules/network/README.md @@ -14,9 +14,10 @@ password field. Known networks offer Forget, the connected one Disconnect. ## Service lifetime `alwaysActive: true`, and truthfully: the `Quickshell.Networking` backend -pushes and there is no poll to gate. There is no `Service.qml`, unlike sound -and vm, because there is no loop to own. Referencing `Networking` in -`NetworkModule.qml` is what instantiates it at shell start. +pushes and there is no poll to gate. There is no `Service.qml`, unlike sound's +`Service.qml` or vm's `Virsh.qml`, because there is no loop to own. +Referencing `Networking` in `NetworkModule.qml` is what instantiates it at +shell start. The backend is empty for about two seconds after launch and then fills. Every binding repaints when it arrives; nothing caches the first paint. |
