#! /bin/bash

# Set outputs
xrandr --output DP-0 --primary --mode 2560x1440 --rate 165.08 --left-of DP-4 --output DP-4 --mode 2560x1440 --rate 74.92

# Monitor description
bspc monitor DP-0 -d term browser game code misc
bspc monitor DP-4 -d browser2 comm music server mail tmp

# Restore wallpaper
~/.fehbg

# Autolaunch

pgrep -x Discord >/dev/null || Discord &
pgrep -x steam >/dev/null || steam &

# Utilities
xsetroot -cursor_name left_ptr &
setxkbmap -model evdev -layout eu

# Configuration
bspc config border_width         3
bspc config window_gap          18
bspc config normal_border_color '#21201E'
bspc config active_border_color '#21201E'
bspc config focused_border_color '#C93B59'

bspc config split_ratio          0.5
bspc config borderless_monocle   true
bspc config gapless_monocle      true

bspc config focus_follows_pointer false

# -------------------------------------------------------- Rules
# 
#---------------------------------------------- Default to float
bspc rule -a \* state=floating

#---------------------------------------------- Terminal / Kitty
bspc rule -a kitty state=tiled

#------------------------------------------------------- Firefox
bspc rule -a Firefox state=tiled
bspc rule -a "Firefox:*:Save Image" state=floating
bspc rule -a "Firefox:*:File Upload" state=floating

# ------------------------------------ Discord => Workspace Comm
bspc rule -a discord state=tiled desktop=comm

# -------------------------------------- Steam => Workspace Game
bspc rule -a Steam state=tiled desktop=game
bspc rule -a "Steam:Friends List" split_ratio=0.3

# ------------------------------------- Coding => Workspace Code
bspc rule -a "Code - OSS" state=tiled desktop=code

# ------------------------------------------------------- Hydrus
bspc rule -a "Hydrus Client:*:main" state=tiled desktop=misc
bspc rule -a "Hydrus Client:*:main - hydrus 488" state=tiled desktop=misc
bspc rule -a "Hydrus Client:*:hydrus client media viewer" state=tiled
