Xinqi Bao's Git

patch: actualfullscreen
[dwm.git] / patches / dwm-actualfullscreen-20211013-cb3f58a.diff
1 From eea13010ffc3983392857ee1e3804e3aa1064d7a Mon Sep 17 00:00:00 2001
2 From: Soenke Lambert <s.lambert@mittwald.de>
3 Date: Wed, 13 Oct 2021 18:21:09 +0200
4 Subject: [PATCH] Fullscreen current window with [Alt]+[Shift]+[f]
5
6 This actually fullscreens a window, instead of just hiding the statusbar
7 and applying the monocle layout.
8 ---
9 config.def.h | 1 +
10 dwm.1 | 3 +++
11 dwm.c | 8 ++++++++
12 3 files changed, 12 insertions(+)
13
14 diff --git a/config.def.h b/config.def.h
15 index 1c0b587..8cd3204 100644
16 --- a/config.def.h
17 +++ b/config.def.h
18 @@ -78,6 +78,7 @@ static Key keys[] = {
19 { MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
20 { MODKEY, XK_space, setlayout, {0} },
21 { MODKEY|ShiftMask, XK_space, togglefloating, {0} },
22 + { MODKEY|ShiftMask, XK_f, togglefullscr, {0} },
23 { MODKEY, XK_0, view, {.ui = ~0 } },
24 { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
25 { MODKEY, XK_comma, focusmon, {.i = -1 } },
26 diff --git a/dwm.1 b/dwm.1
27 index 13b3729..a368d05 100644
28 --- a/dwm.1
29 +++ b/dwm.1
30 @@ -116,6 +116,9 @@ Zooms/cycles focused window to/from master area (tiled layouts only).
31 .B Mod1\-Shift\-c
32 Close focused window.
33 .TP
34 +.B Mod1\-Shift\-f
35 +Toggle fullscreen for focused window.
36 +.TP
37 .B Mod1\-Shift\-space
38 Toggle focused window between tiled and floating state.
39 .TP
40 diff --git a/dwm.c b/dwm.c
41 index 4465af1..c1b899a 100644
42 --- a/dwm.c
43 +++ b/dwm.c
44 @@ -211,6 +211,7 @@ static void tagmon(const Arg *arg);
45 static void tile(Monitor *);
46 static void togglebar(const Arg *arg);
47 static void togglefloating(const Arg *arg);
48 +static void togglefullscr(const Arg *arg);
49 static void toggletag(const Arg *arg);
50 static void toggleview(const Arg *arg);
51 static void unfocus(Client *c, int setfocus);
52 @@ -1719,6 +1720,13 @@ togglefloating(const Arg *arg)
53 arrange(selmon);
54 }
55
56 +void
57 +togglefullscr(const Arg *arg)
58 +{
59 + if(selmon->sel)
60 + setfullscreen(selmon->sel, !selmon->sel->isfullscreen);
61 +}
62 +
63 void
64 toggletag(const Arg *arg)
65 {
66 --
67 2.30.2
68