#!/bin/zsh
source "$HOME/.config/wryn/env.zsh"
NATIVE_MONITOR='eDP1'

GET_PRIMARY_MONITOR() {
	xrandr \
		| grep 'primary' \
		| awk '{print $1;}' \
		| head -n 1
}

PRIMARY_MONITOR=$(GET_PRIMARY_MONITOR)

GET_ALL_EXTERNAL_MONITORS() {
	xrandr \
		| grep ' connect' \
		| awk '{print $1;}' \
		| grep -v "$NATIVE_MONITOR" \
		2>/dev/null
}
GET_DEFAULT_EXTERNAL_MONITOR() {
	GET_ALL_EXTERNAL_MONITORS | head -n 1
}
EXTERNAL_MONITOR=$(GET_DEFAULT_EXTERNAL_MONITOR)

DISCONNECT_OTHER() {
	local SFX="$1"

	local INACTIVE_MONITORS=$(\
		xrandr --listmonitors \
			| sed '1d' | awk '{print $NF;}' \
			| grep -v "^$(GET_PRIMARY_MONITOR)$"
		)

	for ACTIVE_MONITOR in ${@:2}
	do
		INACTIVE_MONITORS=$(echo $INACTIVE_MONITORS | grep -v "^$ACTIVE_MONITOR$")
	done

	local MONITOR
	for MONITOR in $INACTIVE_MONITORS
	do
		xrandr --output $MONITOR --off
	done

	sleep 1
	$DOTWRYN/bin/set-background random

	[ $SFX ] && ( PLAY_SFX $SFX ) &
	return 0
}

NOTIFY() {
	notify-send 'xrandr screenlayout' $@
}