27 lines
738 B
D
27 lines
738 B
D
module patch.fullscreen;
|
|
|
|
import st;
|
|
import x;
|
|
import config;
|
|
import patches;
|
|
import deimos.X11.Xlib;
|
|
import core.stdc.string;
|
|
|
|
static if (isPatchEnabled!"FULLSCREEN_PATCH") {
|
|
extern(C) void fullscreen(const(Arg)* arg) {
|
|
XEvent ev;
|
|
|
|
memset(&ev, 0, XEvent.sizeof);
|
|
|
|
ev.xclient.type = ClientMessage;
|
|
ev.xclient.message_type = xw.netwmstate;
|
|
ev.xclient.display = xw.dpy;
|
|
ev.xclient.window = xw.win;
|
|
ev.xclient.format = 32;
|
|
ev.xclient.data.l[0] = 2; /* _NET_WM_STATE_TOGGLE */
|
|
ev.xclient.data.l[1] = xw.netwmfullscreen;
|
|
|
|
XSendEvent(xw.dpy, DefaultRootWindow(xw.dpy), False,
|
|
SubstructureNotifyMask | SubstructureRedirectMask, &ev);
|
|
}
|
|
} |