- commit
- f9a3e506ac19375c82f4eafc06dfa12cbe869081
- parent
- 89031e54ef373f36e0e76b861487a48b916c081d
- Author
- Tobias Bengfort <tobias.bengfort@posteo.de>
- Date
- 2024-11-21 16:16
adapt to color scheme changes I had expected that this works by default.
Diffstat
| M | xiterm.c | 11 | +++++++++++ |
1 files changed, 11 insertions, 0 deletions
diff --git a/xiterm.c b/xiterm.c
@@ -81,6 +81,12 @@ void on_term_exit(VteTerminal *term, int status, gpointer user_data) {
81 81 }
82 82 }
83 83
-1 84 void on_color_scheme_changed(GSettings *settings, gchar *key, gpointer user_data) {
-1 85 gchar *value = g_settings_get_string(settings, key);
-1 86 int prefer_dark = strcmp(value, "prefer-dark") == 0;
-1 87 g_object_set(gtk_settings_get_default(), "gtk-application-prefer-dark-theme", prefer_dark, NULL);
-1 88 }
-1 89
84 90 VteTerminal *get_current_term(void) {
85 91 int page_num;
86 92
@@ -198,6 +204,7 @@ int main(int argc, char **argv) {
198 204 char command[128] = "";
199 205 GError *err = NULL;
200 206 GtkWidget *widget;
-1 207 GSettings *settings;
201 208
202 209 if (argc > 1) {
203 210 if (strcmp(argv[1], "-e") != 0) {
@@ -231,6 +238,10 @@ int main(int argc, char **argv) {
231 238 g_signal_connect(GTK_WIDGET(window), "key-press-event", G_CALLBACK(on_key), NULL);
232 239 g_signal_connect(GTK_WIDGET(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);
233 240
-1 241 settings = g_settings_new("org.gnome.desktop.interface");
-1 242 g_signal_connect(settings, "changed::color-scheme", G_CALLBACK(on_color_scheme_changed), NULL);
-1 243 on_color_scheme_changed(settings, "color-scheme", NULL);
-1 244
234 245 widget = gtk_notebook_new();
235 246 gtk_container_add(GTK_CONTAINER(window), widget);
236 247 notebook = GTK_NOTEBOOK(widget);