This is an automated email from the git hooks/post-receive script.

timystery pushed a commit to branch master
in repository panel-plugins/xfce4-sensors-plugin.

commit 240bf2e67e77f6d9ad6507f8bd0acf3a5b3db57d
Author: Fabian <[email protected]>
Date:   Tue Apr 29 23:56:41 2014 +0200

    begin fixing bug 10840 with feature request to supres tooltip for 
transparency issues with gtk themes, for stability issues with tachometer panel
---
 NEWS                               |    2 +-
 include/sensors-interface-common.h |    1 +
 include/sensors-interface-plugin.h |    4 ++-
 lib/configuration.c                |    5 ++++
 panel-plugin/sensors-plugin.c      |   50 ++++++++++++++++++++++++++++++++----
 5 files changed, 55 insertions(+), 7 deletions(-)

diff --git a/NEWS b/NEWS
index 9e693ad..3b78c37 100644
--- a/NEWS
+++ b/NEWS
@@ -32,4 +32,4 @@
 1.2.5:  Fix German translation; fix bug 8887 compile error
 1.2.6:  Bug 9395 fixed: When sensors are no longer available for any reason, 
         plugin won't crash.
-        Bug 10031 fixed.
+        Bug 10031 fixed: Automake/Autoconfigure option for config headers.
diff --git a/include/sensors-interface-common.h 
b/include/sensors-interface-common.h
index b55eb5f..d477b42 100644
--- a/include/sensors-interface-common.h
+++ b/include/sensors-interface-common.h
@@ -73,6 +73,7 @@ typedef struct {
     GtkWidget *Lines_Box;
     GtkWidget *Lines_Spin_Box;
     GtkWidget *suppressmessage_checkbox;
+    GtkWidget *suppresstooltip_checkbox;
     GtkWidget *smallspacing_checkbox;
     GtkWidget *labels_Box; /* used to enable 'show labels' option when using 
graphical view */
     GtkWidget *coloredBars_Box;
diff --git a/include/sensors-interface-plugin.h 
b/include/sensors-interface-plugin.h
index e40aab5..2862c9f 100644
--- a/include/sensors-interface-plugin.h
+++ b/include/sensors-interface-plugin.h
@@ -101,6 +101,9 @@ typedef struct {
 
     /* suppress Hddtemp failure messages and any other messages */
     gboolean suppressmessage;
+    
+    /* suppress tooltip from overlapping widget and thereby crashing the 
plugin or modifying the background */
+    gboolean suppresstooltip;
 
     /* sensor update time */
     gint sensors_refresh_time;
@@ -186,4 +189,3 @@ t_sensors * sensors_new (XfcePanelPlugin *plugin, gchar * 
plugin_config_file);
 void sensors_init_default_values  (t_sensors *sensors, XfcePanelPlugin 
*plugin);
 
 #endif /* XFCE4_SENSORS_INTERFACE_PLUGIN_H */
-
diff --git a/lib/configuration.c b/lib/configuration.c
index 52e6c41..00c1ce5 100644
--- a/lib/configuration.c
+++ b/lib/configuration.c
@@ -126,6 +126,8 @@ sensors_write_config (XfcePanelPlugin *plugin, t_sensors 
*sensors)
 
     xfce_rc_write_bool_entry (rc, "Suppress_Hddtemp_Message", 
sensors->suppressmessage);
 
+    xfce_rc_write_bool_entry (rc, "Suppress_Tooltip", 
sensors->suppresstooltip);
+
   xfce_rc_write_int_entry (rc, "Preferred_Width", sensors->preferred_width);
   xfce_rc_write_int_entry (rc, "Preferred_Height", sensors->preferred_height);
 
@@ -239,6 +241,9 @@ sensors_read_general_config (XfceRc *rc, t_sensors *sensors)
 
         if (!sensors->suppressmessage)
             sensors->suppressmessage = xfce_rc_read_bool_entry (rc, 
"Suppress_Hddtemp_Message", FALSE);
+
+        if (!sensors->suppresstooltip)
+            sensors->suppresstooltip = xfce_rc_read_bool_entry (rc, 
"Suppress_Tooltip", FALSE);
             
         sensors->preferred_width = xfce_rc_read_int_entry (rc, 
"Preferred_Width", 400);
         sensors->preferred_height = xfce_rc_read_int_entry (rc, 
"Preferred_Height", 400);
diff --git a/panel-plugin/sensors-plugin.c b/panel-plugin/sensors-plugin.c
index 545eb7b..88f1bd7 100644
--- a/panel-plugin/sensors-plugin.c
+++ b/panel-plugin/sensors-plugin.c
@@ -850,6 +850,8 @@ sensors_create_tooltip (gpointer data)
     gtk_widget_set_tooltip_text (GTK_WIDGET(sensors->eventbox), myToolTipText);
     DBG("tooltip text: %s.\n", myToolTipText);
     
+    gtk_widget_set_has_tooltip(GTK_WIDGET(sensors->eventbox), 
!sensors->suppresstooltip);
+    
     TRACE ("freeing myToolTipText");
     g_free (myToolTipText);
 
@@ -871,8 +873,6 @@ sensors_show_panel (gpointer data)
 
     sensors = (t_sensors *) data;
 
-    sensors_create_tooltip ((gpointer) sensors);
-
     switch (sensors->display_values_type)
     {
       case DISPLAY_TACHO: 
@@ -884,6 +884,9 @@ sensors_show_panel (gpointer data)
       default:
         result = sensors_show_text_display (sensors);
     }
+    
+    sensors_create_tooltip ((gpointer) sensors);
+    
     TRACE ("leaves sensors_show_panel\n");
     return result;
 }
@@ -1190,6 +1193,21 @@ display_style_changed_bars (GtkWidget *widget, 
t_sensors_dialog *sd)
     TRACE ("leaves display_style_changed_bars");
 }
 
