X-Git-Url: https://git.wpitchoune.net/gitweb/?a=blobdiff_plain;f=src%2Fui.c;h=e81e84197cb0782e0c012c0dd65885c6b7b808e0;hb=ae573ea0c5328662e711d7717edc835d1a313d58;hp=ddf7fd43eebe0af4a742ffe625c10a2c0e339926;hpb=d6141b1d4fea0db9b115b06c668be6195ac4e5c6;p=psensor.git diff --git a/src/ui.c b/src/ui.c index ddf7fd4..e81e841 100644 --- a/src/ui.c +++ b/src/ui.c @@ -28,6 +28,29 @@ #include "ui_status.h" #include "ui_appindicator.h" +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) { gboolean visible; @@ -225,8 +248,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 +275,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 +373,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 *),