Skip to main content

Module backends

Module backends 

Source
Expand description

Adapters for communicating with Desktop Environments, Window Managers, and Display Servers.

Structs§

AwwwBackend
GnomeBackend
HyprlandBackend
OpenboxBackend
SwaybgBackend
XfceBackend

Enums§

Desktop
Represents the supported Desktop Environments (DE) or Window Managers (WM). We use an Enum instead of a String to ensure type safety and prevent logic errors.

Traits§

WallpaperBackend
Core trait defining the wallpaper application logic. Follows the “Functional Core, Imperative Shell” pattern.

Functions§

compile_wallpapers_for_monitors
Pre-processes and compiles separate multi-picture composite backgrounds in parallel for each monitor.
detect_monitors
Detects active outputs (monitors) using a robust fallback chain. Returns a WallSwitchResult wrapping a Vector of monitor property strings.
exec_cmd
get_active_xrandr_monitors
Get active X11 monitors via xrandr to filter out stale configurations.
parse_hyprland
Pure parser for Hyprland output
parse_niri
Pure parser for Niri output
parse_wlr_randr
Pure parser for wlr-randr output
parse_xfce
XFCE Logic: Matches active hardware (xrandr) with XFCE properties. If a monitor is active but has no XFCE property yet, we synthesize one.
parse_xrandr
prune_stale_xfce_configs
set_wallpaper
Set desktop wallpaper based on the detected Desktop Environment.