[gtk/gtk-3-24] window: Fix focus wraparound



commit e56a9e6ce5acd05677ece04c85ef219555a5f8e5
Author: Matthias Clasen <mclasen redhat com>
Date:   Tue Jun 11 13:14:25 2019 +0000

    window: Fix focus wraparound
    
    If tab focus falls off the end, and we have an empty headerbar,
    we end up with window->focus == NULL. Don't let that happen
    
    Close https://gitlab.gnome.org/GNOME/gtk/issues/686#note_529577

 gtk/gtkwindow.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index 874b053d57..eb551bf834 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -8625,7 +8625,7 @@ gtk_window_focus (GtkWidget        *widget,
   if (old_focus_child)
     {
       if (gtk_widget_child_focus (old_focus_child, direction))
-       return TRUE;
+        return TRUE;
     }
 
   if (priv->focus_widget)
@@ -8668,7 +8668,9 @@ gtk_window_focus (GtkWidget        *widget,
                priv->title_box != child &&
                gtk_widget_child_focus (priv->title_box, direction))
         return TRUE;
-
+      else if (priv->title_box == child &&
+               gtk_widget_child_focus (gtk_bin_get_child (bin), direction))
+        return TRUE;
     }
 
   return FALSE;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]