34 lines
889 B
Diff
34 lines
889 B
Diff
diff -Naur -Naur yae-0.7/x_window.c yae-0.7.patched/x_window.c
|
|
--- yae-0.7/x_window.c 2007-04-03 17:47:59.000000000 -0400
|
|
+++ yae-0.7.patched/x_window.c 2021-10-12 00:23:48.765550342 -0400
|
|
@@ -57,6 +57,8 @@
|
|
|
|
static Cursor InvisibleCursor;
|
|
|
|
+static Atom delete_atom;
|
|
+
|
|
Visual *getVisual( Display *dpy, int screen, int depth, int class )
|
|
{
|
|
XVisualInfo vinfo, *vinfoList;
|
|
@@ -219,6 +221,9 @@
|
|
XFlush( dc->display );
|
|
#endif
|
|
|
|
+ delete_atom = XInternAtom(dc->display, "WM_DELETE_WINDOW", False);
|
|
+ XSetWMProtocols(dc->display, dc->window, &delete_atom, 1);
|
|
+
|
|
/*
|
|
* startup micro job for X window
|
|
*/
|
|
@@ -313,6 +318,10 @@
|
|
#endif
|
|
refreshScreen();
|
|
break;
|
|
+ case ClientMessage:
|
|
+ if(event.xclient.data.l[0] == delete_atom)
|
|
+ shutdown_6502();
|
|
+ break;
|
|
case DestroyNotify:
|
|
Signal6502( SIG_6502_SHUTDOWN );
|
|
break;
|