Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lumen-shell

The LoricaOS desktop shell — the top bar (Aegis menu, the focused app's File/Edit/… menu, volume popup, Wi-Fi/battery/CPU status, notifications).

Split out of lumen (the compositor), the same way citadel-dock was split out earlier: this is an ordinary external client speaking lumen's window protocol, not special-cased code inside the compositor. It creates a top-anchored, full-width panel (LUMEN_OP_CREATE_PANEL / LUMEN_PANEL_TOP) that's normally just the bar's height and grows downward via LUMEN_OP_RESIZE_SELF to cover whichever dropdown or notification toast is currently showing.

Two protocol pieces exist only for this client: LUMEN_EV_MENU_STATE (the compositor pushes the focused window's published menu here, since the shell doesn't own that window) and LUMEN_OP_INVOKE_FOCUSED_MENU (the shell asks the compositor to invoke a chosen menu command on whichever window is currently focused). Actions needing the compositor's own authority — the About window, reboot/poweroff (POWER capability), locking the screen — go back through the same LUMEN_OP_INVOKE mechanism citadel-dock already uses to launch apps.

Depends on lumen (herald depends=lumen); ships as a mandatory part of the desktop profile, not an optional app — without it there is no top bar.

Build: make (fetches the pinned glyph toolkit, builds component.elf, packs the signed .hpkg). See tools/pack.sh for the per-component knobs.

About

The LoricaOS desktop shell (top bar) — a lumen client.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages