summaryrefslogtreecommitdiff
path: root/gtk/gtkcolumnviewrowwidget.c
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2023-03-24 05:41:03 +0100
committerBenjamin Otte <otte@redhat.com>2023-03-26 20:29:47 +0200
commit0f55defe5677bb145a03559ff0f24dccaa115eef (patch)
tree3d336ddcb561fe220b61734d0dfeff6372f1c154 /gtk/gtkcolumnviewrowwidget.c
parent8b0731b34f2d1ef3921ca684d8dcf777d8816c33 (diff)
downloadgtk+-0f55defe5677bb145a03559ff0f24dccaa115eef.tar.gz
columnview: Add GtkColumnView::tab-behavior
Also make sure that GTK_LIST_TAB_CELL works by implementing support for it in the row widget.
Diffstat (limited to 'gtk/gtkcolumnviewrowwidget.c')
-rw-r--r--gtk/gtkcolumnviewrowwidget.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gtk/gtkcolumnviewrowwidget.c b/gtk/gtkcolumnviewrowwidget.c
index 04991aeb91..234759f036 100644
--- a/gtk/gtkcolumnviewrowwidget.c
+++ b/gtk/gtkcolumnviewrowwidget.c
@@ -187,6 +187,13 @@ gtk_column_view_row_widget_focus (GtkWidget *widget,
return TRUE;
view = gtk_column_view_row_widget_get_column_view (self);
+ if (gtk_column_view_get_tab_behavior (view) == GTK_LIST_TAB_CELL &&
+ (direction == GTK_DIR_TAB_FORWARD || direction == GTK_DIR_TAB_BACKWARD))
+ {
+ if (focus_child || gtk_widget_is_focus (widget))
+ return FALSE;
+ }
+
if (focus_child == NULL)
{
GtkColumnViewColumn *focus_column = gtk_column_view_get_focus_column (view);