diff --git a/tests/testgestures.c b/tests/testgestures.c index 14eab24e36..839a9a76b0 100644 --- a/tests/testgestures.c +++ b/tests/testgestures.c @@ -203,47 +203,42 @@ int main (int argc, char *argv[]) { GtkEventRecognizer *recognizer; - GtkWidgetClass *area_class; GtkWidget *window, *area; SwipeData swipe_data = { 0, }; PinchPanData pinch_pan_data = { { 0 }, }; gtk_init (&argc, &argv); - area_class = g_type_class_ref (GTK_TYPE_DRAWING_AREA); - - cairo_matrix_init_identity (&pinch_pan_data.matrix); - cairo_matrix_init_identity (&pinch_pan_data.pending); - pinch_pan_data.pixbuf = gdk_pixbuf_new_from_file ("gnome-textfile.png", NULL); - g_assert (pinch_pan_data.pixbuf); - - recognizer = gtk_swipe_recognizer_new (); - g_signal_connect (recognizer, "started", G_CALLBACK (update_swipe), &swipe_data); - g_signal_connect (recognizer, "updated", G_CALLBACK (update_swipe), &swipe_data); - g_signal_connect (recognizer, "finished", G_CALLBACK (finish_swipe), &swipe_data); - g_signal_connect (recognizer, "cancelled", G_CALLBACK (cancel_swipe), &swipe_data); - /* This next line is a hack and you should never do it in real life. - * Instead, do a subclass. Or get me to add gtk_widget_add_recognizer(). */ -#if 0 - gtk_widget_class_add_recognizer (area_class, recognizer); -#endif - recognizer = gtk_pinch_pan_recognizer_new (); - g_signal_connect (recognizer, "started", G_CALLBACK (update_pinch_pan), &pinch_pan_data); - g_signal_connect (recognizer, "updated", G_CALLBACK (update_pinch_pan), &pinch_pan_data); - g_signal_connect (recognizer, "finished", G_CALLBACK (finish_pinch_pan), &pinch_pan_data); - g_signal_connect (recognizer, "cancelled", G_CALLBACK (cancel_pinch_pan), &pinch_pan_data); - /* This next line is a hack and you should never do it in real life. - * Instead, do a subclass. Or get me to add gtk_widget_add_recognizer(). */ -#if 1 - gtk_widget_class_add_recognizer (area_class, recognizer); -#endif - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL); area = gtk_drawing_area_new (); gtk_widget_set_has_window (area, TRUE); gtk_widget_set_size_request (area, 400, 300); + + recognizer = gtk_swipe_recognizer_new (); + g_signal_connect (recognizer, "started", G_CALLBACK (update_swipe), &swipe_data); + g_signal_connect (recognizer, "updated", G_CALLBACK (update_swipe), &swipe_data); + g_signal_connect (recognizer, "finished", G_CALLBACK (finish_swipe), &swipe_data); + g_signal_connect (recognizer, "cancelled", G_CALLBACK (cancel_swipe), &swipe_data); +#if 0 + gtk_widget_add_recognizer (area, recognizer); +#endif + + cairo_matrix_init_identity (&pinch_pan_data.matrix); + cairo_matrix_init_identity (&pinch_pan_data.pending); + pinch_pan_data.pixbuf = gdk_pixbuf_new_from_file ("gnome-textfile.png", NULL); + g_assert (pinch_pan_data.pixbuf); + + recognizer = gtk_pinch_pan_recognizer_new (); + g_signal_connect (recognizer, "started", G_CALLBACK (update_pinch_pan), &pinch_pan_data); + g_signal_connect (recognizer, "updated", G_CALLBACK (update_pinch_pan), &pinch_pan_data); + g_signal_connect (recognizer, "finished", G_CALLBACK (finish_pinch_pan), &pinch_pan_data); + g_signal_connect (recognizer, "cancelled", G_CALLBACK (cancel_pinch_pan), &pinch_pan_data); +#if 1 + gtk_widget_add_recognizer (area, recognizer); +#endif + g_signal_connect_after (area, "draw", G_CALLBACK (draw_swipe), &swipe_data); g_signal_connect_after (area, "draw", G_CALLBACK (draw_pinch_pan), &pinch_pan_data); gtk_container_add (GTK_CONTAINER (window), area);