これまで、XCloseDisplayでXサーバとのセッションを切断して、そのままプログラム終了という形で書いてきたが、正しいウィンドウの閉じ方、終了の仕方ではないので、XDestroyWindowでウィンドウを閉じる。
Manpage of XDestroyWindow
X Window System(X11)のプログラムを正常に終了させる方法 - Qiita
ClientMessageで、WM_DELETE_WINDOWなら、XDestroyWindowでウィンドウを破棄。
そうすると、
DestroyNotifyに来るので、XCloseDisplayとプログラムの終了である"return 0;"を通る。
これが正しいプログラム終了と。
で、これで実際に動かしてみたら、DestroyNotifyに来ない。
clear/wm_devel/2011-08-16 - 電気通信大学MMA
どうもStructureNotifyMaskが必要みたいで、
こうすると、
この状態から閉じると、
DestroyNotifyに来ているのがわかる。
Sample/xlib/XDestroyWindow/XDestroyWindow/src/XDestroyWindow at master · bg1bgst333/Sample · GitHub