|
|
006048 |
From 61012b50f73e08089d9afc65ea069ce50af95a72 Mon Sep 17 00:00:00 2001
|
|
|
006048 |
From: Rui Matos <tiagomatos@gmail.com>
|
|
|
006048 |
Date: Thu, 7 Nov 2013 13:06:23 +0100
|
|
|
006048 |
Subject: [PATCH 2/6] tweak_shell_extensions.py: Disable widget if extension
|
|
|
006048 |
can't work
|
|
|
006048 |
|
|
|
006048 |
---
|
|
|
006048 |
gtweak/gshellwrapper.py | 4 ++++
|
|
|
006048 |
gtweak/tweaks/tweak_shell_extensions.py | 11 +++++++++++
|
|
|
006048 |
2 files changed, 15 insertions(+)
|
|
|
006048 |
|
|
|
006048 |
diff --git a/gtweak/gshellwrapper.py b/gtweak/gshellwrapper.py
|
|
|
006048 |
index d102b34..3b0cf16 100644
|
|
|
006048 |
--- a/gtweak/gshellwrapper.py
|
|
|
006048 |
+++ b/gtweak/gshellwrapper.py
|
|
|
006048 |
@@ -124,6 +124,10 @@ class GnomeShell:
|
|
|
006048 |
def version(self):
|
|
|
006048 |
return self._proxy.version
|
|
|
006048 |
|
|
|
006048 |
+ @property
|
|
|
006048 |
+ def extensions_proxy(self):
|
|
|
006048 |
+ return self._proxy.proxy_extensions
|
|
|
006048 |
+
|
|
|
006048 |
class GnomeShell32(GnomeShell):
|
|
|
006048 |
|
|
|
006048 |
EXTENSION_ENABLED_KEY = "enabled-extensions"
|
|
|
006048 |
diff --git a/gtweak/tweaks/tweak_shell_extensions.py b/gtweak/tweaks/tweak_shell_extensions.py
|
|
|
006048 |
index 80c8d3e..648a4ca 100644
|
|
|
006048 |
--- a/gtweak/tweaks/tweak_shell_extensions.py
|
|
|
006048 |
+++ b/gtweak/tweaks/tweak_shell_extensions.py
|
|
|
006048 |
@@ -67,6 +67,8 @@ class _ShellExtensionTweak(Tweak):
|
|
|
006048 |
warning=warning)
|
|
|
006048 |
self.widget_for_size_group = None
|
|
|
006048 |
|
|
|
006048 |
+ self._shell.extensions_proxy.connect('g-signal', self._extensions_signal, uuid)
|
|
|
006048 |
+
|
|
|
006048 |
def _on_configure_clicked(self, btn, uuid):
|
|
|
006048 |
execute_subprocess(['gnome-shell-extension-prefs', uuid], block=False)
|
|
|
006048 |
|
|
|
006048 |
@@ -99,6 +101,15 @@ class _ShellExtensionTweak(Tweak):
|
|
|
006048 |
self.widget.set_sensitive(False)
|
|
|
006048 |
dialog.destroy()
|
|
|
006048 |
|
|
|
006048 |
+ def _extensions_signal(self, proxy, sender, signal, params, uuid):
|
|
|
006048 |
+ if signal != 'ExtensionStatusChanged' or params[0] != uuid:
|
|
|
006048 |
+ return
|
|
|
006048 |
+
|
|
|
006048 |
+ state = params[1]
|
|
|
006048 |
+ self.widget.set_sensitive(state == GnomeShell.EXTENSION_STATE["ENABLED"] or
|
|
|
006048 |
+ state == GnomeShell.EXTENSION_STATE["DISABLED"] or
|
|
|
006048 |
+ state == GnomeShell.EXTENSION_STATE["INITIALIZED"])
|
|
|
006048 |
+
|
|
|
006048 |
class _ShellExtensionInstallerTweak(Tweak):
|
|
|
006048 |
|
|
|
006048 |
def __init__(self, shell, **options):
|
|
|
006048 |
--
|
|
|
006048 |
1.8.3.1
|
|
|
006048 |
|