Merge branch 'wip/corey/listbase-focus' into 'main'
authorBenjamin Otte <otte.benjamin@googlemail.com>
Wed, 14 Dec 2022 19:06:57 +0000 (19:06 +0000)
committerBenjamin Otte <otte.benjamin@googlemail.com>
Wed, 14 Dec 2022 19:06:57 +0000 (19:06 +0000)
listbase: Use set_focus_child properly

Closes #5433 and #5432

See merge request GNOME/gtk!5169

1  2 
gtk/gtklistitemwidget.c

index a90bceda1bff69dd1661b6e96c488df45ea056db,d19115020313fb782cb2be368d3b05efa2c1f2b7..9dc96a1982fcd8a56bd7300105a486e7d8fdbd63
@@@ -486,21 -462,10 +485,8 @@@ gtk_list_item_widget_click_gesture_rele
                                    "(ubb)",
                                    priv->position, modify, extend);
      }
 -
 -  gtk_widget_unset_state_flags (GTK_WIDGET (self), GTK_STATE_FLAG_ACTIVE);
  }
  
- static void
- gtk_list_item_widget_enter_cb (GtkEventControllerFocus *controller,
-                                GtkListItemWidget       *self)
- {
-   GtkWidget *widget = GTK_WIDGET (self);
-   GtkListItemWidgetPrivate *priv = gtk_list_item_widget_get_instance_private (self);
-   gtk_widget_activate_action (widget,
-                               "list.scroll-to-item",
-                               "u",
-                               priv->position);
- }
  static void
  gtk_list_item_widget_hover_cb (GtkEventControllerMotion *controller,
                                 double                    x,
@@@ -540,12 -513,10 +526,8 @@@ gtk_list_item_widget_init (GtkListItemW
                      G_CALLBACK (gtk_list_item_widget_click_gesture_pressed), self);
    g_signal_connect (gesture, "released",
                      G_CALLBACK (gtk_list_item_widget_click_gesture_released), self);
 -  g_signal_connect (gesture, "cancel",
 -                    G_CALLBACK (gtk_list_item_widget_click_gesture_canceled), self);
    gtk_widget_add_controller (GTK_WIDGET (self), GTK_EVENT_CONTROLLER (gesture));
  
-   controller = gtk_event_controller_focus_new ();
-   g_signal_connect (controller, "enter", G_CALLBACK (gtk_list_item_widget_enter_cb), self);
-   gtk_widget_add_controller (GTK_WIDGET (self), controller);
    controller = gtk_event_controller_motion_new ();
    g_signal_connect (controller, "enter", G_CALLBACK (gtk_list_item_widget_hover_cb), self);
    gtk_widget_add_controller (GTK_WIDGET (self), controller);