diff options
Diffstat (limited to 'WebKitTools/DumpRenderTree/gtk/EventSender.cpp')
-rw-r--r-- | WebKitTools/DumpRenderTree/gtk/EventSender.cpp | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/WebKitTools/DumpRenderTree/gtk/EventSender.cpp b/WebKitTools/DumpRenderTree/gtk/EventSender.cpp index 7836ff0..4936fe5 100644 --- a/WebKitTools/DumpRenderTree/gtk/EventSender.cpp +++ b/WebKitTools/DumpRenderTree/gtk/EventSender.cpp @@ -96,6 +96,14 @@ static void gdk_window_get_root_coords(GdkWindow* window, gint x, gint y, gint* } #endif +#if !GTK_CHECK_VERSION(2, 14, 0) +static GdkWindow* gtk_widget_get_window(GtkWidget* widget) +{ + g_return_val_if_fail(GTK_IS_WIDGET(widget), 0); + return widget->window; +} +#endif + static JSValueRef getDragModeCallback(JSContextRef context, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) { return JSValueMakeBoolean(context, dragMode); @@ -139,13 +147,13 @@ bool prepareMouseButtonEvent(GdkEvent* event, int eventSenderButtonNumber) event->button.button = gdkButtonNumber; event->button.x = lastMousePositionX; event->button.y = lastMousePositionY; - event->button.window = GTK_WIDGET(view)->window; + event->button.window = gtk_widget_get_window(GTK_WIDGET(view)); event->button.device = gdk_device_get_core_pointer(); event->button.state = getStateFlags(); event->button.time = GDK_CURRENT_TIME; int xRoot, yRoot; - gdk_window_get_root_coords(GTK_WIDGET(view)->window, lastMousePositionX, lastMousePositionY, &xRoot, &yRoot); + gdk_window_get_root_coords(gtk_widget_get_window(GTK_WIDGET(view)), lastMousePositionX, lastMousePositionY, &xRoot, &yRoot); event->button.x_root = xRoot; event->button.y_root = yRoot; @@ -266,12 +274,12 @@ static JSValueRef mouseMoveToCallback(JSContextRef context, JSObjectRef function event.motion.y = lastMousePositionY; event.motion.time = GDK_CURRENT_TIME; - event.motion.window = GTK_WIDGET(view)->window; + event.motion.window = gtk_widget_get_window(GTK_WIDGET(view)); event.motion.device = gdk_device_get_core_pointer(); event.motion.state = getStateFlags(); int xRoot, yRoot; - gdk_window_get_root_coords(GTK_WIDGET(view)->window, lastMousePositionX, lastMousePositionY, &xRoot, &yRoot); + gdk_window_get_root_coords(gtk_widget_get_window(GTK_WIDGET(view)), lastMousePositionX, lastMousePositionY, &xRoot, &yRoot); event.motion.x_root = xRoot; event.motion.y_root = yRoot; @@ -301,7 +309,7 @@ static JSValueRef mouseWheelToCallback(JSContextRef context, JSObjectRef functio event.scroll.x = lastMousePositionX; event.scroll.y = lastMousePositionY; event.scroll.time = GDK_CURRENT_TIME; - event.scroll.window = GTK_WIDGET(view)->window; + event.scroll.window = gtk_widget_get_window(GTK_WIDGET(view)); if (horizontal < 0) event.scroll.direction = GDK_SCROLL_LEFT; @@ -499,7 +507,7 @@ static JSValueRef keyDownCallback(JSContextRef context, JSObjectRef function, JS memset(&event, 0, sizeof(event)); event.key.keyval = gdkKeySym; event.key.state = state; - event.key.window = GTK_WIDGET(view)->window; + event.key.window = gtk_widget_get_window(GTK_WIDGET(view)); // When synthesizing an event, an invalid hardware_keycode value // can cause it to be badly processed by Gtk+. |