Blame SOURCES/reflect-extensions-status.patch

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