From 508d45f8b50d03d9cab71fec4627f5f290cad312 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Sat, 11 Dec 2021 20:04:07 +0800 Subject: [PATCH] pantheon.evince: use upstream patch --- pkgs/desktops/gnome/core/evince/default.nix | 13 ++- .../core/evince/pantheon-dark-style.patch | 86 ------------------- 2 files changed, 9 insertions(+), 90 deletions(-) delete mode 100644 pkgs/desktops/gnome/core/evince/pantheon-dark-style.patch diff --git a/pkgs/desktops/gnome/core/evince/default.nix b/pkgs/desktops/gnome/core/evince/default.nix index eb85c97f9f21a..74987c07a5b92 100644 --- a/pkgs/desktops/gnome/core/evince/default.nix +++ b/pkgs/desktops/gnome/core/evince/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ lib +, stdenv , fetchurl +, fetchpatch , meson , ninja , pkg-config @@ -57,9 +59,12 @@ stdenv.mkDerivation rec { patches = lib.optionals withPantheon [ # Make this respect dark mode settings from Pantheon - # https://github.com/elementary/evince - # The patch currently differs from upstream (updated for evince 41). - ./pantheon-dark-style.patch + # https://github.com/elementary/evince/pull/21 + # https://github.com/elementary/evince/pull/31 + (fetchpatch { + url = "https://raw.githubusercontent.com/elementary/evince/c8364019ee2c2dffd2a1bccf79b8f4e526aa22af/dark-style.patch"; + sha256 = "sha256-nKELRXnM6gMRTGmWdO1Qqlo9ciy+4HOK5z2CYOoi2Lo="; + }) ]; postPatch = '' diff --git a/pkgs/desktops/gnome/core/evince/pantheon-dark-style.patch b/pkgs/desktops/gnome/core/evince/pantheon-dark-style.patch deleted file mode 100644 index 5e1ef67b08cd4..0000000000000 --- a/pkgs/desktops/gnome/core/evince/pantheon-dark-style.patch +++ /dev/null @@ -1,86 +0,0 @@ -diff --git a/meson.build b/meson.build -index bcb69cf7..4a18c08c 100644 ---- a/meson.build -+++ b/meson.build -@@ -162,6 +162,7 @@ gmodule_dep = dependency('gmodule-2.0') - gmodule_no_export_dep = dependency('gmodule-no-export-2.0', version: glib_req_version) - gtk_dep = dependency('gtk+-3.0', version: gtk_req_version) - gthread_dep = dependency('gthread-2.0', version: glib_req_version) -+granite_dep = dependency('granite') - # Keep the version here synchronised with subprojects/libhandy.wrap - hdy_dep = dependency('libhandy-1', version: hdy_req_version, fallback: ['libhandy', 'libhandy_dep']) - -diff --git a/shell/ev-application.c b/shell/ev-application.c -index e704bda2..d705328c 100644 ---- a/shell/ev-application.c -+++ b/shell/ev-application.c -@@ -30,6 +30,7 @@ - #include - #include - #include -+#include - #include - #ifdef GDK_WINDOWING_X11 - #include -@@ -176,7 +177,7 @@ ev_spawn (const char *uri, - - g_string_append_printf (cmd, " %s", path); - g_free (path); -- -+ - /* Page label */ - if (dest) { - switch (ev_link_dest_get_dest_type (dest)) { -@@ -940,6 +941,20 @@ ev_application_migrate_config_dir (EvApplication *application) - g_free (old_accels); - } - -+static void -+ev_application_set_prefers_color_scheme () -+{ -+ GtkSettings* gtk_settings = gtk_settings_get_default (); -+ GraniteSettings* granite_settings = granite_settings_get_default (); -+ -+ g_object_set ( -+ gtk_settings, -+ "gtk-application-prefer-dark-theme", -+ granite_settings_get_prefers_color_scheme (granite_settings) == GRANITE_SETTINGS_COLOR_SCHEME_DARK, -+ NULL -+ ); -+} -+ - static void - ev_application_startup (GApplication *gapplication) - { -@@ -992,6 +1007,7 @@ ev_application_startup (GApplication *gapplication) - - EvApplication *application = EV_APPLICATION (gapplication); - const gchar **it; -+ GraniteSettings* granite_settings = granite_settings_get_default (); - - g_application_set_resource_base_path (gapplication, "/org/gnome/evince"); - -@@ -999,6 +1015,11 @@ ev_application_startup (GApplication *gapplication) - - hdy_init (); - -+ ev_application_set_prefers_color_scheme (); -+ -+ g_signal_connect (granite_settings, "notify::prefers-color-scheme", -+ G_CALLBACK(ev_application_set_prefers_color_scheme), NULL); -+ - for (it = action_accels; it[0]; it += g_strv_length ((gchar **)it) + 1) - gtk_application_set_accels_for_action (GTK_APPLICATION (application), it[0], &it[1]); - } -diff --git a/shell/meson.build b/shell/meson.build -index 7cbc48f2..a3089b13 100644 ---- a/shell/meson.build -+++ b/shell/meson.build -@@ -52,6 +52,7 @@ sources += gnome.compile_resources( - deps = [ - gdk_pixbuf_dep, - gnome_desktop_dep, -+ granite_dep, - hdy_dep, - libevmisc_dep, - libevproperties_dep,