Add per-output wallpaper set, persist, and theme

Two monitors can keep different wallpapers. `set --output` targets one
awww output, writes that output's bread-theme files, and updates
~/.config/breadpaper/current.json without clobbering the other. Global
set still runs wal + bread-theme reload and stamps every known output.
`apply` and listen-on-monitor-connect restore the saved map. The library
picker binds to its monitor and applies to that output.
This commit is contained in:
Breadway 2026-08-16 13:06:17 +08:00
parent 5bc879d70e
commit 8d8be6ebb1
10 changed files with 488 additions and 52 deletions

View file

@ -12,5 +12,5 @@ serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml = "0.8"
gtk4 = { version = "0.11", features = ["v4_12"] }
bread-theme = { git = "https://git.breadway.dev/Breadway/bread-ecosystem", tag = "v0.7.2", features = ["gtk"] }
bread-theme = { path = "../bread-ecosystem/bread-theme", features = ["gtk"] }
bread-utils = { git = "https://git.breadway.dev/Breadway/bread-ecosystem", tag = "v0.7.2", features = ["bread-client"] }