From 76d0f16d4a0dcc92013bb546d667143732661ad2 Mon Sep 17 00:00:00 2001 From: Yann Leboulanger Date: Mon, 13 Jan 2014 20:25:07 +0100 Subject: [PATCH] force sending muc invitation to the jid/resource if we're chatting with a specific resource. Fixes #7582 --- src/gui_menu_builder.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/gui_menu_builder.py b/src/gui_menu_builder.py index 8a91fa678..2edd1c837 100644 --- a/src/gui_menu_builder.py +++ b/src/gui_menu_builder.py @@ -64,9 +64,11 @@ def build_resources_submenu(contacts, account, action, room_jid=None, return sub_menu def build_invite_submenu(invite_menuitem, list_, ignore_rooms=[], -show_bookmarked=False): +show_bookmarked=False, force_resource=False): """ list_ in a list of (contact, account) + force_resource means we want to send invitation even if there is only one + resource """ roster = gajim.interface.roster # used if we invite only one contact with several resources @@ -104,7 +106,7 @@ show_bookmarked=False): elif len(list_) == 1 and contact.supports(NS_MUC): invite_menuitem.set_sensitive(True) # use resource if it's self contact - if contact.jid == gajim.get_jid_from_account(account): + if contact.jid == gajim.get_jid_from_account(account) or force_resource: resource = contact.resource else: resource = None @@ -455,8 +457,12 @@ control=None, gc_contact=None, is_anonymous=True): build_invite_submenu(invite_menuitem, [(gc_contact, account)], show_bookmarked=bookmarked) else: + force_resource = False + if control and control.resource: + force_resource = True build_invite_submenu(invite_menuitem, [(contact, account)], - show_bookmarked=contact.supports(NS_CONFERENCE)) + show_bookmarked=contact.supports(NS_CONFERENCE), + force_resource=force_resource) if gajim.account_is_disconnected(account): invite_menuitem.set_sensitive(False)