#!/bin/sh

source "$HOME/.config/wryn/env/env.zsh"

UTIL_BIN="$DOTWRYN/bin/desktop"
APP_BIN="$HOME/.config/wryn/default-applications"

MEDIA__NEXT="$UTIL_BIN/youtube-music/next.sh"
MEDIA__PREV="$UTIL_BIN/youtube-music/previous.sh"
MEDIA__PLAYPAUSE="$UTIL_BIN/youtube-music/playpause.sh"

VOLUME__UP="$UTIL_BIN/pulseaudio/sink-volume/default-up.sh";
VOLUME__DOWN="$UTIL_BIN/pulseaudio/sink-volume/default-down.sh";
VOLUME__MUTE="$UTIL_BIN/pulseaudio/sink-volume/default-mute.sh";
VOLUME__MICMUTE="$UTIL_BIN/pulseaudio/source-volume/default-mute.sh";

BACKLIGHT__UP="$UTIL_BIN/xbacklight/up.sh";
BACKLIGHT__DOWN="$UTIL_BIN/xbacklight/down.sh";

LOCK_SCREEN="$UTIL_BIN/i3lock/lock.sh";
LOG_OUT="$UTIL_BIN/i3/logout.sh";
LAUNCH_OR_SHOW="$UTIL_BIN/i3/launch-or-show-application.sh";
LAUNCH_ALL_SCRATCHPAD="$UTIL_BIN/i3/launch-all-scratchpad-applications.sh";

BG_RANDOMIZE="$UTIL_BIN/feh/randomize-background.sh"

ALTERNATE_TERMINAL="$UTIL_BIN/kitty/alternate-terminal.sh"

AUDIO="$APP_BIN/audio"
ANDROID_MIRROR="scrcpy"
DISCORD="$APP_BIN/discord"
EMAIL="$APP_BIN/email"
MEDIA="$APP_BIN/media"
MESSAGES="$APP_BIN/messages"
PHONE="$APP_BIN/phone"
SLACK="$APP_BIN/slack"

case $1 in
	next ) "$MEDIA__NEXT" ;;
	prev ) "$MEDIA__PREV" ;;
	playpause ) "$MEDIA__PLAYPAUSE" ;;

	volumeraise ) "$VOLUME__UP" ;;
	volumelower ) "$VOLUME__DOWN" ;;
	mute ) "$VOLUME__MUTE" ;;
	micmute ) "$VOLUME__MICMUTE" ;;

	backlightup ) "$BACKLIGHT__UP" ;;
	backlightdown ) "$BACKLIGHT__DOWN" ;;

	lock ) "$LOCK_SCREEN" ;;
	logout ) "$LOG_OUT" ;;

	bgrandomize ) "$BG_RANDOMIZE" ;;

	alternateterm ) "$ALTERNATE_TERMINAL" ;;

	launchallhidden ) "$LAUNCH_ALL_SCRATCHPAD" ;;

	audio   ) "$LAUNCH_OR_SHOW" "$2" "$AUDIO"          ;;
	amirror ) "$LAUNCH_OR_SHOW" "$2" "$ANDROID_MIRROR" ;;
	discord ) "$LAUNCH_OR_SHOW" "$2" "$DISCORD"        ;;
	email   ) "$LAUNCH_OR_SHOW" "$2" "$EMAIL"          ;;
	media   ) "$LAUNCH_OR_SHOW" "$2" "$MEDIA"          ;;
	message ) "$LAUNCH_OR_SHOW" "$2" "$MESSAGES"       ;;
	phone   ) "$LAUNCH_OR_SHOW" "$2" "$PHONE"          ;;
	slack   ) "$LAUNCH_OR_SHOW" "$2" "$SLACK"          ;;
esac