# 05: volume OSD This example follows the structural OSD pattern: - `Scope` groups the non-visual objects under one reload scope. - `Connections` reacts to changes from the current default sink audio object. - `Timer` controls visibility duration. - `LazyLoader` creates the window only while needed. - `PanelWindow` provides anchored layer-shell placement. - an empty `Region` makes the surface click-through. It does not use `FloatingWindow` with `WlrLayershell`. Static check: ```sh qmllint -I /usr/lib/qt6/qml examples/05-osd-volume/shell.qml ``` Do not trigger the real session's audio service during routine validation. Appearance, timing, click-through behavior, and service reaction require separate isolated interaction and visual checks.