aboutsummaryrefslogtreecommitdiff
path: root/.local/share/bin/mode
blob: 5668d3e9946c2678034c387c2e5fed97ad97c6b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#!/bin/sh

get_color() {
	xrdb -query | grep $1 | head -n1 | cut -f2
}

switch_xrdb() {
	cat ~/.config/X11/base ~/.config/X11/$1 | xrdb
}

switch_dunst() {
	read -r -d '' conf << EOF
frame_color = "$(get_color color1)"

[urgency_low]
background = "$(get_color background)"
foreground = "$(get_color color1)"
timeout = 10

[urgency_normal]
background = "$(get_color background)"
foreground = "$(get_color foreground)"
timeout = 10

[urgency_critical]
background = "$(get_color color1)"
foreground = "$(get_color background)"
frame_color = "$(get_color color1)"
timeout = 0
EOF
	echo "$conf" | cat ~/.config/dunst/base - > ~/.config/dunst/dunstrc
}

switch_zathura() {
	read -r -d '' conf << EOF
set default-bg				"$(get_color background)"
set statusbar-bg			"$(get_color background)"
set inputbar-bg				"$(get_color background)"
set completion-highlight-fg	"$(get_color background)"
set completion-bg			"$(get_color background)"
set notification-error-fg	"$(get_color background)"
set notification-warning-fg	"$(get_color background)"
set notification-fg			"$(get_color background)"
set recolor-lightcolor		"$(get_color background)"

set default-fg			"$(get_color foreground)"
set inputbar-fg			"$(get_color foreground)"
set completion-fg		"$(get_color foreground)"
set statusbar-fg		"$(get_color foreground)"
set recolor-darkcolor	"$(get_color foreground)"

set notification-error-bg   "$(get_color color9)"
set notification-warning-bg "$(get_color color9)"
set completion-highlight-bg "$(get_color color9)"
set highlight-color         "$(get_color color9)"

set highlight-active-color "$(get_color color13)"
set notification-bg        "$(get_color color13)"
EOF
	echo "$conf" > ~/.config/zathura/colors
}

reload_terms() {
	read -r -d '' escape_msgs << EOF
\033]11;$(get_color background)\007
\033]10;$(get_color foreground)\007
\033]12;$(get_color foreground)\007
\033]14;$(get_color background)\007
\033]13;$(get_color foreground)\007
\033]17;$(get_color color8)\007
\033]708;$(get_color background)\007
\033]4;0;$(get_color color0)\007
\033]4;1;$(get_color color1)\007
\033]4;2;$(get_color color2)\007
\033]4;3;$(get_color color3)\007
\033]4;4;$(get_color color4)\007
\033]4;5;$(get_color color5)\007
\033]4;6;$(get_color color6)\007
\033]4;7;$(get_color color7)\007
\033]4;8;$(get_color color8)\007
\033]4;9;$(get_color color9)\007
\033]4;10;$(get_color color10)\007
\033]4;11;$(get_color color11)\007
\033]4;12;$(get_color color12)\007
\033]4;13;$(get_color color13)\007
\033]4;14;$(get_color color14)\007
\033]4;15;$(get_color color15)\007
EOF
	escape_msgs=$(printf "$escape_msgs" | tr -d '\n')
	find /dev/pts -exec sh -c "printf \"$escape_msgs\n\" > {}" \; 2> /dev/null
}

reload_dunst() {
	killall dunst
	dunst & disown
}

reload_polybar() {
	polybar-msg cmd restart
}

switch_cfgs() {
	echo "switching to $1 mode..."
	
	switch_xrdb $1
	switch_dunst $1
	switch_zathura $1

	echo $1 > ~/.local/share/mode/active
	rm ~/.local/share/mode/dark ~/.local/share/mode/light
	touch ~/.local/share/mode/$1
}

[[ $1 == "dark" || $1 == "light" ]] && switch_cfgs $1

reload_apps() {
	echo "reloading programs..."

	reload_polybar
	reload_dunst
	reload_terms
}

reload_apps