fix inviting several contacts to a room. And don't allow to invite transports. Fixes 7527

This commit is contained in:
Yann Leboulanger 2013-11-01 12:08:05 +01:00
parent b38fac4abe
commit 812e8c331d
2 changed files with 20 additions and 7 deletions

View File

@ -109,8 +109,18 @@ def build_invite_submenu(invite_menuitem, list_, ignore_rooms=[]):
resource = None
invite_to_new_room_menuitem.connect('activate',
roster.on_invite_to_new_room, list_, resource)
elif len(list_) > 1:
list2 = []
for (c, a) in list_:
if c.supports(NS_MUC):
list2.append((c, a))
if len(list2) > 0:
invite_to_new_room_menuitem.connect('activate',
roster.on_invite_to_new_room, list2, None)
else:
invite_menuitem.set_sensitive(False)
else:
invite_menuitem.set_sensitive(True)
invite_menuitem.set_sensitive(False)
# transform None in 'jabber'
c_t = contacts_transport or 'jabber'
muc_jid = {}

View File

@ -5782,13 +5782,16 @@ class RosterWindow:
self.on_send_single_message_menuitem_activate, account, list_)
# Invite to
invite_menuitem = Gtk.ImageMenuItem.new_with_mnemonic(_('In_vite to'))
muc_icon = gtkgui_helpers.load_icon('muc_active')
if muc_icon:
invite_menuitem.set_image(muc_icon)
if group != _('Transports'):
invite_menuitem = Gtk.ImageMenuItem.new_with_mnemonic(
_('In_vite to'))
muc_icon = gtkgui_helpers.load_icon('muc_active')
if muc_icon:
invite_menuitem.set_image(muc_icon)
gui_menu_builder.build_invite_submenu(invite_menuitem, list_online)
menu.append(invite_menuitem)
gui_menu_builder.build_invite_submenu(invite_menuitem,
list_online)
menu.append(invite_menuitem)
# Send Custom Status
send_custom_status_menuitem = Gtk.ImageMenuItem.new_with_mnemonic(