summaryrefslogtreecommitdiff
path: root/wallpaper.fish
diff options
context:
space:
mode:
author2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-03-30 12:21:39 +1100
committer2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>2025-03-30 12:21:39 +1100
commit801d9602f17ff307b23f3235bc829419a3c79e41 (patch)
tree815e7cbf6936e455e8623b7dfba1bc24169b6042 /wallpaper.fish
parentcompletions: remove opt for shell (diff)
downloadcaelestia-cli-801d9602f17ff307b23f3235bc829419a3c79e41.tar.gz
caelestia-cli-801d9602f17ff307b23f3235bc829419a3c79e41.tar.bz2
caelestia-cli-801d9602f17ff307b23f3235bc829419a3c79e41.zip
wallpaper: auto light/dark mode switching
If using dynamic scheme, auto switch light/dark mode depending on wallpaper
Diffstat (limited to 'wallpaper.fish')
-rwxr-xr-xwallpaper.fish7
1 files changed, 7 insertions, 0 deletions
diff --git a/wallpaper.fish b/wallpaper.fish
index 25c7090..1acb7ff 100755
--- a/wallpaper.fish
+++ b/wallpaper.fish
@@ -122,7 +122,14 @@ else
if test -f $C_STATE/scheme/current-name.txt
set -l variant (string match -gr 'dynamic-(.*)' (cat $C_STATE/scheme/current-name.txt))
if test -n "$variant"
+ # Light/dark mode detection if not specified
+ if ! set -q _flag_T
+ set -l lightness (magick $state_dir/thumbnail.jpg -format '%[fx:int(mean*100)]' info:)
+ test $lightness -ge 60 && set _flag_T light || set _flag_T dark
+ end
+ # Wait for async scheme gen to finish
wait
+ # Apply scheme
caelestia scheme dynamic $variant $_flag_T > /dev/null
end
end