dwm-fakefullscreen-20170508-ceac8c9.diff - sites - public wiki contents of suckless.org
(HTM) git clone git://git.suckless.org/sites
(DIR) Log
(DIR) Files
(DIR) Refs
---
dwm-fakefullscreen-20170508-ceac8c9.diff (2962B)
---
1 diff --git a/dwm.c b/dwm.c
2 index a5ce993..42d2049 100644
3 --- a/dwm.c
4 +++ b/dwm.c
5 @@ -522,7 +522,7 @@ clientmessage(XEvent *e)
6 if (cme->data.l[1] == netatom[NetWMFullscreen]
7 || cme->data.l[2] == netatom[NetWMFullscreen])
8 setfullscreen(c, (cme->data.l[0] == 1 /* _NET_WM_STATE_ADD */
9 - || (cme->data.l[0] == 2 /* _NET_WM_STATE_TOGGLE */ && !c->isfullscreen)));
10 + || cme->data.l[0] == 2 /* _NET_WM_STATE_TOGGLE */));
11 } else if (cme->message_type == netatom[NetActiveWindow]) {
12 if (c != selmon->sel && !c->isurgent)
13 seturgent(c, 1);
14 @@ -552,7 +552,6 @@ void
15 configurenotify(XEvent *e)
16 {
17 Monitor *m;
18 - Client *c;
19 XConfigureEvent *ev = &e->xconfigure;
20 int dirty;
21
22 @@ -565,9 +564,6 @@ configurenotify(XEvent *e)
23 drw_resize(drw, sw, bh);
24 updatebars();
25 for (m = mons; m; m = m->next) {
26 - for (c = m->clients; c; c = c->next)
27 - if (c->isfullscreen)
28 - resizeclient(c, m->mx, m->my, m->mw, m->mh);
29 XMoveResizeWindow(dpy, m->barwin, m->wx, m->by, m->ww, bh);
30 }
31 focus(NULL);
32 @@ -1145,8 +1141,6 @@ movemouse(const Arg *arg)
33
34 if (!(c = selmon->sel))
35 return;
36 - if (c->isfullscreen) /* no support moving fullscreen windows by mouse */
37 - return;
38 restack(selmon);
39 ocx = c->x;
40 ocy = c->y;
41 @@ -1300,8 +1294,6 @@ resizemouse(const Arg *arg)
42
43 if (!(c = selmon->sel))
44 return;
45 - if (c->isfullscreen) /* no support resizing fullscreen windows by mouse */
46 - return;
47 restack(selmon);
48 ocx = c->x;
49 ocy = c->y;
50 @@ -1478,24 +1470,10 @@ setfullscreen(Client *c, int fullscreen)
51 XChangeProperty(dpy, c->win, netatom[NetWMState], XA_ATOM, 32,
52 PropModeReplace, (unsigned char*)&netatom[NetWMFullscreen], 1);
53 c->isfullscreen = 1;
54 - c->oldstate = c->isfloating;
55 - c->oldbw = c->bw;
56 - c->bw = 0;
57 - c->isfloating = 1;
58 - resizeclient(c, c->mon->mx, c->mon->my, c->mon->mw, c->mon->mh);
59 - XRaiseWindow(dpy, c->win);
60 } else if (!fullscreen && c->isfullscreen){
61 XChangeProperty(dpy, c->win, netatom[NetWMState], XA_ATOM, 32,
62 PropModeReplace, (unsigned char*)0, 0);
63 c->isfullscreen = 0;
64 - c->isfloating = c->oldstate;
65 - c->bw = c->oldbw;
66 - c->x = c->oldx;
67 - c->y = c->oldy;
68 - c->w = c->oldw;
69 - c->h = c->oldh;
70 - resizeclient(c, c->x, c->y, c->w, c->h);
71 - arrange(c->mon);
72 }
73 }
74
75 @@ -1620,7 +1598,7 @@ showhide(Client *c)
76 if (ISVISIBLE(c)) {
77 /* show clients top down */
78 XMoveWindow(dpy, c->win, c->x, c->y);
79 - if ((!c->mon->lt[c->mon->sellt]->arrange || c->isfloating) && !c->isfullscreen)
80 + if (!c->mon->lt[c->mon->sellt]->arrange || c->isfloating)
81 resize(c, c->x, c->y, c->w, c->h, 0);
82 showhide(c->snext);
83 } else {
84 @@ -1712,8 +1690,6 @@ togglefloating(const Arg *arg)
85 {
86 if (!selmon->sel)
87 return;
88 - if (selmon->sel->isfullscreen) /* no support for fullscreen windows */
89 - return;
90 selmon->sel->isfloating = !selmon->sel->isfloating || selmon->sel->isfixed;
91 if (selmon->sel->isfloating)
92 resize(selmon->sel, selmon->sel->x, selmon->sel->y,