phosphor-shell-osd

On-screen-display framework for volume, brightness, and friends.

The Phosphor.OSD framework owns the transient overlay a shell flashes when you change the volume, the brightness, or toggle the mic. OSDHost shows one at a time, holds it for a timeout, fades it out, and routes it to the right screen, debouncing repeated triggers so spinning a volume key keeps one surface alive and refreshed instead of stacking a dozen. The framework owns presentation and timing only: the content comes from delegates (four ship built in, and plugins can contribute more) and the triggers come from the host, whether that is a hotkey handler, an IPC call, or a service signal.

Full API →

Key types

OSDHost
Per-screen surface manager: one-at-a-time display, hold timer, debounce, fade, screen routing.
OSDCard
Shared chrome: elevated rounded card with a glyph, label, and optional progress bar.
VolumeOSD
Speaker glyph and progress; muted cross at zero.
BrightnessOSD
Sun glyph and progress.
MicOSD
Microphone glyph; a red slash and label when muted.
CapsLockOSD
Caps-lock glyph, primary-tinted when on.

Dependencies

See also

References