diff -up gcompris-9.0/src/goocanvas/src/goocanvasatk.c.patch gcompris-9.0/src/goocanvas/src/goocanvasatk.c
--- gcompris-9.0/src/goocanvas/src/goocanvasatk.c.patch	2010-01-17 11:47:01.000000000 +0100
+++ gcompris-9.0/src/goocanvas/src/goocanvasatk.c	2010-01-17 11:44:50.000000000 +0100
@@ -222,7 +222,7 @@ goo_canvas_item_accessible_grab_focus (A
   goo_canvas_grab_focus (canvas, item);
 
   toplevel = gtk_widget_get_toplevel (GTK_WIDGET (canvas));
-  if (GTK_WIDGET_TOPLEVEL (toplevel))
+  if(gtk_widget_is_toplevel(toplevel))
     gtk_window_present (GTK_WINDOW (toplevel));
 
   return TRUE;
@@ -414,7 +414,7 @@ goo_canvas_item_accessible_ref_state_set
 
   g_object_get (item, "can-focus", &can_focus, NULL);
 
-  if (GTK_WIDGET_CAN_FOCUS (GTK_WIDGET (canvas)) && can_focus)
+  if (gtk_widget_get_can_focus (GTK_WIDGET (canvas)) && can_focus)
     {
       atk_state_set_add_state (state_set, ATK_STATE_FOCUSABLE);
 
diff -up gcompris-9.0/src/goocanvas/src/goocanvas.c.patch gcompris-9.0/src/goocanvas/src/goocanvas.c
--- gcompris-9.0/src/goocanvas/src/goocanvas.c.patch	2010-01-17 11:47:26.000000000 +0100
+++ gcompris-9.0/src/goocanvas/src/goocanvas.c	2010-01-17 11:49:49.000000000 +0100
@@ -3314,7 +3314,7 @@ goo_canvas_grab_focus (GooCanvas     *ca
 
   g_return_if_fail (GOO_IS_CANVAS (canvas));
   g_return_if_fail (GOO_IS_CANVAS_ITEM (item));
-  g_return_if_fail (GTK_WIDGET_CAN_FOCUS (canvas));
+  g_return_if_fail (gtk_widget_get_can_focus (GTK_WIDGET (canvas)));
 
   if (canvas->focused_item) {
     event.type = GDK_FOCUS_CHANGE;
@@ -4145,7 +4145,7 @@ goo_canvas_focus (GtkWidget        *widg
   canvas = GOO_CANVAS (widget);
 
   /* If keyboard navigation has been turned off for the canvas, return FALSE.*/
-  if (!GTK_WIDGET_CAN_FOCUS (canvas))
+  if (!gtk_widget_get_can_focus (GTK_WIDGET (canvas)))
     return FALSE;
 
   /* If a child widget has the focus, try moving the focus within that. */
