From 83e28a2be874ac024ad68b767744ae73af229195 Mon Sep 17 00:00:00 2001 From: Emmanuel Gil Peyrot Date: Mon, 15 May 2017 23:09:27 +0100 Subject: Add /add in conversation tabs. This is a quick shortcut to add someone to your roster when talking with them. Fixes #3313. Also fixes typos. --- poezio/tabs/conversationtab.py | 18 ++++++++++++++++++ poezio/tabs/rostertab.py | 6 +++--- 2 files changed, 21 insertions(+), 3 deletions(-) (limited to 'poezio') diff --git a/poezio/tabs/conversationtab.py b/poezio/tabs/conversationtab.py index 5c309672..8da8f5ca 100644 --- a/poezio/tabs/conversationtab.py +++ b/poezio/tabs/conversationtab.py @@ -61,6 +61,11 @@ class ConversationTab(OneToOneTab): desc='Get the last activity of the given or the current contact.', shortdesc='Get the activity.', completion=self.core.completion.last_activity) + self.register_command('add', self.command_add, + desc='Add the current JID to your roster, ask them to' + ' allow you to see his presence, and allow them to' + ' see your presence.', + shortdesc='Add a user to your roster.') self.resize() self.update_commands() self.update_keys() @@ -224,6 +229,19 @@ class ConversationTab(OneToOneTab): fixes.get_version(self.core.xmpp, jid, callback=callback) + @command_args_parser.ignored + def command_add(self): + """ + Add the current JID to the roster, and automatically + accept the reverse subscription + """ + jid = self.general_jid + if jid in roster and roster[jid].subscription in ('to', 'both'): + return self.core.information('Already subscribed.', 'Roster') + roster.add(jid) + roster.modified() + self.core.information('%s was added to the roster' % jid, 'Roster') + def resize(self): self.need_resize = False if self.size.tab_degrade_y: diff --git a/poezio/tabs/rostertab.py b/poezio/tabs/rostertab.py index 2720bf7f..8edc88e0 100644 --- a/poezio/tabs/rostertab.py +++ b/poezio/tabs/rostertab.py @@ -82,8 +82,8 @@ class RosterInfoTab(Tab): completion=self.completion_deny) self.register_command('add', self.command_add, usage='', - desc='Add the specified JID to your roster, ask him to' - ' allow you to see his presence, and allow him to' + desc='Add the specified JID to your roster, ask them to' + ' allow you to see his presence, and allow them to' ' see your presence.', shortdesc='Add a user to your roster.') self.register_command('name', self.command_name, @@ -618,7 +618,7 @@ class RosterInfoTab(Tab): @command_args_parser.quoted(1) def command_add(self, args): """ - Add the specified JID to the roster, and set automatically + Add the specified JID to the roster, and automatically accept the reverse subscription """ if args is None: -- cgit v1.2.3