[gnome-tweak-tool] Asynchronous Update extensions using gdbus.
- From: John Stowers <jstowers src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-tweak-tool] Asynchronous Update extensions using gdbus.
- Date: Sun, 18 Aug 2013 19:50:50 +0000 (UTC)
commit ae84c7c2b93016209d9fb67f7be4f1199087ea80
Author: Alex Muñoz <alexmudoz gmail com>
Date: Thu Aug 15 13:55:20 2013 -0400
Asynchronous Update extensions using gdbus.
gnome-tweak-tool | 2 --
gtweak/gshellwrapper.py | 4 ++--
gtweak/tweaks/tweak_group_shell_extensions.py | 22 +++++++++++-----------
3 files changed, 13 insertions(+), 15 deletions(-)
---
diff --git a/gnome-tweak-tool b/gnome-tweak-tool
index 23c99f6..a47fa5c 100755
--- a/gnome-tweak-tool
+++ b/gnome-tweak-tool
@@ -24,8 +24,6 @@ import gi
gi.require_version("Gtk", "3.0")
import gtweak
-from gi.repository import GObject
-GObject.threads_init()
if __name__ == '__main__':
parser = optparse.OptionParser()
diff --git a/gtweak/gshellwrapper.py b/gtweak/gshellwrapper.py
index f585467..b28c5e5 100644
--- a/gtweak/gshellwrapper.py
+++ b/gtweak/gshellwrapper.py
@@ -164,8 +164,8 @@ class GnomeShell36(GnomeShell34):
def uninstall_extension(self, uuid):
return self._proxy.proxy_extensions.UninstallExtension('(s)', uuid)
- def install_remote_extension(self, uuid):
- return self._proxy.proxy_extensions.InstallRemoteExtension('(s)', uuid)
+ def install_remote_extension(self, uuid, reply_handler, error_handler, user_data):
+ self._proxy.proxy_extensions.InstallRemoteExtension('(s)', uuid, result_handler=reply_handler,
error_handler=error_handler, user_data=user_data)
@gtweak.utils.singleton
class GnomeShellFactory:
diff --git a/gtweak/tweaks/tweak_group_shell_extensions.py b/gtweak/tweaks/tweak_group_shell_extensions.py
index 7120611..f995c6f 100644
--- a/gtweak/tweaks/tweak_group_shell_extensions.py
+++ b/gtweak/tweaks/tweak_group_shell_extensions.py
@@ -3,11 +3,9 @@ import zipfile
import tempfile
import logging
import json
-import threading
from gi.repository import Gtk
from gi.repository import GLib
-from gi.repository import GObject
from gi.repository import Pango
from operator import itemgetter
@@ -146,15 +144,17 @@ class _ShellExtensionTweak(Gtk.ListBoxRow, Tweak):
btn.get_style_context().remove_class("suggested-action")
btn.set_label("Updating")
self.set_sensitive(False)
- thread = threading.Thread(target=self.download_extension, args=(btn,uuid,))
- thread.start()
-
- def download_extension(self, btn,uuid):
- status = self._shell.install_remote_extension(uuid)
- if status == 's':
- GObject.idle_add(self.deleteButton.show)
- GObject.idle_add(btn.hide)
- GObject.idle_add(self.set_sensitive, True)
+ self._shell.install_remote_extension(uuid,self.reply_handler, self.error_handler, btn)
+
+ def reply_handler(self, proxy_object, result, user_data):
+ if result == 's':
+ self.deleteButton.show()
+ user_data.hide()
+ self.set_sensitive(True)
+
+ def error_handler(self, proxy_object, result, user_data):
+ user_data.set_label("Error")
+ print result
def add_update_button(self, uuid):
self.deleteButton.hide()
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]