This commit is contained in:
NaiJi ✨ 2026-06-07 00:26:17 -04:00
parent 05eac82d7e
commit 83f415b724

20
main.c
View File

@ -14,26 +14,26 @@ int main()
Atom WM_DELETE_WINDOW = XInternAtom(display, "WM_DELETE_WINDOW", False); Atom WM_DELETE_WINDOW = XInternAtom(display, "WM_DELETE_WINDOW", False);
if(!XSetWMProtocols(display, window, &WM_DELETE_WINDOW, 1)) if(!XSetWMProtocols(display, window, &WM_DELETE_WINDOW, 1))
{ {
printf("Couldn't register WM_DELETE_WINDOW property \n"); printf("Couldn't register WM_DELETE_WINDOW property \n");
} }
int is_open = 1; int is_open = 1;
while(is_open) while(is_open)
{ {
XEvent general_event = {}; XEvent general_event = {};
XNextEvent(display, &general_event); XNextEvent(display, &general_event);
switch(general_event.type) switch(general_event.type)
{ {
case ClientMessage: case ClientMessage:
{ {
XClientMessageEvent *event = (XClientMessageEvent *) &general_event; XClientMessageEvent *event = (XClientMessageEvent *) &general_event;
if((Atom)event->data.l[0] == WM_DELETE_WINDOW) { if((Atom)event->data.l[0] == WM_DELETE_WINDOW) {
XDestroyWindow(display, window); XDestroyWindow(display, window);
is_open = 0; is_open = 0;
printf("Window destroyed \n"); printf("Window destroyed \n");
} }
} break; } break;
} }
} }