# Sway has a "scratchpad", which is a bag of holding for windows.
# You can send windows there and get them back later.
# NOTE: Get id with `swaymsg -t get_tree`.

# Show the next scratchpad window or hide the focused scratchpad window.
# If there are multiple scratchpad windows, this command cycles through them.
bindsym --to-code $mod+c scratchpad show
bindsym --to-code $mod+shift+C move scratchpad
bindsym --to-code $mod+shift+X exec swayscript scratchpad_kill

# Fix for a goddamn Firefox WebRTC indicator.
for_window [app_id="firefox" title="Firefox — Sharing Indicator"] {
	kill
}

# NetworkManager.
for_window [app_id="nm-connection-editor"] {
	move scratchpad
	scratchpad show
}

# Bluetooth.
for_window [app_id=".blueman-manager-wrapped"] {
	move scratchpad
	scratchpad show
}

# Sound.
for_window [app_id="pavucontrol"] {
	move scratchpad
	scratchpad show
}

# Android emulator controls.
for_window [title="Emulator" window_type="utility"] {
	move scratchpad
}

# Calculator.
for_window [app_id="org.gnome.Calculator"] {
	move scratchpad
	scratchpad show
}

# JamesDsp.
for_window [title="JamesDSP for Linux"] {
	move scratchpad
}