Philipp Hörist pushed to branch master at gajim / gajim

Commits:
afc30754 by Philipp Hörist at 2018-01-27T10:29:52+01:00
Refactor adding actions to chat windows

- - - - -
36f23c9c by Philipp Hörist at 2018-01-27T10:55:25+01:00
Update httpupload action on discovery

- - - - -


5 changed files:

- gajim/chat_control.py
- gajim/chat_control_base.py
- gajim/common/connection.py
- gajim/common/httpupload.py
- gajim/groupchat_control.py


Changes:

=====================================
gajim/chat_control.py
=====================================
--- a/gajim/chat_control.py
+++ b/gajim/chat_control.py
@@ -245,6 +245,7 @@ class ChatControl(ChatControlBase):
         self.update_actions()
 
     def add_actions(self):
+        super().add_actions()
         actions = [
             ('invite-contacts-', self._on_invite_contacts),
             ('add-to-roster-', self._on_add_to_roster),


=====================================
gajim/chat_control_base.py
=====================================
--- a/gajim/chat_control_base.py
+++ b/gajim/chat_control_base.py
@@ -371,8 +371,6 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, 
CommandTools):
             self._schedule_activity_timers()
 
         self.encryption = self.get_encryption_state()
-        if self.parent_win:
-            self.add_window_actions()
 
         # PluginSystem: adding GUI extension point for ChatControlBase
         # instance object (also subclasses, eg. ChatControl or 
GroupchatControl)
@@ -391,7 +389,7 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, 
CommandTools):
         # to properly use the super, because of the old code.
         CommandTools.__init__(self)
 
-    def add_window_actions(self):
+    def add_actions(self):
         action = Gio.SimpleAction.new_stateful(
             "set-encryption-%s" % self.control_id,
             GLib.VariantType.new("s"),


=====================================
gajim/common/connection.py
=====================================
--- a/gajim/common/connection.py
+++ b/gajim/common/connection.py
@@ -165,7 +165,6 @@ class CommonConnection:
         # the fake jid
         self.groupchat_jids = {} # {ID : groupchat_jid}
 
-        self.httpupload = False
         self.privacy_rules_supported = False
         self.vcard_supported = False
         self.private_storage_supported = False
@@ -1970,8 +1969,6 @@ class Connection(CommonConnection, ConnectionHandlers):
 
                 self._continue_connection_request_privacy()
 
-            if nbxmpp.NS_HTTPUPLOAD in obj.features:
-                self.httpupload = True
             if nbxmpp.NS_BYTESTREAM in obj.features and \
             app.config.get_per('accounts', self.name, 'use_ft_proxies'):
                 our_fjid = helpers.parse_jid(our_jid + '/' + \


=====================================
gajim/common/httpupload.py
=====================================
--- a/gajim/common/httpupload.py
+++ b/gajim/common/httpupload.py
@@ -47,6 +47,7 @@ class ConnectionHTTPUpload:
     (XEP-0363, https://xmpp.org/extensions/xep-0363.html)
     """
     def __init__(self):
+        self.httpupload = False
         self.encrypted_upload = False
         self.component = None
         self.max_file_size = None  # maximum file size in bytes
@@ -103,6 +104,10 @@ class ConnectionHTTPUpload:
             log.info('%s has a maximum file size of: %s MiB',
                      account, self.max_file_size/(1024*1024))
 
+        self.httpupload = True
+        for ctrl in app.interface.msg_win_mgr.get_controls(acct=self.name):
+            ctrl.update_actions()
+
     def handle_outgoing_stanza(self, event):
         if event.conn.name != self.name:
             return


=====================================
gajim/groupchat_control.py
=====================================
--- a/gajim/groupchat_control.py
+++ b/gajim/groupchat_control.py
@@ -514,6 +514,7 @@ class GroupchatControl(ChatControlBase):
         app.plugin_manager.gui_extension_point('groupchat_control', self)
 
     def add_actions(self):
+        super().add_actions()
         actions = [
             ('change-subject-', self._on_change_subject),
             ('change-nick-', self._on_change_nick),
@@ -729,7 +730,6 @@ class GroupchatControl(ChatControlBase):
 
     def on_groupchat_maximize(self):
         self.set_tooltip()
-        self.add_window_actions()
         self.add_actions()
         self.update_actions()
         self.set_lock_image()



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/compare/b8a62a8bb22f3577bc4e10442745b49c870eabab...36f23c9cf2de22a157a3b057576d45d14259c722

---
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/compare/b8a62a8bb22f3577bc4e10442745b49c870eabab...36f23c9cf2de22a157a3b057576d45d14259c722
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits

Reply via email to