[eog/wip/friemann/dark-wallpaper] EogWindow: Also set wallpaper as dark wallpaper




commit 96faf428088984472f1240cedb63d39e608867ea
Author: Felix Riemann <friemann gnome org>
Date:   Wed Mar 16 21:49:32 2022 +0100

    EogWindow: Also set wallpaper as dark wallpaper
    
    When we set a wallpaper from eog this configures the newly selected
    wallpaper also for the new dark mode in GNOME 42 in addition the
    existing key that is used for the light mode. Otherwise the image
    would not be used/updated. This is also the same behaviour we get when
    we change the wallpaper through the desktop portal.
    
    The gsettings-desktop-schemas dependency needs bumping to at least 42.beta
    to ensure the dark mode key is present.
    
    Fixes #229.

 meson.build           | 2 +-
 src/eog-config-keys.h | 1 +
 src/eog-window.c      | 1 +
 3 files changed, 3 insertions(+), 1 deletion(-)
---
diff --git a/meson.build b/meson.build
index 1bd3a01b..d341eb27 100644
--- a/meson.build
+++ b/meson.build
@@ -114,7 +114,7 @@ libpeas_gtk_dep = dependency('libpeas-gtk-1.0', version: peas_req_version)
 m_dep = cc.find_library('m')
 
 # runtime dependencies
-dependency('gsettings-desktop-schemas', version: '>= 2.91.92')
+dependency('gsettings-desktop-schemas', version: '>= 42.beta')
 dependency('shared-mime-info', version: '>= 0.20')
 
 common_deps = [
diff --git a/src/eog-config-keys.h b/src/eog-config-keys.h
index 12b5cc80..aa977339 100644
--- a/src/eog-config-keys.h
+++ b/src/eog-config-keys.h
@@ -34,6 +34,7 @@
 
 #define EOG_CONF_DESKTOP_WALLPAPER_SCHEMA      "org.gnome.desktop.background"
 #define EOG_CONF_DESKTOP_WALLPAPER             "picture-uri"
+#define EOG_CONF_DESKTOP_WALLPAPER_DARK                "picture-uri-dark"
 
 #define EOG_CONF_DESKTOP_LOCKDOWN_SCHEMA       "org.gnome.desktop.lockdown"
 #define EOG_CONF_DESKTOP_CAN_PRINT             "disable-printing"
diff --git a/src/eog-window.c b/src/eog-window.c
index d6522c25..7e1eb02c 100644
--- a/src/eog-window.c
+++ b/src/eog-window.c
@@ -2706,6 +2706,7 @@ eog_window_set_wallpaper (EogWindow *window, const gchar *filename, const gchar
        uri = g_filename_to_uri (filename, NULL, NULL);
        settings = g_settings_new (EOG_CONF_DESKTOP_WALLPAPER_SCHEMA);
        g_settings_set_string (settings, EOG_CONF_DESKTOP_WALLPAPER, uri);
+       g_settings_set_string (settings, EOG_CONF_DESKTOP_WALLPAPER_DARK, uri);
        g_object_unref (settings);
        g_free (uri);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]