disable provider settings
[psensor.git] / src / ui_pref.c
index 6f7f3b6..f6cb5a5 100644 (file)
 #include <ui.h>
 #include <cfg.h>
 #include <graph.h>
+#include <lmsensor.h>
 #include <nvidia.h>
 #include <pgtop2.h>
+#include <pudisks2.h>
 #include <pxdg.h>
 #include <ui_pref.h>
 #include <ui_color.h>
@@ -191,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"));
@@ -251,12 +260,14 @@ void ui_pref_dialog_run(struct ui_psensor *ui)
        w_udisks2
                = GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder,
                                                           "udisks2"));
-#if !HAVE_LIBUDISKS2
-       gtk_widget_set_sensitive(GTK_WIDGET(w_udisks2), 0);
-       gtk_widget_set_has_tooltip(GTK_WIDGET(w_udisks2), TRUE);
-#else
-       gtk_widget_set_has_tooltip(GTK_WIDGET(w_udisks2), FALSE);
-#endif
+
+       if (udisks2_is_supported()) {
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_udisks2), FALSE);
+       } else {
+               gtk_widget_set_sensitive(GTK_WIDGET(w_udisks2), 0);
+               gtk_widget_set_has_tooltip(GTK_WIDGET(w_udisks2), TRUE);
+       }
+
        gtk_toggle_button_set_active(w_udisks2, config_is_udisks2_enabled());
 
        result = gtk_dialog_run(diag);