From 5a05b0f844d6564654bfcb869317d2ee5f2f8ec6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20H=C3=B6rist?= Date: Tue, 28 Feb 2017 20:11:10 +0100 Subject: [PATCH] [emoticons] Use extension point --- emoticons_pack/emoticons_pack.py | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/emoticons_pack/emoticons_pack.py b/emoticons_pack/emoticons_pack.py index 08e9901..680364f 100644 --- a/emoticons_pack/emoticons_pack.py +++ b/emoticons_pack/emoticons_pack.py @@ -39,6 +39,7 @@ class EmoticonsPackPlugin(GajimPlugin): self.description = _('Install, update and view detailed legend ' 'of emoticons') self.config_dialog = None # EmoticonsPackPluginConfigDialog(self) + self.gui_extension_points = {'plugin_window': (self.on_activate, None)} self.window = None self.model = None self.connected_ids = {} @@ -46,15 +47,11 @@ class EmoticonsPackPlugin(GajimPlugin): @log_calls('EmoticonsPackPlugin') def activate(self): - self.pl_menuitem = gajim.interface.roster.xml.get_object( - 'plugins_menuitem') - self.id_ = self.pl_menuitem.connect_after('activate', self.on_activate) if 'plugins' in gajim.interface.instances: - self.on_activate(None) + self.on_activate(gajim.interface.instances['plugins']) @log_calls('EmoticonsPackPlugin') def deactivate(self): - self.pl_menuitem.disconnect(self.id_) if hasattr(self, 'page_num'): self.notebook.remove_page(self.notebook.page_num(self.hpaned)) self.notebook.set_current_page(0) @@ -62,19 +59,15 @@ class EmoticonsPackPlugin(GajimPlugin): widget.disconnect(id_) del self.page_num - def on_activate(self, widget): - if 'plugins' not in gajim.interface.instances: - return + def on_activate(self, plugin_win): if hasattr(self, 'page_num'): # 'Available' tab exists return - self.installed_plugins_model = gajim.interface.instances[ - 'plugins'].installed_plugins_model - self.notebook = gajim.interface.instances['plugins'].plugins_notebook + self.notebook = plugin_win.plugins_notebook id_ = self.notebook.connect( 'switch-page', self.on_notebook_switch_page) self.connected_ids[id_] = self.notebook - self.window = gajim.interface.instances['plugins'].window + self.window = plugin_win.window id_ = self.window.connect('destroy', self.on_win_destroy) self.connected_ids[id_] = self.window self.Gtk_BUILDER_FILE_PATH = self.local_file_path('config_dialog.ui')