Handle exit message from window manager on Linux

This commit is contained in:
Josh Simmons 2013-10-05 14:41:22 +10:00
parent e6eaea7591
commit 6c5c7786ca

View file

@ -160,6 +160,11 @@ namespace entry
, &windowAttrs
);
const char *wmDeleteWindowName = "WM_DELETE_WINDOW";
Atom wmDeleteWindow;
XInternAtoms(m_display, (char **)&wmDeleteWindowName, 1, False, &wmDeleteWindow);
XSetWMProtocols(m_display, m_window, &wmDeleteWindow, 1);
XMapWindow(m_display, m_window);
XStoreName(m_display, m_window, "BGFX");
@ -187,6 +192,13 @@ namespace entry
case ConfigureNotify:
break;
case ClientMessage:
if((Atom)event.xclient.data.l[0] == wmDeleteWindow)
{
m_eventQueue.postExitEvent();
}
break;
case ButtonPress:
case ButtonRelease:
{