[gtk+] Initialize missing methods on Windows
- From: Tor Lillqvist <tml src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gtk+] Initialize missing methods on Windows
- Date: Thu, 13 Aug 2009 19:51:47 +0000 (UTC)
commit 341b8a47529ad5f1bddee19cb6e32fac6c7b8856
Author: Tor Lillqvist <tml iki fi>
Date: Thu Aug 13 22:49:35 2009 +0300
Initialize missing methods on Windows
Set the input_window_destroy and input_window_crossing methods of the
GdkWindowImplIface on Windows. Add implementation of
_gdk_input_crossing_event that is mostly dummy, though.
gdk/win32/gdkinput-win32.h | 8 ++++++--
gdk/win32/gdkinput.c | 28 ++++++++++++++++++++++++++++
gdk/win32/gdkwindow-win32.c | 2 ++
3 files changed, 36 insertions(+), 2 deletions(-)
---
diff --git a/gdk/win32/gdkinput-win32.h b/gdk/win32/gdkinput-win32.h
index 3d168e1..608d8f9 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 477f4e3..ddf1d91 100644
--- a/gdk/win32/gdkinput.c
+++ b/gdk/win32/gdkinput.c
@@ -311,6 +311,34 @@ _gdk_input_window_destroy (GdkWindow *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)
{
GList *tmp_list;
diff --git a/gdk/win32/gdkwindow-win32.c b/gdk/win32/gdkwindow-win32.c
index 1380f0b..b70be3c 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;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]