+
+
+static void
+suppresstooltip_changed (GtkWidget *widget, t_sensors_dialog* sd)
+{
+    TRACE ("enters suppresstooltip_changed");
+
+    sd->sensors->suppresstooltip = ! sd->sensors->suppresstooltip;
+    
+    gtk_widget_set_has_tooltip(sd->sensors->eventbox, 
!sd->sensors->suppresstooltip);
+
+    TRACE ("leaves suppresstooltip_changed");
+}
+
+
 static void
 display_style_changed_tacho (GtkWidget *widget, t_sensors_dialog *sd)
 {
@@ -1212,6 +1230,9 @@ display_style_changed_tacho (GtkWidget *widget, 
t_sensors_dialog *sd)
     sd->sensors->display_values_type = DISPLAY_TACHO;
     //gtk_toggle_button_get_active ( GTK_TOGGLE_BUTTON(widget) );
 
+    if (!sd->sensors->suppresstooltip)
+      suppresstooltip_changed (widget, sd);
+    
     sensors_show_panel ((gpointer) sd->sensors);
 
     TRACE ("leaves display_style_changed_tacho");
@@ -1980,6 +2001,24 @@ add_suppressmessage_box (GtkWidget * vbox, 
t_sensors_dialog * sd)
     TRACE ("leaves add_suppressmessage_box");
 }
 
+static void
+add_suppresstooltips_box (GtkWidget * vbox, t_sensors_dialog * sd)
+{
+    TRACE ("enters add_suppresstooltips_box");
+
+    sd->suppresstooltip_checkbox  = 
gtk_check_button_new_with_mnemonic(_("Suppress tooltip"));
+    
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sd->suppresstooltip_checkbox), 
sd->sensors->suppresstooltip);
+
+    gtk_widget_show (sd->suppresstooltip_checkbox);
+
+    gtk_box_pack_start (GTK_BOX (vbox), sd->suppresstooltip_checkbox, FALSE, 
TRUE, 0);
+
+    g_signal_connect   (G_OBJECT (sd->suppresstooltip_checkbox), "toggled",
+                        G_CALLBACK (suppresstooltip_changed), sd );
+
+    TRACE ("leaves add_suppresstooltips_box");
+}
+
 
 /* double-click improvement */
 static void
@@ -2080,8 +2119,10 @@ add_miscellaneous_frame (GtkWidget * notebook, 
t_sensors_dialog * sd)
 
     add_suppressmessage_box(_vbox, sd);
 
+    add_suppresstooltips_box(_vbox, sd);
+    
     add_command_box (_vbox, sd);
-
+    
     TRACE ("leaves add_miscellaneous_frame");
 }
 
@@ -2244,7 +2285,7 @@ create_sensors_control (XfcePanelPlugin *plugin)
     add_event_box (sensors);
 
     /* Add tooltip to show extended current sensors status */
-    sensors_create_tooltip ((gpointer) sensors);
+    //sensors_create_tooltip ((gpointer) sensors);
 
     /* fill panel widget with boxes, strings, values, ... */
     create_panel_widget (sensors);
@@ -2312,4 +2353,3 @@ sensors_plugin_construct (XfcePanelPlugin *plugin)
 }
 
 XFCE_PANEL_PLUGIN_REGISTER_EXTERNAL (sensors_plugin_construct);
-

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.
_______________________________________________
Xfce4-commits mailing list
[email protected]
https://mail.xfce.org/mailman/listinfo/xfce4-commits

Reply via email to