Watch
1
0
Fork
You've already forked souveraine
0
souveraine/surfaces/quickshell/modules
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Fimeg 391e239010 bar: one BarContent for every device, layout as data
ii-base and ii-phone each carried a 357-line BarContent to express eight
differences, all of them either "is this widget shown" or "which slot is
it in". No behaviour differed. Every bar edit had to be made twice or
diverge silently against the pin.

Widgets are now declared once as Components in a registry; each slot is a
Repeater over a list of widget names, so placement and order are data.
Config names a slot or a device profile picks it. "auto" derives the
profile from the same cramped-ness test behind useShortenedForm, so the
phone keeps its arrangement with no config file. Loaders are active only
when placed, so an unplaced widget is never constructed.

The agent island becomes a placeable widget rather than a mount smuggled
into UtilButtons: it reaches every device bar from one declaration.

ClockWidget is unified for the same reason. Its phone fork existed solely
to add customFormat, which BarContent now sets on every device.

bar.agentSessions was landing under background.widgets, not bar, so
Config.options.bar.agentSessions was always undefined and only the ?? true
fallback made the island appear wired. Moved, and merged into the existing
bar.indicators rather than declaring a second one.
2026-08-11 14:40:07 -04:00
..
common bar: one BarContent for every device, layout as data 2026-08-11 14:40:07 -04:00
ii bar: one BarContent for every device, layout as data 2026-08-11 14:40:07 -04:00
settings polkit: add temporary FPC confirmation 2026-08-10 20:46:28 -04:00
souveraine agent sessions: one collector, one island 2026-08-11 14:19:45 -04:00