#!/bin/bash

# Ищем первое окно pavucontrol
WIN_INFO=$(niri msg -j windows | jq -c '.[] | select(.app_id == "org.pulseaudio.pavucontrol")' | head -1)

# Если окна нет — запускаем
if [ -z "$WIN_INFO" ]; then
  pavucontrol
  exit 0
fi

# Извлекаем ID и статус фокуса
ID=$(echo "$WIN_INFO" | jq -r '.id')
IS_FOCUSED=$(echo "$WIN_INFO" | jq -r '.is_focused')

if [ "$IS_FOCUSED" = "true" ]; then
  # 🔹 Окно уже сфокусировано — ваша логика здесь
  niri msg action close-window --id "$ID"
  niri msg action focus-window-previous

  # Примеры действий (раскомментируйте нужное):
  # niri msg action close-window --id "$ID"          # закрыть
  # niri msg action minimize-window --id "$ID"       # свернуть
  # niri msg action focus-window-next                # переключить на следующее окно
else
  # 🔹 Окно существует, но не в фокусе — фокусируем его
  niri msg action focus-window --id "$ID"
fi
