Blame SOURCES/reflect-extensions-status.patch

d08b65
From 3efa6fff00f812a034180d3d980a50cfa9a3250b Mon Sep 17 00:00:00 2001
d08b65
From: Carlos Soriano <csoriano@redhat.com>
d08b65
Date: Tue, 23 Apr 2019 15:16:17 +0200
d08b65
Subject: [PATCH] Reflect extension status in the UI
d08b65
d08b65
---
d08b65
 gtweak/gshellwrapper.py                       | 3 ++-
d08b65
 gtweak/tweaks/tweak_group_shell_extensions.py | 6 ++++--
d08b65
 2 files changed, 6 insertions(+), 3 deletions(-)
d08b65
d08b65
diff --git a/gtweak/gshellwrapper.py b/gtweak/gshellwrapper.py
d08b65
index d654f88..ef1873a 100644
d08b65
--- a/gtweak/gshellwrapper.py
d08b65
+++ b/gtweak/gshellwrapper.py
d08b65
@@ -81,7 +81,8 @@ class GnomeShell:
d08b65
 
d08b65
     EXTENSION_TYPE = {
d08b65
         "SYSTEM"        :   1,
d08b65
-        "PER_USER"      :   2
d08b65
+        "PER_USER"      :   2,
d08b65
+        "SESSION_MODE"  :   3
d08b65
     }
d08b65
 
d08b65
     DATA_DIR = os.path.join(GLib.get_user_data_dir(), "gnome-shell")
d08b65
diff --git a/gtweak/tweaks/tweak_group_shell_extensions.py b/gtweak/tweaks/tweak_group_shell_extensions.py
d08b65
index e295d0b..5769774 100644
d08b65
--- a/gtweak/tweaks/tweak_group_shell_extensions.py
d08b65
+++ b/gtweak/tweaks/tweak_group_shell_extensions.py
d08b65
@@ -114,7 +114,8 @@ class _ShellExtensionTweak(Gtk.ListBoxRow, Tweak):
d08b65
         if state == GnomeShell.EXTENSION_STATE["ENABLED"] or \
d08b65
            state == GnomeShell.EXTENSION_STATE["DISABLED"] or \
d08b65
            state == GnomeShell.EXTENSION_STATE["INITIALIZED"]:
d08b65
-            sensitive = True
d08b65
+            if ext.get("type") != GnomeShell.EXTENSION_TYPE["SESSION_MODE"]:
d08b65
+                sensitive = True
d08b65
         elif state == GnomeShell.EXTENSION_STATE["DOWNLOADING"]:
d08b65
             info = _("Extension downloading")
d08b65
         elif state == GnomeShell.EXTENSION_STATE["ERROR"]:
d08b65
@@ -145,7 +146,8 @@ class _ShellExtensionTweak(Gtk.ListBoxRow, Tweak):
d08b65
         sw = Gtk.Switch(sensitive=sensitive)
d08b65
         sw.props.vexpand = False
d08b65
         sw.props.valign = Gtk.Align.CENTER
d08b65
-        sw.set_active(self._shell.extension_is_active(state, uuid))
d08b65
+        sw.set_active(self._shell.extension_is_active(state, uuid) or
d08b65
+                      ext.get("type") == GnomeShell.EXTENSION_TYPE["SESSION_MODE"])
d08b65
         sw.connect('notify::active', self._on_extension_toggled, uuid)
d08b65
         self.hbox.pack_start(sw, False, False, 0)
d08b65
 
d08b65
--
d08b65
libgit2 0.26.0
d08b65