disable provider settings
authorJean-Philippe Orsini <jeanfi@gmail.com>
Thu, 25 Sep 2014 07:26:31 +0000 (09:26 +0200)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Thu, 25 Sep 2014 07:26:31 +0000 (09:26 +0200)
src/lib/lmsensor.h
src/ui_pref.c

index 03cce8d..90d58f3 100644 (file)
 #ifndef _PSENSOR_LMSENSOR_H_
 #define _PSENSOR_LMSENSOR_H_
 
+#include <bool.h>
 #include <psensor.h>
 
 #if defined(HAVE_LIBSENSORS) && HAVE_LIBSENSORS
 
+static inline bool lmsensor_is_supported(void) { return true; }
+
 void lmsensor_psensor_list_update(struct psensor **);
 void lmsensor_psensor_list_append(struct psensor ***, int);
 void lmsensor_cleanup(void);
 
 #else
 
+static inline bool lmsensor_is_supported(void) { return false; }
+
 static inline void lmsensor_psensor_list_update(struct psensor **s) {}
 static inline void lmsensor_psensor_list_append(struct psensor ***s, int n) {}
 static inline void lmsensor_cleanup(void) {}
index 81dfe11..f6cb5a5 100644 (file)
@@ -23,6 +23,7 @@
 #include <ui.h>
 #include <cfg.h>
 #include <graph.h>
+#include <lmsensor.h>
 #include <nvidia.h>
 #include <pgtop2.h>
 #include <pudisks2.h>
@@ -192,6 +193,13 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
                                                           "lmsensors"));
        gtk_toggle_button_set_active(w_lmsensors, config_is_lmsensor_enabled());
 
+       if (lmsensor_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_lmsensors), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_lmsensors), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_lmsensors), TRUE);
+       }
+
        w_nvctrl
                = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
                                                           "nvctrl"));