From 0b3aff665ae973c9e7b28124591e1a001d06160b Mon Sep 17 00:00:00 2001 From: Julian Schacher Date: Fri, 21 Apr 2023 00:46:59 +0200 Subject: [PATCH] Fix: Move provider add. to more correct place and remove prov. on dest. See here for the relevant review: https://extensions.gnome.org/review/40563 --- src/prefs.js | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/src/prefs.js b/src/prefs.js index e21e4df..f11f767 100644 --- a/src/prefs.js +++ b/src/prefs.js @@ -9,16 +9,26 @@ const Me = ExtensionUtils.getCurrentExtension(); const PrefsPage = Me.imports.prefsModules.PrefsPage; -const provider = new Gtk.CssProvider(); -provider.load_from_path(Me.dir.get_path() + "/css/prefs.css"); -Gtk.StyleContext.add_provider_for_display( - Gdk.Display.get_default(), - provider, - Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION -); - function buildPrefsWidget() { - return new PrefsPage.PrefsPage(); + const provider = new Gtk.CssProvider(); + provider.load_from_path(Me.dir.get_path() + "/css/prefs.css"); + const defaultGdkDisplay = Gdk.Display.get_default(); + Gtk.StyleContext.add_provider_for_display( + defaultGdkDisplay, + provider, + Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION + ); + + const prefsPage = new PrefsPage.PrefsPage(); + + prefsPage.connect("destroy", () => { + Gtk.StyleContext.remove_provider_for_display( + defaultGdkDisplay, + provider + ); + }); + + return prefsPage; } function init() {