it* dwm + patches Err codevoid.de 70 i Err codevoid.de 70 hgit clone git://git.codevoid.de/dwm-sdk URL:git://git.codevoid.de/dwm-sdk codevoid.de 70 1Log /git/dwm-sdk/log.gph codevoid.de 70 1Files /git/dwm-sdk/files.gph codevoid.de 70 1Refs /git/dwm-sdk/refs.gph codevoid.de 70 1README /git/dwm-sdk/file/README.gph codevoid.de 70 1LICENSE /git/dwm-sdk/file/LICENSE.gph codevoid.de 70 i--- Err codevoid.de 70 1commit 36c40f76fe330f42ae76847ab4420fa3a86014f7 /git/dwm-sdk/commit/36c40f76fe330f42ae76847ab4420fa3a86014f7.gph codevoid.de 70 1parent 0bca97ea298e173a01dfebd0209e1a6dd7b0bef7 /git/dwm-sdk/commit/0bca97ea298e173a01dfebd0209e1a6dd7b0bef7.gph codevoid.de 70 hAuthor: Stefan Hagen URL:mailto:sh+git[at]codevoid[dot]de codevoid.de 70 iDate: Sat, 5 Oct 2019 11:27:10 +0200 Err codevoid.de 70 i Err codevoid.de 70 iAdd floating window color Err codevoid.de 70 i Err codevoid.de 70 iDiffstat: Err codevoid.de 70 i M config.def.h | 9 +++++---- Err codevoid.de 70 i M config.h | 212 +++++++++++++++---------------- Err codevoid.de 70 i M config.mk | 6 +++--- Err codevoid.de 70 i M drw.h | 2 +- Err codevoid.de 70 i M dwm.c | 29 ++++++++++++++++++++++++++--- Err codevoid.de 70 i M maximize.c | 10 ++++++++++ Err codevoid.de 70 i Err codevoid.de 70 i6 files changed, 149 insertions(+), 119 deletions(-) Err codevoid.de 70 i--- Err codevoid.de 70 1diff --git a/config.def.h b/config.def.h /git/dwm-sdk/file/config.def.h.gph codevoid.de 70 it@@ -12,10 +12,11 @@ static const char col_gray2[] = "#444444"; Err codevoid.de 70 i static const char col_gray3[] = "#bbbbbb"; Err codevoid.de 70 i static const char col_gray4[] = "#eeeeee"; Err codevoid.de 70 i static const char col_cyan[] = "#005577"; Err codevoid.de 70 i-static const char *colors[][3] = { Err codevoid.de 70 i- /* fg bg border */ Err codevoid.de 70 i- [SchemeNorm] = { col_gray3, col_gray1, col_gray2 }, Err codevoid.de 70 i- [SchemeSel] = { col_gray4, col_cyan, col_cyan }, Err codevoid.de 70 i+static const char col_blue[] = "#00FF00"; Err codevoid.de 70 i+static const char *colors[][4] = { Err codevoid.de 70 i+ /* fg bg border float */ Err codevoid.de 70 i+ [SchemeNorm] = { col_gray3, col_gray1, col_gray2, col_gray2 }, Err codevoid.de 70 i+ [SchemeSel] = { col_gray4, col_cyan, col_cyan, col_blue }, Err codevoid.de 70 i }; Err codevoid.de 70 i Err codevoid.de 70 i /* tagging */ Err codevoid.de 70 1diff --git a/config.h b/config.h /git/dwm-sdk/file/config.h.gph codevoid.de 70 it@@ -10,55 +10,59 @@ static const char selbgcolor[] = "#181818"; // top bar selection bg Err codevoid.de 70 i static const char selfgcolor[] = "#eeeeee"; // top bar selection fg Err codevoid.de 70 i static const char normbordercolor[] = "#242424"; // window border bg Err codevoid.de 70 i static const char selbordercolor[] = "#990000"; // window border fg Err codevoid.de 70 i-static const unsigned int borderpx = 1; // border pixel of windows Err codevoid.de 70 i-static const unsigned int gappx = 10; // gap pixel between windows Err codevoid.de 70 i-static const unsigned int snap = 8; // snap pixel Err codevoid.de 70 i-static const unsigned int systraypinning = 1; // 0: systray follows mouse, >0: pin systray to monitor X Err codevoid.de 70 i+static const char normfloatbordercolor[] = "#00FF00"; // float window border bg Err codevoid.de 70 i+static const char selfloatbordercolor[] = "#00FF00"; // float window border fg Err codevoid.de 70 i+static const unsigned int borderpx = 1; // window border size px Err codevoid.de 70 i+static const unsigned int gappx = 10; // window gap size px Err codevoid.de 70 i+static const unsigned int snap = 8; // snap distance px Err codevoid.de 70 i+static const unsigned int systraypinning = 1; // 0: tray follows mouse Err codevoid.de 70 i+ // >0: pin tray to mon X Err codevoid.de 70 i static const unsigned int systrayspacing = 2; // systray spacing Err codevoid.de 70 i-static const int systraypinningfailfirst = 1; // 1 first monitor, 0 last monitor Err codevoid.de 70 i-static const int showsystray = 1; // 0 means no systray Err codevoid.de 70 i-static const int showbar = 1; // False means no bar Err codevoid.de 70 i-static const int topbar = 1; // False means bottom bar Err codevoid.de 70 i-static const int extrabar = 0; // False means no extra bar Err codevoid.de 70 i- Err codevoid.de 70 i-static const char *colors[][3] = { Err codevoid.de 70 i- /* fg bg border */ Err codevoid.de 70 i- [SchemeNorm] = { normfgcolor, normbgcolor, normbordercolor }, Err codevoid.de 70 i- [SchemeSel] = { selfgcolor, selbgcolor, selbordercolor }, Err codevoid.de 70 i+static const int systraypinningfailfirst = 1; // 1 first screen, 0 last Err codevoid.de 70 i+static const int showsystray = 1; // 0 = no systray Err codevoid.de 70 i+static const int showbar = 1; // 0 = no bar Err codevoid.de 70 i+static const int topbar = 1; // 0 = bottom bar Err codevoid.de 70 i+static const int extrabar = 0; // 0 = no extra bar Err codevoid.de 70 i+ Err codevoid.de 70 i+static const char *colors[][4] = { Err codevoid.de 70 i+ [SchemeNorm] = { Err codevoid.de 70 i+ normfgcolor, normbgcolor, normbordercolor, normfloatbordercolor Err codevoid.de 70 i+ }, Err codevoid.de 70 i+ [SchemeSel] = { Err codevoid.de 70 i+ /* fg bg border floatborder */ Err codevoid.de 70 i+ selfgcolor, selbgcolor, selbordercolor, selfloatbordercolor Err codevoid.de 70 i+ }, Err codevoid.de 70 i }; Err codevoid.de 70 i Err codevoid.de 70 i /* dmenu options */ Err codevoid.de 70 i-#define DMENUOPTS "-fn", FONT , "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor Err codevoid.de 70 i+#define DMENUOPTS "-fn", FONT, "-nb", normbgcolor, "-nf", normfgcolor, \ Err codevoid.de 70 i+ "-sb", selbgcolor, "-sf", selfgcolor Err codevoid.de 70 i Err codevoid.de 70 i /* tagging */ Err codevoid.de 70 i static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; Err codevoid.de 70 i Err codevoid.de 70 i+/* rules */ Err codevoid.de 70 i static const Rule rules[] = { Err codevoid.de 70 i- Err codevoid.de 70 i- // WM_CLASS(STRING) = "Pidgin", "Pidgin" Err codevoid.de 70 i- // WM_ICON_NAME(STRING) = "Buddy List" Err codevoid.de 70 i- // _NET_WM_ICON_NAME(UTF8_STRING) = "Buddy List" Err codevoid.de 70 i- Err codevoid.de 70 i- /* class instance title tags mask isfloating monitor neverfocus */ Err codevoid.de 70 i- { "TelegramDesktop", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i- { "mpv", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i- { "st-osd", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i- { "Gimp", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i- { "Pqiv", NULL, NULL, 0, True, -1, 1}, Err codevoid.de 70 i- { "Pidgin", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i- { "Seafile Client", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i- { "QSyncthingTray", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i+ /* class instance title tags mask isfloating mon neverfocus */ Err codevoid.de 70 i+ { "TelegramDesktop", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i+ { "mpv", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i+ { "st-osd", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i+ { "Gimp", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i+ { "Pqiv", NULL, NULL, 0, True, -1, 1}, Err codevoid.de 70 i+ { "Pidgin", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i+ { "Seafile Client", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i+ { "QSyncthingTray", NULL, NULL, 0, True, -1, 0}, Err codevoid.de 70 i }; Err codevoid.de 70 i Err codevoid.de 70 i /* layout(s) */ Err codevoid.de 70 i-static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */ Err codevoid.de 70 i-static const int nmaster = 1; /* number of clients in master area */ Err codevoid.de 70 i-static const int resizehints = 0; /* True means respect size hints in tiled resizals */ Err codevoid.de 70 i+static const float mfact = 0.55; // factor of master area size [0.05..0.95] Err codevoid.de 70 i+static const int nmaster = 1; // number of clients in master area Err codevoid.de 70 i+static const int resizehints = 0; // 1 = respect size hints in tiles Err codevoid.de 70 i Err codevoid.de 70 i static const Layout layouts[] = { Err codevoid.de 70 i /* symbol arrange function */ Err codevoid.de 70 i- { "[T]", tile }, /* first entry is default */ Err codevoid.de 70 i- { "[F]", NULL }, /* no layout function means floating behavior */ Err codevoid.de 70 i+ { "[T]", tile }, // first entry is default Err codevoid.de 70 i+ { "[F]", NULL }, // no layout function means floating behavior Err codevoid.de 70 i }; Err codevoid.de 70 i Err codevoid.de 70 i /* key definitions */ Err codevoid.de 70 it@@ -69,14 +73,13 @@ static const Layout layouts[] = { Err codevoid.de 70 i { MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \ Err codevoid.de 70 i { MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} }, Err codevoid.de 70 i Err codevoid.de 70 i-/* helper for spawning shell commands in the pre dwm-5.0 fashion */ Err codevoid.de 70 i-#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } } Err codevoid.de 70 i-static const char scratchpadname[] = "scratchpad"; Err codevoid.de 70 i Err codevoid.de 70 i /* commands */ Err codevoid.de 70 i static char dmenumon[2] = "0"; Err codevoid.de 70 i+static const char scratchpadname[] = "scratchpad"; Err codevoid.de 70 i static const char *dmenucmd[] = { "dmenu_run", DMENUOPTS, NULL }; Err codevoid.de 70 i Err codevoid.de 70 i+/* custom commands */ Err codevoid.de 70 i #ifdef __linux__ Err codevoid.de 70 i // @ WORK Err codevoid.de 70 i static const char *scratchpadcmd[] = { "st", "-f", "FiraCode-9", "-t", scratchpadname, "-g", "120x24", "-e", "mksh", NULL }; Err codevoid.de 70 it@@ -86,8 +89,8 @@ static const char *notescmd[] = { "st", "-e", "vim", "/N/notes.txt", NULL } Err codevoid.de 70 i #else Err codevoid.de 70 i // @ HOME Err codevoid.de 70 i static const char *termcmd[] = { "st", NULL }; Err codevoid.de 70 i-static const char *smalltermcmd[] = { "st","-f", "FiraCode-9", NULL }; Err codevoid.de 70 i-static const char *scratchpadcmd[] = { "st", "-f", "FiraCode-9", "-t", scratchpadname, "-g", "160x28", NULL }; Err codevoid.de 70 i+static const char *smalltermcmd[] = { "st","-f", "peep-10", NULL }; Err codevoid.de 70 i+static const char *scratchpadcmd[] = { "st", "-f", "peep-10", "-t", scratchpadname, "-g", "160x28", NULL }; Err codevoid.de 70 i static const char *notescmd[] = { "st", "-e", "vim", "~/work/notes.txt", NULL }; Err codevoid.de 70 i #endif Err codevoid.de 70 i static const char *browsercmd[] = { ".dwm/browser", DMENUOPTS, NULL }; Err codevoid.de 70 it@@ -101,77 +104,70 @@ static const char *unMute[] = { "mixerctl", "outputs.spkr_mute=off", NULL Err codevoid.de 70 i Err codevoid.de 70 i #include "maximize.c" Err codevoid.de 70 i static Key keys[] = { Err codevoid.de 70 i- /* modifier key function argument */ Err codevoid.de 70 i- Err codevoid.de 70 i- { 0, 0x1008ff13,spawn, {.v = updateStatus } }, Err codevoid.de 70 i- { 0, 0x1008ff11,spawn, {.v = updateStatus } }, Err codevoid.de 70 i- { 0, 0x1008ff12,spawn, {.v = unMute } }, Err codevoid.de 70 i- Err codevoid.de 70 i- { MODKEY, XK_d, spawn, {.v = dmenucmd } }, Err codevoid.de 70 i- { MODKEY, XK_Return, spawn, {.v = termcmd } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_Return, spawn, {.v = smalltermcmd } }, Err codevoid.de 70 i- Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_f, spawn, {.v = browsercmd } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_p, spawn, {.v = passmenucmd } }, Err codevoid.de 70 i- { MODKEY, XK_p, spawn, {.v = preview } }, Err codevoid.de 70 i- { MODKEY, XK_y, spawn, {.v = youtube } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_Print, spawn, {.v = sshot } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_o, spawn, {.v = notescmd } }, Err codevoid.de 70 i- Err codevoid.de 70 i- { MODKEY, XK_minus, togglescratch, {.v = scratchpadcmd } }, Err codevoid.de 70 i- Err codevoid.de 70 i- { MODKEY, XK_b, togglebar, {0} }, Err codevoid.de 70 i- //{ MODKEY, XK_b, toggleextrabar, {0} }, Err codevoid.de 70 i- Err codevoid.de 70 i- { MODKEY, XK_Down, focusstack, {.i = +1 } }, Err codevoid.de 70 i- { MODKEY, XK_Up, focusstack, {.i = -1 } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_Left, incnmaster, {.i = +1 } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_Right, incnmaster, {.i = -1 } }, Err codevoid.de 70 i- Err codevoid.de 70 i- { MODKEY, XK_m, zoom, {0} }, Err codevoid.de 70 i- { MODKEY, XK_h, setmfact, {.f = -0.05} }, Err codevoid.de 70 i- { MODKEY, XK_l, setmfact, {.f = +0.05} }, Err codevoid.de 70 i- { MODKEY, XK_Tab, view, {0} }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_q, killclient, {0} }, Err codevoid.de 70 i- //{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} }, Err codevoid.de 70 i- //{ MODKEY, XK_space, setlayout, {.v = &layouts[1]} }, Err codevoid.de 70 i- //{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} }, Err codevoid.de 70 i- { MODKEY, XK_f, togglemaximize, {0} }, Err codevoid.de 70 i- { MODKEY, XK_space, togglefloating, {0} }, Err codevoid.de 70 i- { MODKEY, XK_0, view, {.ui = ~0 } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } }, Err codevoid.de 70 i- { MODKEY, XK_comma, focusmon, {.i = -1 } }, Err codevoid.de 70 i- { MODKEY, XK_period, focusmon, {.i = +1 } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } }, Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } }, Err codevoid.de 70 i- { MODKEY, XK_Left, viewtoleft, {0} }, Err codevoid.de 70 i- { MODKEY, XK_Right, viewtoright, {0} }, Err codevoid.de 70 i- TAGKEYS( XK_1, 0) Err codevoid.de 70 i- TAGKEYS( XK_2, 1) Err codevoid.de 70 i- TAGKEYS( XK_3, 2) Err codevoid.de 70 i- TAGKEYS( XK_4, 3) Err codevoid.de 70 i- TAGKEYS( XK_5, 4) Err codevoid.de 70 i- TAGKEYS( XK_6, 5) Err codevoid.de 70 i- TAGKEYS( XK_7, 6) Err codevoid.de 70 i- TAGKEYS( XK_8, 7) Err codevoid.de 70 i- TAGKEYS( XK_9, 8) Err codevoid.de 70 i- { MODKEY|ShiftMask, XK_End, quit, {0} }, Err codevoid.de 70 i+ /* modifier key function argument */ Err codevoid.de 70 i+ { 0, 0x1008ff13, spawn, {.v = updateStatus } }, Err codevoid.de 70 i+ { 0, 0x1008ff11, spawn, {.v = updateStatus } }, Err codevoid.de 70 i+ { 0, 0x1008ff12, spawn, {.v = unMute } }, Err codevoid.de 70 i+ { MODKEY, XK_d, spawn, {.v = dmenucmd } }, Err codevoid.de 70 i+ { MODKEY, XK_Return, spawn, {.v = termcmd } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_Return, spawn, {.v = smalltermcmd } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_f, spawn, {.v = browsercmd } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_p, spawn, {.v = passmenucmd } }, Err codevoid.de 70 i+ { MODKEY, XK_p, spawn, {.v = preview } }, Err codevoid.de 70 i+ { MODKEY, XK_y, spawn, {.v = youtube } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_Print, spawn, {.v = sshot } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_o, spawn, {.v = notescmd } }, Err codevoid.de 70 i+ { MODKEY, XK_minus, togglescratch, {.v = scratchpadcmd } }, Err codevoid.de 70 i+ { MODKEY, XK_b, togglebar, {0} }, Err codevoid.de 70 i+ //{ MODKEY, XK_b, toggleextrabar, {0} }, Err codevoid.de 70 i+ { MODKEY, XK_Down, focusstack, {.i = +1 } }, Err codevoid.de 70 i+ { MODKEY, XK_Up, focusstack, {.i = -1 } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_Left, incnmaster, {.i = +1 } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_Right, incnmaster, {.i = -1 } }, Err codevoid.de 70 i+ { MODKEY, XK_m, zoom, {0} }, Err codevoid.de 70 i+ { MODKEY, XK_h, setmfact, {.f = -0.05} }, Err codevoid.de 70 i+ { MODKEY, XK_l, setmfact, {.f = +0.05} }, Err codevoid.de 70 i+ { MODKEY, XK_Tab, view, {0} }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_q, killclient, {0} }, Err codevoid.de 70 i+ //{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} }, Err codevoid.de 70 i+ //{ MODKEY, XK_m, setlayout, {.v = &layouts[1]} }, Err codevoid.de 70 i+ { MODKEY, XK_f, togglemaximize, {0} }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_space, togglefloating, {0} }, Err codevoid.de 70 i+ { MODKEY, XK_0, view, {.ui = ~0 } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } }, Err codevoid.de 70 i+ { MODKEY, XK_comma, focusmon, {.i = -1 } }, Err codevoid.de 70 i+ { MODKEY, XK_period, focusmon, {.i = +1 } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } }, Err codevoid.de 70 i+ //{ MODKEY|ShiftMask, XK_Left, viewtoleft, {0} }, Err codevoid.de 70 i+ //{ MODKEY|ShiftMask, XK_Right, viewtoright, {0} }, Err codevoid.de 70 i+ { MODKEY|ShiftMask, XK_End, quit, {0} }, Err codevoid.de 70 i+ TAGKEYS( XK_1, 0) Err codevoid.de 70 i+ TAGKEYS( XK_2, 1) Err codevoid.de 70 i+ TAGKEYS( XK_3, 2) Err codevoid.de 70 i+ TAGKEYS( XK_4, 3) Err codevoid.de 70 i+ TAGKEYS( XK_5, 4) Err codevoid.de 70 i+ TAGKEYS( XK_6, 5) Err codevoid.de 70 i+ TAGKEYS( XK_7, 6) Err codevoid.de 70 i+ TAGKEYS( XK_8, 7) Err codevoid.de 70 i+ TAGKEYS( XK_9, 8) Err codevoid.de 70 i+ Err codevoid.de 70 i }; Err codevoid.de 70 i Err codevoid.de 70 i-/* button definitions */ Err codevoid.de 70 i-/* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */ Err codevoid.de 70 i+/* button definitions; click can be: Err codevoid.de 70 i+ * ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, ClkRootWin */ Err codevoid.de 70 i static Button buttons[] = { Err codevoid.de 70 i- /* click event mask button function argument */ Err codevoid.de 70 i- { ClkLtSymbol, 0, Button1, setlayout, {0} }, Err codevoid.de 70 i- { ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} }, Err codevoid.de 70 i- { ClkWinTitle, 0, Button2, zoom, {0} }, Err codevoid.de 70 i- { ClkStatusText, 0, Button2, spawn, {.v = termcmd } }, Err codevoid.de 70 i- { ClkClientWin, MODKEY, Button1, movemouse, {0} }, Err codevoid.de 70 i- { ClkClientWin, MODKEY, Button2, togglefloating, {0} }, Err codevoid.de 70 i- { ClkClientWin, MODKEY, Button3, resizemouse, {0} }, Err codevoid.de 70 i- { ClkTagBar, 0, Button1, view, {0} }, Err codevoid.de 70 i- { ClkTagBar, 0, Button3, toggleview, {0} }, Err codevoid.de 70 i- { ClkTagBar, MODKEY, Button1, tag, {0} }, Err codevoid.de 70 i- { ClkTagBar, MODKEY, Button3, toggletag, {0} }, Err codevoid.de 70 i+ /* click event mask button function argument */ Err codevoid.de 70 i+ { ClkLtSymbol, 0, Button1, setlayout, {0} }, Err codevoid.de 70 i+ { ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} }, Err codevoid.de 70 i+ { ClkWinTitle, 0, Button2, zoom, {0} }, Err codevoid.de 70 i+ { ClkStatusText, 0, Button2, spawn, {.v = termcmd } }, Err codevoid.de 70 i+ { ClkClientWin, MODKEY, Button1, movemouse, {0} }, Err codevoid.de 70 i+ { ClkClientWin, MODKEY, Button2, togglefloating, {0} }, Err codevoid.de 70 i+ { ClkClientWin, MODKEY, Button3, resizemouse, {0} }, Err codevoid.de 70 i+ { ClkTagBar, 0, Button1, view, {0} }, Err codevoid.de 70 i+ { ClkTagBar, 0, Button3, toggleview, {0} }, Err codevoid.de 70 i+ { ClkTagBar, MODKEY, Button1, tag, {0} }, Err codevoid.de 70 i+ { ClkTagBar, MODKEY, Button3, toggletag, {0} }, Err codevoid.de 70 i }; Err codevoid.de 70 i Err codevoid.de 70 1diff --git a/config.mk b/config.mk /git/dwm-sdk/file/config.mk.gph codevoid.de 70 it@@ -11,14 +11,14 @@ X11INC = /usr/X11R6/include Err codevoid.de 70 i X11LIB = /usr/X11R6/lib Err codevoid.de 70 i Err codevoid.de 70 i # Xinerama, comment if you don't want it Err codevoid.de 70 i-XINERAMALIBS = -lXinerama Err codevoid.de 70 i-XINERAMAFLAGS = -DXINERAMA Err codevoid.de 70 i+#XINERAMALIBS = -lXinerama Err codevoid.de 70 i+#XINERAMAFLAGS = -DXINERAMA Err codevoid.de 70 i Err codevoid.de 70 i # freetype Err codevoid.de 70 i FREETYPELIBS = -lfontconfig -lXft Err codevoid.de 70 i FREETYPEINC = /usr/include/freetype2 Err codevoid.de 70 i # OpenBSD (uncomment) Err codevoid.de 70 i-#FREETYPEINC = ${X11INC}/freetype2 Err codevoid.de 70 i+FREETYPEINC = ${X11INC}/freetype2 Err codevoid.de 70 i Err codevoid.de 70 i # includes and libs Err codevoid.de 70 i INCS = -I${X11INC} -I${FREETYPEINC} Err codevoid.de 70 1diff --git a/drw.h b/drw.h /git/dwm-sdk/file/drw.h.gph codevoid.de 70 it@@ -12,7 +12,7 @@ typedef struct Fnt { Err codevoid.de 70 i struct Fnt *next; Err codevoid.de 70 i } Fnt; Err codevoid.de 70 i Err codevoid.de 70 i-enum { ColFg, ColBg, ColBorder }; /* Clr scheme index */ Err codevoid.de 70 i+enum { ColFg, ColBg, ColBorder, ColFloat }; /* Clr scheme index */ Err codevoid.de 70 i typedef XftColor Clr; Err codevoid.de 70 i Err codevoid.de 70 i typedef struct { Err codevoid.de 70 1diff --git a/dwm.c b/dwm.c /git/dwm-sdk/file/dwm.c.gph codevoid.de 70 it@@ -944,10 +944,13 @@ focus(Client *c) Err codevoid.de 70 i detachstack(c); Err codevoid.de 70 i attachstack(c); Err codevoid.de 70 i grabbuttons(c, 1); Err codevoid.de 70 i- if(c->ismax) Err codevoid.de 70 i+ if(c->ismax) { Err codevoid.de 70 i XSetWindowBorder(dpy, c->win, scheme[SchemeNorm][ColBg].pixel); Err codevoid.de 70 i- else Err codevoid.de 70 i+ } else if(c->isfloating) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColFloat].pixel); Err codevoid.de 70 i+ } else { Err codevoid.de 70 i XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColBorder].pixel); Err codevoid.de 70 i+ } Err codevoid.de 70 i setfocus(c); Err codevoid.de 70 i } else { Err codevoid.de 70 i XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime); Err codevoid.de 70 it@@ -1229,7 +1232,13 @@ manage(Window w, XWindowAttributes *wa) Err codevoid.de 70 i Err codevoid.de 70 i wc.border_width = c->bw; Err codevoid.de 70 i XConfigureWindow(dpy, w, CWBorderWidth, &wc); Err codevoid.de 70 i- XSetWindowBorder(dpy, w, scheme[SchemeNorm][ColBorder].pixel); Err codevoid.de 70 i+ if(c->ismax) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, c->win, scheme[SchemeNorm][ColBg].pixel); Err codevoid.de 70 i+ } else if(c->isfloating) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColFloat].pixel); Err codevoid.de 70 i+ } else { Err codevoid.de 70 i+ XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColBorder].pixel); Err codevoid.de 70 i+ } Err codevoid.de 70 i configure(c); /* propagates border_width, if size doesn't change */ Err codevoid.de 70 i updatewindowtype(c); Err codevoid.de 70 i updatesizehints(c); Err codevoid.de 70 it@@ -1240,6 +1249,13 @@ manage(Window w, XWindowAttributes *wa) Err codevoid.de 70 i c->isfloating = c->oldstate = trans != None || c->isfixed; Err codevoid.de 70 i if (c->isfloating) Err codevoid.de 70 i XRaiseWindow(dpy, c->win); Err codevoid.de 70 i+ if(c->ismax) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, c->win, scheme[SchemeNorm][ColBg].pixel); Err codevoid.de 70 i+ } else if(c->isfloating) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColFloat].pixel); Err codevoid.de 70 i+ } else { Err codevoid.de 70 i+ XSetWindowBorder(dpy, c->win, scheme[SchemeSel][ColBorder].pixel); Err codevoid.de 70 i+ } Err codevoid.de 70 i attach(c); Err codevoid.de 70 i attachstack(c); Err codevoid.de 70 i XChangeProperty(dpy, root, netatom[NetClientList], XA_WINDOW, 32, PropModeAppend, Err codevoid.de 70 it@@ -1988,6 +2004,13 @@ togglefloating(const Arg *arg) Err codevoid.de 70 i if (selmon->sel->isfullscreen) /* no support for fullscreen windows */ Err codevoid.de 70 i return; Err codevoid.de 70 i selmon->sel->isfloating = !selmon->sel->isfloating || selmon->sel->isfixed; Err codevoid.de 70 i+ if(selmon->sel->ismax) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, selmon->sel->win, scheme[SchemeNorm][ColBg].pixel); Err codevoid.de 70 i+ } else if(selmon->sel->isfloating) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, selmon->sel->win, scheme[SchemeSel][ColFloat].pixel); Err codevoid.de 70 i+ } else { Err codevoid.de 70 i+ XSetWindowBorder(dpy, selmon->sel->win, scheme[SchemeSel][ColBorder].pixel); Err codevoid.de 70 i+ } Err codevoid.de 70 i if (selmon->sel->isfloating) Err codevoid.de 70 i resize(selmon->sel, selmon->sel->x, selmon->sel->y, Err codevoid.de 70 i selmon->sel->w, selmon->sel->h, 0); Err codevoid.de 70 1diff --git a/maximize.c b/maximize.c /git/dwm-sdk/file/maximize.c.gph codevoid.de 70 it@@ -47,6 +47,11 @@ restore() { Err codevoid.de 70 i togglefloating(NULL); Err codevoid.de 70 i selmon->sel->ismax = False; Err codevoid.de 70 i } Err codevoid.de 70 i+ if(selmon->sel->isfloating) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, selmon->sel->win, scheme[SchemeSel][ColFloat].pixel); Err codevoid.de 70 i+ } else { Err codevoid.de 70 i+ XSetWindowBorder(dpy, selmon->sel->win, scheme[SchemeSel][ColBorder].pixel); Err codevoid.de 70 i+ } Err codevoid.de 70 i drawbar(selmon); Err codevoid.de 70 i while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); Err codevoid.de 70 i } Err codevoid.de 70 it@@ -54,4 +59,9 @@ restore() { Err codevoid.de 70 i void Err codevoid.de 70 i togglemaximize(const Arg *arg) { Err codevoid.de 70 i maximize(selmon->wx, selmon->wy, selmon->ww - 2 * borderpx, selmon->wh - 2 * borderpx); Err codevoid.de 70 i+ if(selmon->sel->isfloating) { Err codevoid.de 70 i+ XSetWindowBorder(dpy, selmon->sel->win, scheme[SchemeSel][ColFloat].pixel); Err codevoid.de 70 i+ } else { Err codevoid.de 70 i+ XSetWindowBorder(dpy, selmon->sel->win, scheme[SchemeSel][ColBorder].pixel); Err codevoid.de 70 i+ } Err codevoid.de 70 i } Err codevoid.de 70 .