diff --git a/gdk/win32/gdkinput-win32.h b/gdk/win32/gdkinput-win32.h index 3d168e102..608d8f99d 100644 --- a/gdk/win32/gdkinput-win32.h +++ b/gdk/win32/gdkinput-win32.h @@ -108,12 +108,16 @@ GdkTimeCoord ** _gdk_device_allocate_history (GdkDevice *device, /* The following functions are provided by each implementation * (just wintab for now) */ -void _gdk_input_configure_event (GdkWindow *window); -void _gdk_input_enter_event (GdkWindow *window); +void _gdk_input_configure_event (GdkWindow *window); +void _gdk_input_enter_event (GdkWindow *window); gboolean _gdk_input_other_event (GdkEvent *event, MSG *msg, GdkWindow *window); +void _gdk_input_crossing_event (GdkWindow *window, + gboolean enter); + + /* These should be in gdkinternals.h */ GdkInputWindow *_gdk_input_window_find (GdkWindow *window); diff --git a/gdk/win32/gdkinput.c b/gdk/win32/gdkinput.c index 477f4e383..ddf1d91e7 100644 --- a/gdk/win32/gdkinput.c +++ b/gdk/win32/gdkinput.c @@ -310,6 +310,34 @@ _gdk_input_window_destroy (GdkWindow *window) g_free(input_window); } +void +_gdk_input_crossing_event (GdkWindow *window, + gboolean enter) +{ + GdkWindowObject *priv = (GdkWindowObject *)window; + GdkInputWindow *input_window; + gint root_x, root_y; + + if (enter) + { +#if 0 + /* No idea what to do... */ +#if 0 + gdk_input_check_proximity(display); +#endif + input_window = priv->input_window; + if (input_window != NULL) + { + _gdk_input_get_root_relative_geometry (window, &root_x, &root_y); + input_window->root_x = root_x; + input_window->root_y = root_y; + } +#endif + } + else + _gdk_input_ignore_core = FALSE; +} + void _gdk_input_exit (void) { diff --git a/gdk/win32/gdkwindow-win32.c b/gdk/win32/gdkwindow-win32.c index 1380f0bd9..b70be3cbf 100644 --- a/gdk/win32/gdkwindow-win32.c +++ b/gdk/win32/gdkwindow-win32.c @@ -3657,4 +3657,6 @@ gdk_window_impl_iface_init (GdkWindowImplIface *iface) iface->queue_antiexpose = _gdk_win32_window_queue_antiexpose; iface->queue_translation = _gdk_win32_window_queue_translation; iface->destroy = _gdk_win32_window_destroy; + iface->input_window_destroy = _gdk_input_window_destroy; + iface->input_window_crossing = _gdk_input_crossing_event; }