dwm-actualfullscreen-20211013-cb3f58a.diff - sites - public wiki contents of suckless.org
 (HTM) git clone git://git.suckless.org/sites
 (DIR) Log
 (DIR) Files
 (DIR) Refs
       ---
       dwm-actualfullscreen-20211013-cb3f58a.diff (2140B)
       ---
            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