X-Git-Url: https://git.wpitchoune.net/gitweb/?a=blobdiff_plain;f=src%2Fui.c;h=aa504c3996a8c3d32e6d0485042f88fcc7fefd89;hb=8f90b2a24c698c17e363ee38b14097dfde2fe0d9;hp=fecd15b2cfdc3895ea13429af4432994cc6a82cc;hpb=a16822176e2bdb982c2330a33749f76aea9f1a8b;p=psensor.git diff --git a/src/ui.c b/src/ui.c index fecd15b..aa504c3 100644 --- a/src/ui.c +++ b/src/ui.c @@ -18,15 +18,39 @@ */ #include -#include "cfg.h" -#include "slog.h" -#include "ui.h" -#include "ui_graph.h" -#include "ui_pref.h" -#include "ui_sensorpref.h" -#include "ui_sensorlist.h" -#include "ui_status.h" -#include "ui_appindicator.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +static void set_decoration(GtkWindow *win) +{ + gtk_window_set_decorated(win, config_is_window_decoration_enabled()); +} + +static void +decoration_changed_cbk(GSettings *settings, gchar *key, gpointer data) +{ + set_decoration((GtkWindow *)data); +} + +static void connect_cbks(GtkWindow *win) +{ + log_fct_enter(); + + g_signal_connect_after(config_get_GSettings(), + "changed::interface-window-decoration-disabled", + G_CALLBACK(decoration_changed_cbk), + win); + + log_fct_exit(); +} static void save_window_pos(struct ui_psensor *ui) { @@ -76,7 +100,7 @@ on_delete_event_cb(GtkWidget *widget, GdkEvent *event, gpointer data) return TRUE; } -void ui_show_about_dialog() +void ui_show_about_dialog(void) { static const char *const authors[] = { "jeanfi@gmail.com", NULL }; @@ -89,7 +113,7 @@ void ui_show_about_dialog() "copyright", _("Copyright(c) 2010-2014 jeanfi@gmail.com"), #if GTK_CHECK_VERSION(3, 12, 0) - "license-type", GTK_LICENSE_GPL_2_0_ONLY, + "license-type", GTK_LICENSE_GPL_2_0, #endif "logo-icon-name", "psensor", "program-name", "Psensor", @@ -198,7 +222,7 @@ void ui_window_create(struct ui_psensor *ui) if (!ok) { log_printf(LOG_ERR, error->message); g_error_free(error); - return ; + return; } window = GTK_WIDGET(gtk_builder_get_object(builder, "window")); @@ -225,8 +249,7 @@ void ui_window_create(struct ui_psensor *ui) g_signal_connect(window, "delete_event", G_CALLBACK(on_delete_event_cb), ui); - gtk_window_set_decorated(GTK_WINDOW(window), - cfg->window_decoration_enabled); + set_decoration(GTK_WINDOW(window)); gtk_window_set_keep_below(GTK_WINDOW(window), cfg->window_keep_below_enabled); @@ -253,6 +276,8 @@ void ui_window_create(struct ui_psensor *ui) ui_sensorlist_create(ui); + connect_cbks(GTK_WINDOW(window)); + log_debug("ui_window_create(): show_all"); gtk_widget_show_all(ui->main_box); @@ -349,11 +374,11 @@ static int cmp_sensors(const void *p1, const void *p2) return pos1 - pos2; } -struct psensor **ui_get_sensors_ordered_by_position(const struct ui_psensor *ui) +struct psensor **ui_get_sensors_ordered_by_position(struct psensor **sensors) { struct psensor **result; - result = psensor_list_copy(ui->sensors); + result = psensor_list_copy(sensors); qsort(result, psensor_list_size(result), sizeof(struct psensor *),