From c4d87e2f81f752c709898dd9d91505c5257890e8 Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Sat, 17 Apr 2010 17:27:53 +0200 Subject: [PATCH] handle destroynotify events --- include/handlers.h | 3 +-- src/handlers.c | 15 +++++++-------- src/nc.c | 2 +- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/include/handlers.h b/include/handlers.h index 270822b8..12d64c48 100644 --- a/include/handlers.h +++ b/include/handlers.h @@ -97,7 +97,7 @@ int handle_configure_request(void *prophs, xcb_connection_t *conn, * */ int handle_unmap_notify_event(void *data, xcb_connection_t *conn, xcb_unmap_notify_event_t *event); -#if 0 + /** * A destroy notify event is sent when the window is not unmapped, but * immediately destroyed (for example when starting a window and immediately @@ -110,7 +110,6 @@ int handle_unmap_notify_event(void *data, xcb_connection_t *conn, xcb_unmap_noti int handle_destroy_notify_event(void *data, xcb_connection_t *conn, xcb_destroy_notify_event_t *event); -#endif /** * Called when a window changes its title * diff --git a/src/handlers.c b/src/handlers.c index 0d2f10bf..535d963e 100644 --- a/src/handlers.c +++ b/src/handlers.c @@ -507,7 +507,6 @@ int handle_unmap_notify_event(void *data, xcb_connection_t *conn, xcb_unmap_noti return 1; } -#if 0 /* * A destroy notify event is sent when the window is not unmapped, but * immediately destroyed (for example when starting a window and immediately @@ -518,16 +517,16 @@ int handle_unmap_notify_event(void *data, xcb_connection_t *conn, xcb_unmap_noti * */ int handle_destroy_notify_event(void *data, xcb_connection_t *conn, xcb_destroy_notify_event_t *event) { - DLOG("destroy notify for 0x%08x, 0x%08x\n", event->event, event->window); + DLOG("destroy notify for 0x%08x, 0x%08x\n", event->event, event->window); - xcb_unmap_notify_event_t unmap; - unmap.sequence = event->sequence; - unmap.event = event->event; - unmap.window = event->window; + xcb_unmap_notify_event_t unmap; + unmap.sequence = event->sequence; + unmap.event = event->event; + unmap.window = event->window; - return handle_unmap_notify_event(NULL, conn, &unmap); + return handle_unmap_notify_event(NULL, conn, &unmap); } -#endif + /* * Called when a window changes its title * diff --git a/src/nc.c b/src/nc.c index 869a6f86..8cd325a8 100644 --- a/src/nc.c +++ b/src/nc.c @@ -272,7 +272,7 @@ int main(int argc, char *argv[]) { xcb_event_set_map_request_handler(&evenths, handle_map_request, NULL); xcb_event_set_unmap_notify_handler(&evenths, handle_unmap_notify_event, NULL); - //xcb_event_set_destroy_notify_handler(&evenths, handle_destroy_notify_event, NULL); + xcb_event_set_destroy_notify_handler(&evenths, handle_destroy_notify_event, NULL); xcb_event_set_expose_handler(&evenths, handle_expose_event, NULL); -- 2.39.5