# vim: filetype=i3
# File originally by Luke Smith <https://lukesmith.xyz>

# This config file will use environmental variables such as $BROWSER and $TERMINAL.
# You can set these variables in ~/.profile or ~/.bash_profile if you have it as below:
#
# export FILE="ranger"
# export TERMINAL="st"

# #------Auto Start-------# #
exec --no-startup-id owncloud
exec --no-startup-id toggletouchpad

# #---Basic Definitions---# #
for_window [class="^.*"] border pixel 1
gaps inner 0
gaps outer 0
set $term --no-startup-id $TERMINAL
set $mod Mod4
font xft:mono 10

# #---Dropdown Windows---# #
# General dropdown window traits. The order can matter.
for_window [instance="dropdown_*"] floating enable
for_window [class="de.uol.swp.client.ClientApp"] floating enable
for_window [instance="dropdown_*"] move scratchpad
for_window [instance="dropdown_*"] sticky enable
for_window [instance="dropdown_*"] scratchpad show
for_window [instance="dropdown_tmuxdd"] resize set 625 450
for_window [instance="dropdown_dropdowncalc"] resize set 800 300
for_window [instance="dropdown_tmuxdd"] border pixel 3
for_window [instance="dropdown_dropdowncalc"] border pixel 2
for_window [instance="dropdown_*"] move position center


bar {
	font pango:mono 10
	status_command i3blocks
	position top
	mode dock
	modifier None
	colors {
		background #000000
		statusline #ffffff
		separator #333333
		#Bord #Back #Text
		focused_workspace #ffa500 #4a4a4a #ffa500
		active_workspace #ffa500 #33333 #ffa500
		inactive_workspace #ffa500 #000000 #ffa500
		urgent_workspace #ffa500 #000000 #900000
	}
}
client.placeholder #242424 #242424 #242424
client.background #242424 #242424 #242424
client.focused #4a4a4a #4a4a4a #e5e5e5 #6a6a6a
client.unfocused #4a4a4a #222222 #aaaaaa #222222
client.focused_inactive #4a4a4a #222222 #a9a9a9 #222222
client.urgent #4a4a4a #4a4a4a #f7f7f7 #4a4a4a


# #---Basic Bindings---# #
bindsym $mod+Shift+Escape 	exec --no-startup-id prompt "Exit i3?" "i3-msg exit"

#bindsym $mod+Return taken by sxhkd

#bindym $mod+b taken by sxhkd
bindsym $mod+Shift+b			bar mode toggle

#bindsym $mod+c taken by sxhkd

bindsym $mod+Shift+d  			floating toggle

bindsym $mod+Shift+f			fullscreen toggle

bindsym $mod+h			focus left
bindsym $mod+Shift+h		move left 30

#bindsym $mod+i taken by sxhkd
bindsym $mod+Shift+i		exec --no-startup-id i3resize up

bindsym $mod+j			focus down
bindsym $mod+Shift+j		move down 30

bindsym $mod+k			focus up
bindsym $mod+Shift+k		move up 30

bindsym $mod+l			focus right
bindsym $mod+Shift+l		move right 30

#bindsym $mod+m taken by sxhkd
bindsym $mod+Shift+m 		move scratchpad

#bindsym $mod+n taken by sxhkd
#bindsym $mod+Shift+n taken by sxhkd

bindsym $mod+Shift+o		exec --no-startup-id i3resize right

#bindym $mod+p taken by sxhkd

bindsym $mod+q			[con_id="__focused__" instance="^(?!dropdown_).*$"] kill
bindsym $mod+Shift+q		[con_id="__focused__" instance="^(?!dropdown_).*$"] exec --no-startup-id kill -9 `xdotool getwindowfocus getwindowpid`

#bindsym $mod+r taken by sxhkd
#bindsym $mod+shift+r taken by sxhkd

#bindsym $mod+s taken by sxhkd

bindsym $mod+t			split toggle

bindsym $mod+Shift+u		exec --no-startup-id i3resize down

#bindsym $mod+x taken by sxhkd

bindsym $mod+Shift+z		exec --no-startup-id i3resize left

#bindsym $mod+F5 taken by sxhkd

#bindsym $mod+F6 taken by sxhkd

#bindsym $mod+F7 taken by sxhkd

#bindsym $mod+F8 taken by sxhkd

#bindsym $mod+F9 taken by sxhkd

#bindsym $mod+F10 taken by sxhkd

#bindsym $mod+F11 taken by sxhkd

#bindsym $mod+F12 taken by sxhkd


# #---Workspace Bindings---# #
set $ws1 "1DF"
set $ws2 "2VR"
set $ws3 "3RS"
set $ws4 "4RS"
set $ws5 "5WK"
set $ws6 "6WK"
set $ws7 "7ME"
set $ws8 "8CM"
set $ws9 "9GM"
set $ws0 "0EX"

# switch to workspace
bindsym $mod+1		workspace $ws1
bindsym $mod+2		workspace $ws2
bindsym $mod+3		workspace $ws3
bindsym $mod+4		workspace $ws4
bindsym $mod+5		workspace $ws5
bindsym $mod+6		workspace $ws6
bindsym $mod+7		workspace $ws7
bindsym $mod+8		workspace $ws8
bindsym $mod+9		workspace $ws9
bindsym $mod+0		workspace $ws0

# move focused container to workspace
bindsym $mod+Shift+1	move container to workspace $ws1
bindsym $mod+Shift+2	move container to workspace $ws2
bindsym $mod+Shift+3	move container to workspace $ws3
bindsym $mod+Shift+4	move container to workspace $ws4
bindsym $mod+Shift+5	move container to workspace $ws5
bindsym $mod+Shift+6	move container to workspace $ws6
bindsym $mod+Shift+7	move container to workspace $ws7
bindsym $mod+Shift+8	move container to workspace $ws8
bindsym $mod+Shift+9	move container to workspace $ws9
bindsym $mod+Shift+0	move container to workspace $ws0

for_window [class="Pinentry"] sticky enable
for_window [class="sent"] border pixel 0px
for_window [title="GIMP Startup"] move workspace $ws5
for_window [class="Gimp"] move workspace $ws5
for_window [window_role="GtkFileChooserDialog"] resize set 800 600
for_window [window_role="GtkFileChooserDialog"] move position center
for_window [title="Default - Wine desktop"] floating enable