From b9987ad725de709fb4dc07a9046cd562635f1b85 Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Mon, 4 Aug 2003 15:27:49 +0000 Subject: [PATCH] 2003-08-04 Tor Lillqvist * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 46dade2386..13bbeb1776 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,10 @@ +2003-08-04 Tor Lillqvist * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 46dade2386..13bbeb1776 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,10 @@ +2003-08-04 Tor Lillqvist * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 46dade2386..13bbeb1776 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,10 @@ +2003-08-04 Tor Lillqvist * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 46dade2386..13bbeb1776 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,10 @@ +2003-08-04 Tor Lillqvist * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): diff --git a/gdk/win32/gdkevents-win32.c b/gdk/win32/gdkevents-win32.c index f31aaf10bc..8d97a5c655 100644 --- a/gdk/win32/gdkevents-win32.c +++ b/gdk/win32/gdkevents-win32.c @@ -1090,6 +1090,7 @@ fill_key_event_string (GdkEvent *event) static GdkFilterReturn apply_filters (GdkDisplay *display, + GdkWindow *window, MSG *msg, GList *filters) { @@ -1097,6 +1098,11 @@ apply_filters (GdkDisplay *display, GdkEvent *event = gdk_event_new (GDK_NOTHING); GList *node; + if (window != NULL) + { + event->any.window = window; + g_object_ref (window); + } ((GdkEventPrivate *)event)->flags |= GDK_EVENT_PENDING; /* I think GdkFilterFunc semantics require the passed-in event @@ -1105,7 +1111,7 @@ apply_filters (GdkDisplay *display, */ node = _gdk_event_queue_append (display, event); - result = gdk_event_apply_filters (msg, event, _gdk_default_filters); + result = gdk_event_apply_filters (msg, event, filters); if (result == GDK_FILTER_CONTINUE || result == GDK_FILTER_REMOVE) { @@ -1844,7 +1850,7 @@ gdk_event_translate (GdkDisplay *display, /* Apply global filters */ GdkFilterReturn result = - apply_filters (display, msg, _gdk_default_filters); + apply_filters (display, NULL, msg, _gdk_default_filters); /* If result is GDK_FILTER_CONTINUE, we continue as if nothing * happened. If it is GDK_FILTER_REMOVE, we return FALSE from @@ -1916,7 +1922,7 @@ gdk_event_translate (GdkDisplay *display, /* Apply per-window filters */ GdkFilterReturn result = - apply_filters (display, msg, ((GdkWindowObject *) window)->filters); + apply_filters (display, window, msg, ((GdkWindowObject *) window)->filters); if (result == GDK_FILTER_REMOVE) { @@ -1999,7 +2005,7 @@ gdk_event_translate (GdkDisplay *display, GList *this_filter = g_list_append (NULL, filter); GdkFilterReturn result = - apply_filters (display, msg, this_filter); + apply_filters (display, window, msg, this_filter); GDK_NOTE (EVENTS, g_print ("Client filter match\n"));