[gtk/event-controller-responsive: 3/4] widget: Update controllers responsiveness



commit b844778b5b5e0e113c361e42ac98debeb40da5b7
Author: Matthias Clasen <mclasen redhat com>
Date:   Thu May 2 19:12:29 2019 +0000

    widget: Update controllers responsiveness
    
    Make controllers unresponsive when their
    widget is insensitive. This is the expected
    behavior.

 gtk/gtkwidget.c | 8 ++++++++
 1 file changed, 8 insertions(+)
---
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 3ae53fdb09..3282db4752 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -6363,6 +6363,7 @@ gtk_widget_set_sensitive (GtkWidget *widget,
                          gboolean   sensitive)
 {
   GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
+  GList *l;
 
   g_return_if_fail (GTK_IS_WIDGET (widget));
 
@@ -6373,6 +6374,13 @@ gtk_widget_set_sensitive (GtkWidget *widget,
 
   priv->sensitive = sensitive;
 
+  for (l = priv->event_controllers; l; l = l->next)
+    {
+      GtkEventController *controller = l->data;
+
+      gtk_event_controller_set_responsive (controller, sensitive);
+    }
+
   if (priv->parent == NULL
       || gtk_widget_is_sensitive (priv->parent))
     {


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