#!/bin/bash

DIR="$HOME/Wallpapers"
mkdir -p "$HOME/.random-background"

# Check if wallpaper directory exists
[[ ! -d "$DIR" ]] && { echo "Wallpaper directory not found: $DIR"; exit 1; }

# Get image files
mapfile -t files < <(find "$DIR" -type f \( -iname '*.svg' -o -iname '*.jpg' -o -iname '*.jpeg' -o -iname '*.png' -o -iname '*.webp' \))
[[ ${#files[@]} -eq 0 ]] && { echo "No images found in $DIR"; exit 1; }

# Pick random image
PIC="${files[RANDOM % ${#files[@]}]}"
# Get current workspace
workspace="$(xdotool get_desktop)"

# Detect monitor using xrandr (fallback if needed)
monitor=$(xrandr --query | awk '/ connected/ {print $1; exit}')
[[ -z "$monitor" ]] && {
    monitor=$(xfconf-query -c xfce4-desktop -lv \
        | grep -oP '/backdrop/screen0/monitor\K[^/]*' \
        | sort -u | head -n1)
}

[[ -z "$monitor" ]] && { echo "No monitor found"; exit 1; }

# Set wallpaper
xfconf-query -c xfce4-desktop -p "/backdrop/screen0/monitor$monitor/workspace${workspace}/last-image" -s "$PIC"

# Save image path
echo "'$PIC'" > "$HOME/.random-background/wallpaper_data_0"

