Introduction
Introduction Statistics Contact Development Disclaimer Help
st-fullscreen-0.8.5.diff - sites - public wiki contents of suckless.org
git clone git://git.suckless.org/sites
Log
Files
Refs
---
st-fullscreen-0.8.5.diff (2110B)
---
1 diff -r -u a/config.def.h b/config.def.h
2 --- a/config.def.h 2022-01-07 06:41:35.000000000 -0500
3 +++ b/config.def.h 2022-01-15 13:32:01.644320198 -0500
4 @@ -201,6 +201,8 @@
5 { TERMMOD, XK_Y, selpaste, {.i = …
6 { ShiftMask, XK_Insert, selpaste, {.i = …
7 { TERMMOD, XK_Num_Lock, numlock, {.i = …
8 + { XK_NO_MOD, XK_F11, fullscreen, {.i = …
9 + { MODKEY, XK_Return, fullscreen, {.i = …
10 };
11
12 /*
13 diff -r -u a/st.h b/st.h
14 --- a/st.h 2022-01-07 06:41:35.000000000 -0500
15 +++ b/st.h 2022-01-15 13:32:40.084320514 -0500
16 @@ -81,6 +81,7 @@
17 void redraw(void);
18 void draw(void);
19
20 +void fullscreen(const Arg *);
21 void printscreen(const Arg *);
22 void printsel(const Arg *);
23 void sendbreak(const Arg *);
24 diff -r -u a/x.c b/x.c
25 --- a/x.c 2022-01-07 06:41:35.000000000 -0500
26 +++ b/x.c 2022-01-15 13:50:28.164329295 -0500
27 @@ -94,6 +94,7 @@
28 Drawable buf;
29 GlyphFontSpec *specbuf; /* font spec buffer used for rendering …
30 Atom xembed, wmdeletewin, netwmname, netwmiconname, netwmpid;
31 + Atom netwmstate, netwmfullscreen;
32 struct {
33 XIM xim;
34 XIC xic;
35 @@ -744,6 +745,24 @@
36 xw.specbuf = xrealloc(xw.specbuf, col * sizeof(GlyphFontSpec));
37 }
38
39 +void
40 +fullscreen(const Arg *arg)
41 +{
42 + XEvent ev;
43 +
44 + memset(&ev, 0, sizeof(ev));
45 +
46 + ev.xclient.type = ClientMessage;
47 + ev.xclient.message_type = xw.netwmstate;
48 + ev.xclient.display = xw.dpy;
49 + ev.xclient.window = xw.win;
50 + ev.xclient.format = 32;
51 + ev.xclient.data.l[0] = 2; /* _NET_WM_STATE_TOGGLE */
52 + ev.xclient.data.l[1] = xw.netwmfullscreen;
53 +
54 + XSendEvent(xw.dpy, DefaultRootWindow(xw.dpy), False, Substructu…
55 +}
56 +
57 ushort
58 sixd_to_16bit(int x)
59 {
60 @@ -1208,6 +1227,9 @@
61 XChangeProperty(xw.dpy, xw.win, xw.netwmpid, XA_CARDINAL, 32,
62 PropModeReplace, (uchar *)&thispid, 1);
63
64 + xw.netwmstate = XInternAtom(xw.dpy, "_NET_WM_STATE", False);
65 + xw.netwmfullscreen = XInternAtom(xw.dpy, "_NET_WM_STATE_FULLSCR…
66 +
67 win.mode = MODE_NUMLOCK;
68 resettitle();
69 xhints();
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.