summaryrefslogtreecommitdiffstats
path: root/.scripts/i3cmds/ddspawn
blob: 123cecbe779fd9275ff72b1b5d670a417d3d61b9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh

# This script simplifies dropdown windows in i3.
# Shows/hides a scratchpad of a given name, if it doesn't exist, creates it.
# Usage:
#	argument 1: script to run in dropdown window
#	all other args are interpreted as options for your terminal
# My usage:
#	ddspawn
# bindsym $mod+u	exec --no-startup-id ddspawn tmuxdd
#	Will hide/show window running the `tmuxdd` script when I press mod+u in i3
# bindsym $mod+a	exec --no-startup-id ddspawn dropdowncalc -f mono:pixelsize=24
#	Similar to above but with `dropdowncalc` and the other args are interpretated as for my terminal emulator (to increase font)

[ -z "$1" ] && exit

if xwininfo -tree -root | grep "(\"$1\" ";
then
	echo "Window detected."
	i3 "[instance=\"$1\"] scratchpad show; [instance=\"$1\"] move position center"
else
	echo "Window not detected... spawning."
	i3 "exec --no-startup-id $1" 
fi