#!/usr/bin/env bash
#  ╔═╗═╗ ╦╔╦╗╔═╗╦═╗╔╗╔╔═╗╦    ╦═╗╦ ╦╦  ╔═╗╔═╗
#  ║╣ ╔╩╦╝ ║ ║╣ ╠╦╝║║║╠═╣║    ╠╦╝║ ║║  ║╣ ╚═╗
#  ╚═╝╩ ╚═ ╩ ╚═╝╩╚═╝╚╝╩ ╩╩═╝  ╩╚═╚═╝╩═╝╚═╝╚═╝
#  

wid=$1
class=$2
instance=$3
consequences=$4

	case "$class" in
		FloaTerm)
			eval "$consequences"
			[ "$state" ] || echo "state=floating center=on rectangle=780x450+0+0"
			;;
		Updating)
			eval "$consequences"
			[ "$state" ] || echo "state=floating rectangle=650x268+1255+57 sticky=on "
			;;
		mpv|vlc)
			eval "$consequences"
			[ "$state" ] || echo "state=floating focus=on rectangle=849x477+0+0 center=on"
			;;
		Viewnior|feh)
			eval "$consequences"
			[ "$state" ] || echo "state=floating focus=on center=on"
			;;
		whatsapp-nativefier-d40211|TelegramDesktop)
			eval "$consequences"
			[ "$state" ] || echo "state=pseudo_tiled desktop=^4 follow=on rectangle=930x617+0+0"
			;;
		retroarch)
			eval "$consequences"
			[ "$state" ] || echo "state=pseudo_tiled desktop=^6 follow=on"
			;;
		Pavucontrol)
			eval "$consequences"
			[ "$state" ] || echo "state=floating center=on"
			;;
		Virt-manager)
			eval "$consequences"
			[ "$state" ] || echo "state=floating desktop=^5 follow=on center=on"
			;;
		Thunar)
			eval "$consequences"
			[ "$state" ] || echo "state=pseudo_tiled desktop=^2 rectangle=966x576+0+0 follow=on"
			;;
		firefox|brave-browser|Navigator)
			eval "$consequences"
			[ "$state" ] || echo "desktop=^3 follow=on"
			;;
		Transmission-gtk)
			eval "$consequences"
			[ "$state" ] || echo "desktop=^6 follow=on"
			;;
		Spotify)
			eval "$consequences"
			[ "$state" ] || echo "state=pseudo_tiled desktop=^6 follow=on"
			;;
	esac

	case "$instance" in
		Toolkit)
			eval "$consequences"
			[ "$state" ] || echo "state=floating sticky=on rectangle=500x290+1054+593"
			;;
	esac  
