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 resource = None
invite_to_new_room_menuitem.connect('activate', invite_to_new_room_menuitem.connect('activate',
roster.on_invite_to_new_room, list_, resource) 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: else:
invite_menuitem.set_sensitive(True) invite_menuitem.set_sensitive(False)
# transform None in 'jabber' # transform None in 'jabber'
c_t = contacts_transport or 'jabber' c_t = contacts_transport or 'jabber'
muc_jid = {} muc_jid = {}

View File

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