[gnome-panel] status-notifier: respect the enable-tooltips setting



commit 395b9753dd24430e32e5d6ad19c4a802c2a4e477
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Sun Jan 21 00:20:12 2018 +0200

    status-notifier: respect the enable-tooltips setting

 modules/status-notifier/sn-applet.c  |    5 +++++
 modules/status-notifier/sn-item-v0.c |    5 +++++
 modules/status-notifier/sn-item.c    |   18 ++++++++++++++++++
 3 files changed, 28 insertions(+), 0 deletions(-)
---
diff --git a/modules/status-notifier/sn-applet.c b/modules/status-notifier/sn-applet.c
index 7250b3b..d5bf10b 100644
--- a/modules/status-notifier/sn-applet.c
+++ b/modules/status-notifier/sn-applet.c
@@ -244,6 +244,11 @@ item_added_cb (SnHost   *host,
   g_signal_connect (item, "clicked",
                     G_CALLBACK (clicked_cb), sn);
 
+  g_object_bind_property (sn, "enable-tooltips",
+                          item, "enable-tooltips",
+                          G_BINDING_DEFAULT |
+                          G_BINDING_SYNC_CREATE);
+
   g_object_bind_property (sn->box, "orientation",
                           item, "orientation",
                           G_BINDING_DEFAULT);
diff --git a/modules/status-notifier/sn-item-v0.c b/modules/status-notifier/sn-item-v0.c
index 0a1fa35..07e33de 100644
--- a/modules/status-notifier/sn-item-v0.c
+++ b/modules/status-notifier/sn-item-v0.c
@@ -270,6 +270,11 @@ update (SnItemV0 *v0)
 
       gtk_widget_set_tooltip_markup (GTK_WIDGET (v0), markup);
       g_free (markup);
+
+      g_object_bind_property (v0, "enable-tooltips",
+                              v0, "has-tooltip",
+                              G_BINDING_DEFAULT |
+                              G_BINDING_SYNC_CREATE);
     }
   else
     {
diff --git a/modules/status-notifier/sn-item.c b/modules/status-notifier/sn-item.c
index 8f2a6fe..86f4291 100644
--- a/modules/status-notifier/sn-item.c
+++ b/modules/status-notifier/sn-item.c
@@ -27,6 +27,8 @@ typedef struct
 
   GtkOrientation  orientation;
 
+  gboolean        enable_tooltips;
+
   GtkMenu        *menu;
 } SnItemPrivate;
 
@@ -39,6 +41,8 @@ enum
 
   PROP_ORIENTATION,
 
+  PROP_ENABLE_TOOLTIPS,
+
   LAST_PROP
 };
 
@@ -110,6 +114,10 @@ sn_item_get_property (GObject    *object,
         g_value_set_enum (value, priv->orientation);
         break;
 
+      case PROP_ENABLE_TOOLTIPS:
+        g_value_set_boolean (value, priv->enable_tooltips);
+        break;
+
       default:
         G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
         break;
@@ -142,6 +150,10 @@ sn_item_set_property (GObject      *object,
         priv->orientation = g_value_get_enum (value);
         break;
 
+      case PROP_ENABLE_TOOLTIPS:
+        priv->enable_tooltips = g_value_get_boolean (value);
+        break;
+
       default:
         G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
         break;
@@ -255,6 +267,12 @@ install_properties (GObjectClass *object_class)
                        GTK_TYPE_ORIENTATION, GTK_ORIENTATION_HORIZONTAL,
                        G_PARAM_WRITABLE | G_PARAM_STATIC_STRINGS);
 
+  properties[PROP_ENABLE_TOOLTIPS] =
+    g_param_spec_boolean ("enable-tooltips", "Enable Tooltips", "Enable Tooltips",
+                          TRUE,
+                          G_PARAM_CONSTRUCT | G_PARAM_READWRITE |
+                          G_PARAM_STATIC_STRINGS);
+
   g_object_class_install_properties (object_class, LAST_PROP, properties);
 }
 


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