fixed an oops
This commit is contained in:
		
							parent
							
								
									ac53772333
								
							
						
					
					
						commit
						b10b49b722
					
				
					 2 changed files with 74 additions and 61 deletions
				
			
		| 
						 | 
					@ -980,8 +980,8 @@ class Account_modification_window:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	def on_save_button_clicked(self, widget):
 | 
						def on_save_button_clicked(self, widget):
 | 
				
			||||||
		'''When save button is clicked: Save information in config file'''
 | 
							'''When save button is clicked: Save information in config file'''
 | 
				
			||||||
		save_password =
 | 
							save_password =	self.xml.get_widget(
 | 
				
			||||||
		self.xml.get_widget('save_password_checkbutton').get_active()
 | 
							'save_password_checkbutton').get_active()
 | 
				
			||||||
		password = self.xml.get_widget('password_entry').get_text()
 | 
							password = self.xml.get_widget('password_entry').get_text()
 | 
				
			||||||
		resource = self.xml.get_widget('resource_entry').get_text()
 | 
							resource = self.xml.get_widget('resource_entry').get_text()
 | 
				
			||||||
		priority = self.xml.get_widget('priority_spinbutton').get_value_as_int()
 | 
							priority = self.xml.get_widget('priority_spinbutton').get_value_as_int()
 | 
				
			||||||
| 
						 | 
					@ -1005,8 +1005,8 @@ class Account_modification_window:
 | 
				
			||||||
		if not self.xml.get_widget('log_history_checkbutton').get_active():
 | 
							if not self.xml.get_widget('log_history_checkbutton').get_active():
 | 
				
			||||||
			list_no_log_for.append(name)
 | 
								list_no_log_for.append(name)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		sync_with_global_status_checkbutton =
 | 
							sync_with_global_status_checkbutton =self.xml.get_widget(
 | 
				
			||||||
		self.xml.get_widget('sync_with_global_status_checkbutton').get_active()
 | 
							'sync_with_global_status_checkbutton').get_active()
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
		use_proxy = self.xml.get_widget('use_proxy_checkbutton').get_active()
 | 
							use_proxy = self.xml.get_widget('use_proxy_checkbutton').get_active()
 | 
				
			||||||
		proxyhost = self.xml.get_widget('proxyhost_entry').get_text()
 | 
							proxyhost = self.xml.get_widget('proxyhost_entry').get_text()
 | 
				
			||||||
| 
						 | 
					@ -1045,8 +1045,8 @@ class Account_modification_window:
 | 
				
			||||||
			gpg_password = ''
 | 
								gpg_password = ''
 | 
				
			||||||
		else:
 | 
							else:
 | 
				
			||||||
			keyID = self.xml.get_widget('gpg_key_label').get_text()
 | 
								keyID = self.xml.get_widget('gpg_key_label').get_text()
 | 
				
			||||||
			save_gpg_password =
 | 
								save_gpg_password =self.xml.get_widget(
 | 
				
			||||||
			self.xml.get_widget('gpg_save_password_checkbutton').get_active()
 | 
								'gpg_save_password_checkbutton').get_active()
 | 
				
			||||||
			gpg_password = self.xml.get_widget('gpg_password_entry').get_text()
 | 
								gpg_password = self.xml.get_widget('gpg_password_entry').get_text()
 | 
				
			||||||
		#if we are modifying an account
 | 
							#if we are modifying an account
 | 
				
			||||||
		if self.modify:
 | 
							if self.modify:
 | 
				
			||||||
| 
						 | 
					@ -1190,16 +1190,16 @@ class Account_modification_window:
 | 
				
			||||||
		proxyhost = self.xml.get_widget('proxyhost_entry').get_text()
 | 
							proxyhost = self.xml.get_widget('proxyhost_entry').get_text()
 | 
				
			||||||
		proxyport = self.xml.get_widget('proxyport_entry').get_text()
 | 
							proxyport = self.xml.get_widget('proxyport_entry').get_text()
 | 
				
			||||||
		key_name = self.xml.get_widget('gpg_name_label').get_text()
 | 
							key_name = self.xml.get_widget('gpg_name_label').get_text()
 | 
				
			||||||
		save_password = 
 | 
							save_password = self.xml.get_widget(
 | 
				
			||||||
		self.xml.get_widget('save_password_checkbutton').get_active()
 | 
							'save_password_checkbutton').get_active()
 | 
				
			||||||
		if key_name == '': #no key selected
 | 
							if key_name == '': #no key selected
 | 
				
			||||||
			keyID = ''
 | 
								keyID = ''
 | 
				
			||||||
			save_gpg_password = False
 | 
								save_gpg_password = False
 | 
				
			||||||
			gpg_password = ''
 | 
								gpg_password = ''
 | 
				
			||||||
		else:
 | 
							else:
 | 
				
			||||||
			keyID = self.xml.get_widget('gpg_key_label').get_text()
 | 
								keyID = self.xml.get_widget('gpg_key_label').get_text()
 | 
				
			||||||
			save_gpg_password = 
 | 
								save_gpg_password =self.xml.get_widget(
 | 
				
			||||||
			self.xml.get_widget('gpg_save_password_checkbutton').get_active()
 | 
								'gpg_save_password_checkbutton').get_active()
 | 
				
			||||||
			gpg_password = self.xml.get_widget('gpg_password_entry').get_text()
 | 
								gpg_password = self.xml.get_widget('gpg_password_entry').get_text()
 | 
				
			||||||
		no_log_for = ''
 | 
							no_log_for = ''
 | 
				
			||||||
		if self.xml.get_widget('log_history_checkbutton').get_active():
 | 
							if self.xml.get_widget('log_history_checkbutton').get_active():
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -111,10 +111,10 @@ class Roster_window:
 | 
				
			||||||
		model = self.tree.get_model()
 | 
							model = self.tree.get_model()
 | 
				
			||||||
		if self.get_account_iter(account):
 | 
							if self.get_account_iter(account):
 | 
				
			||||||
			return
 | 
								return
 | 
				
			||||||
		statuss = ['offline', 'connecting', 'online', 'away', 'xa', 'dnd',\
 | 
							statuss = ['offline', 'connecting', 'online', 'away', 'xa', 'dnd',
 | 
				
			||||||
			'invisible']
 | 
								'invisible']
 | 
				
			||||||
		status = statuss[gajim.connections[account].connected]
 | 
							status = statuss[gajim.connections[account].connected]
 | 
				
			||||||
		model.append(None, (self.pixbufs[status], account, 'account', account,\
 | 
							model.append(None, (self.pixbufs[status], account, 'account', account,
 | 
				
			||||||
			account, False))
 | 
								account, False))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	def remove_newly_added(self, jid, account):
 | 
						def remove_newly_added(self, jid, account):
 | 
				
			||||||
| 
						 | 
					@ -144,15 +144,15 @@ class Roster_window:
 | 
				
			||||||
			iterG = self.get_group_iter(g, account)
 | 
								iterG = self.get_group_iter(g, account)
 | 
				
			||||||
			if not iterG:
 | 
								if not iterG:
 | 
				
			||||||
				IterAcct = self.get_account_iter(account)
 | 
									IterAcct = self.get_account_iter(account)
 | 
				
			||||||
				iterG = model.append(IterAcct, \
 | 
									iterG = model.append(IterAcct, 
 | 
				
			||||||
					(self.pixbufs['closed'], g, 'group', \
 | 
										(self.pixbufs['closed'], g, 'group', 
 | 
				
			||||||
					g, account, False))
 | 
										g, account, False))
 | 
				
			||||||
			if not self.groups[account].has_key(g): #It can probably never append
 | 
								if not self.groups[account].has_key(g): #It can probably never append
 | 
				
			||||||
				if account+g in self.hidden_lines:
 | 
									if account+g in self.hidden_lines:
 | 
				
			||||||
					self.groups[account][g] = {'expand': False}
 | 
										self.groups[account][g] = {'expand': False}
 | 
				
			||||||
				else:
 | 
									else:
 | 
				
			||||||
					self.groups[account][g] = {'expand': True}
 | 
										self.groups[account][g] = {'expand': True}
 | 
				
			||||||
			if not account in self.hidden_lines and not gajim.config.get(\
 | 
								if not account in self.hidden_lines and not gajim.config.get(
 | 
				
			||||||
				'mergeaccounts'):
 | 
									'mergeaccounts'):
 | 
				
			||||||
				self.tree.expand_row((model.get_path(iterG)[0]), False)
 | 
									self.tree.expand_row((model.get_path(iterG)[0]), False)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -160,7 +160,7 @@ class Roster_window:
 | 
				
			||||||
			if g == 'Agents':
 | 
								if g == 'Agents':
 | 
				
			||||||
				typestr = 'agent'
 | 
									typestr = 'agent'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			model.append(iterG, (self.pixbufs[user.show], \
 | 
								model.append(iterG, (self.pixbufs[user.show], 
 | 
				
			||||||
				user.name, typestr, user.jid, account, False))
 | 
									user.name, typestr, user.jid, account, False))
 | 
				
			||||||
			
 | 
								
 | 
				
			||||||
			if self.groups[account][g]['expand']:
 | 
								if self.groups[account][g]['expand']:
 | 
				
			||||||
| 
						 | 
					@ -226,7 +226,6 @@ class Roster_window:
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	def make_menu(self):
 | 
						def make_menu(self):
 | 
				
			||||||
		'''create the main_window's menus'''
 | 
							'''create the main_window's menus'''
 | 
				
			||||||
		# try to avoid WIDGET_REALIZED_FOR_EVENT failed which freezes gajim
 | 
					 | 
				
			||||||
		new_message_menuitem = self.xml.get_widget('new_message_menuitem')
 | 
							new_message_menuitem = self.xml.get_widget('new_message_menuitem')
 | 
				
			||||||
		join_gc_menuitem = self.xml.get_widget('join_gc_menuitem')
 | 
							join_gc_menuitem = self.xml.get_widget('join_gc_menuitem')
 | 
				
			||||||
		add_new_contact_menuitem  = self.xml.get_widget('add_new_contact_menuitem')
 | 
							add_new_contact_menuitem  = self.xml.get_widget('add_new_contact_menuitem')
 | 
				
			||||||
| 
						 | 
					@ -235,14 +234,14 @@ class Roster_window:
 | 
				
			||||||
			add_new_contact_menuitem.handler_disconnect(self.add_new_contact_handler_id)
 | 
								add_new_contact_menuitem.handler_disconnect(self.add_new_contact_handler_id)
 | 
				
			||||||
			self.add_new_contact_handler_id = None
 | 
								self.add_new_contact_handler_id = None
 | 
				
			||||||
		if self.service_disco_handler_id:
 | 
							if self.service_disco_handler_id:
 | 
				
			||||||
			service_disco_menuitem.handler_disconnect(\
 | 
								service_disco_menuitem.handler_disconnect(
 | 
				
			||||||
				self.service_disco_handler_id)
 | 
									self.service_disco_handler_id)
 | 
				
			||||||
			self.service_disco_handler_id = None
 | 
								self.service_disco_handler_id = None
 | 
				
			||||||
		if self.join_gc_handler_id:
 | 
							if self.join_gc_handler_id:
 | 
				
			||||||
			join_gc_menuitem.handler_disconnect(self.join_gc_handler_id)
 | 
								join_gc_menuitem.handler_disconnect(self.join_gc_handler_id)
 | 
				
			||||||
			self.join_gc_handler_id = None
 | 
								self.join_gc_handler_id = None
 | 
				
			||||||
		if self.new_message_menuitem_handler_id:
 | 
							if self.new_message_menuitem_handler_id:
 | 
				
			||||||
			new_message_menuitem.handler_disconnect(\
 | 
								new_message_menuitem.handler_disconnect(
 | 
				
			||||||
				self.new_message_menuitem_handler_id)
 | 
									self.new_message_menuitem_handler_id)
 | 
				
			||||||
			self.new_message_menuitem_handler_id = None
 | 
								self.new_message_menuitem_handler_id = None
 | 
				
			||||||
		#remove the existing submenus
 | 
							#remove the existing submenus
 | 
				
			||||||
| 
						 | 
					@ -301,27 +300,27 @@ class Roster_window:
 | 
				
			||||||
					gajim.config.get_per('accounts', account, 'hostname')
 | 
										gajim.config.get_per('accounts', account, 'hostname')
 | 
				
			||||||
				item = gtk.MenuItem(_('as ') + our_jid)
 | 
									item = gtk.MenuItem(_('as ') + our_jid)
 | 
				
			||||||
				sub_menu.append(item)
 | 
									sub_menu.append(item)
 | 
				
			||||||
				item.connect('activate', self.on_new_message_menuitem_activate, \
 | 
									item.connect('activate', self.on_new_message_menuitem_activate, 
 | 
				
			||||||
					account)
 | 
										account)
 | 
				
			||||||
			sub_menu.show_all()
 | 
								sub_menu.show_all()
 | 
				
			||||||
		elif len(gajim.connections) == 1: # one account
 | 
							elif len(gajim.connections) == 1: # one account
 | 
				
			||||||
			#add
 | 
								#add
 | 
				
			||||||
			if not self.add_new_contact_handler_id:
 | 
								if not self.add_new_contact_handler_id:
 | 
				
			||||||
				self.add_new_contact_handler_id = add_new_contact_menuitem.connect(\
 | 
									self.add_new_contact_handler_id = add_new_contact_menuitem.connect(
 | 
				
			||||||
				'activate', self.on_add_new_contact, gajim.connections.keys()[0])
 | 
									'activate', self.on_add_new_contact, gajim.connections.keys()[0])
 | 
				
			||||||
			#disco
 | 
								#disco
 | 
				
			||||||
			if not self.service_disco_handler_id:
 | 
								if not self.service_disco_handler_id:
 | 
				
			||||||
				self.service_disco_handler_id = service_disco_menuitem.connect( \
 | 
									self.service_disco_handler_id = service_disco_menuitem.connect( 
 | 
				
			||||||
					'activate', self.on_service_disco_menuitem_activate, \
 | 
										'activate', self.on_service_disco_menuitem_activate, 
 | 
				
			||||||
					gajim.connections.keys()[0])
 | 
										gajim.connections.keys()[0])
 | 
				
			||||||
			#join_gc
 | 
								#join_gc
 | 
				
			||||||
			if not self.join_gc_handler_id:
 | 
								if not self.join_gc_handler_id:
 | 
				
			||||||
				self.join_gc_handler_id = join_gc_menuitem.connect( \
 | 
									self.join_gc_handler_id = join_gc_menuitem.connect( 
 | 
				
			||||||
					'activate', self.on_join_gc_activate, gajim.connections.keys()\
 | 
										'activate', self.on_join_gc_activate, gajim.connections.keys()
 | 
				
			||||||
					[0])
 | 
										[0])
 | 
				
			||||||
			if not self.new_message_menuitem_handler_id:
 | 
								if not self.new_message_menuitem_handler_id:
 | 
				
			||||||
				self.new_message_menuitem_handler_id = new_message_menuitem. \
 | 
									self.new_message_menuitem_handler_id = new_message_menuitem.\
 | 
				
			||||||
					connect('activate', self.on_new_message_menuitem_activate, \
 | 
										connect('activate', self.on_new_message_menuitem_activate, 
 | 
				
			||||||
					gajim.connections.keys()[0])
 | 
										gajim.connections.keys()[0])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	def draw_roster(self):
 | 
						def draw_roster(self):
 | 
				
			||||||
| 
						 | 
					@ -359,8 +358,8 @@ class Roster_window:
 | 
				
			||||||
			if not show:
 | 
								if not show:
 | 
				
			||||||
				show = 'offline'
 | 
									show = 'offline'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			user1 = User(ji, name, array[jid]['groups'], show, \
 | 
								user1 = User(ji, name, array[jid]['groups'], show, 
 | 
				
			||||||
				array[jid]['status'], array[jid]['sub'], array[jid]['ask'], \
 | 
									array[jid]['status'], array[jid]['sub'], array[jid]['ask'], 
 | 
				
			||||||
				resource, 0, '')
 | 
									resource, 0, '')
 | 
				
			||||||
			#when we draw the roster, we can't have twice the same user with 
 | 
								#when we draw the roster, we can't have twice the same user with 
 | 
				
			||||||
			# 2 resources
 | 
								# 2 resources
 | 
				
			||||||
| 
						 | 
					@ -398,7 +397,7 @@ class Roster_window:
 | 
				
			||||||
			name = user.name
 | 
								name = user.name
 | 
				
			||||||
			if user.resource != '':
 | 
								if user.resource != '':
 | 
				
			||||||
				name += '/'+user.resource
 | 
									name += '/'+user.resource
 | 
				
			||||||
			self.plugin.windows[account]['chats'][user.jid].print_conversation(\
 | 
								self.plugin.windows[account]['chats'][user.jid].print_conversation(
 | 
				
			||||||
				_('%s is now %s (%s)') % (name, show, status), user.jid, 'status')
 | 
									_('%s is now %s (%s)') % (name, show, status), user.jid, 'status')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	def on_info(self, widget, user, account):
 | 
						def on_info(self, widget, user, account):
 | 
				
			||||||
| 
						 | 
					@ -468,7 +467,7 @@ class Roster_window:
 | 
				
			||||||
		item.connect('activate', self.authorize, jid, account)
 | 
							item.connect('activate', self.authorize, jid, account)
 | 
				
			||||||
		item = gtk.MenuItem(_('Rerequest authorization from'))
 | 
							item = gtk.MenuItem(_('Rerequest authorization from'))
 | 
				
			||||||
		sub_menu.append(item)
 | 
							sub_menu.append(item)
 | 
				
			||||||
		item.connect('activate', self.req_sub, jid, \
 | 
							item.connect('activate', self.req_sub, jid, 
 | 
				
			||||||
			_('I would like to add you to my contact list.'), account)
 | 
								_('I would like to add you to my contact list.'), account)
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
		item = gtk.MenuItem(_('Remove'))
 | 
							item = gtk.MenuItem(_('Remove'))
 | 
				
			||||||
| 
						 | 
					@ -518,7 +517,7 @@ class Roster_window:
 | 
				
			||||||
		if self.contacts[account][jid][0].show == 'offline':
 | 
							if self.contacts[account][jid][0].show == 'offline':
 | 
				
			||||||
			item.set_sensitive(False)
 | 
								item.set_sensitive(False)
 | 
				
			||||||
		menu.append(item)
 | 
							menu.append(item)
 | 
				
			||||||
		item.connect('activate', self.on_agent_logging, jid, 'unavailable', \
 | 
							item.connect('activate', self.on_agent_logging, jid, 'unavailable',
 | 
				
			||||||
			account)
 | 
								account)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		item = gtk.MenuItem()
 | 
							item = gtk.MenuItem()
 | 
				
			||||||
| 
						 | 
					@ -609,7 +608,7 @@ class Roster_window:
 | 
				
			||||||
		if not self.contacts[account].has_key(jid):
 | 
							if not self.contacts[account].has_key(jid):
 | 
				
			||||||
			if not group:
 | 
								if not group:
 | 
				
			||||||
				group = 'General'
 | 
									group = 'General'
 | 
				
			||||||
			user1 = User(jid, pseudo, [group], 'requested', \
 | 
								user1 = User(jid, pseudo, [group], 'requested', 
 | 
				
			||||||
				'requested', 'none', 'subscribe', '', 0, '')
 | 
									'requested', 'none', 'subscribe', '', 0, '')
 | 
				
			||||||
			self.contacts[account][jid] = [user1]
 | 
								self.contacts[account][jid] = [user1]
 | 
				
			||||||
			self.add_user_to_roster(jid, account)
 | 
								self.add_user_to_roster(jid, account)
 | 
				
			||||||
| 
						 | 
					@ -648,7 +647,7 @@ class Roster_window:
 | 
				
			||||||
		if event.type == gtk.gdk.BUTTON_PRESS:
 | 
							if event.type == gtk.gdk.BUTTON_PRESS:
 | 
				
			||||||
			if event.button == 3: # Right click
 | 
								if event.button == 3: # Right click
 | 
				
			||||||
				try:
 | 
									try:
 | 
				
			||||||
					path, column, x, y = self.tree.get_path_at_pos(int(event.x), \
 | 
										path, column, x, y = self.tree.get_path_at_pos(int(event.x), 
 | 
				
			||||||
						int(event.y))
 | 
											int(event.y))
 | 
				
			||||||
				except TypeError:
 | 
									except TypeError:
 | 
				
			||||||
					self.tree.get_selection().unselect_all()
 | 
										self.tree.get_selection().unselect_all()
 | 
				
			||||||
| 
						 | 
					@ -668,7 +667,7 @@ class Roster_window:
 | 
				
			||||||
				return False
 | 
									return False
 | 
				
			||||||
			if event.button == 1: # Left click
 | 
								if event.button == 1: # Left click
 | 
				
			||||||
				try:
 | 
									try:
 | 
				
			||||||
					path, column, x, y = self.tree.get_path_at_pos(int(event.x), \
 | 
										path, column, x, y = self.tree.get_path_at_pos(int(event.x), 
 | 
				
			||||||
						int(event.y))
 | 
											int(event.y))
 | 
				
			||||||
				except TypeError:
 | 
									except TypeError:
 | 
				
			||||||
					self.tree.get_selection().unselect_all()
 | 
										self.tree.get_selection().unselect_all()
 | 
				
			||||||
| 
						 | 
					@ -707,7 +706,7 @@ class Roster_window:
 | 
				
			||||||
			save_pass = gajim.config.get_per('accounts', account, 'savepass')
 | 
								save_pass = gajim.config.get_per('accounts', account, 'savepass')
 | 
				
			||||||
			if not save_pass and gajim.connections[account].connected < 2:
 | 
								if not save_pass and gajim.connections[account].connected < 2:
 | 
				
			||||||
				passphrase = ''
 | 
									passphrase = ''
 | 
				
			||||||
				w = dialogs.Passphrase_dialog(_('Enter your password for account %s') \
 | 
									w = dialogs.Passphrase_dialog(_('Enter your password for account %s') 
 | 
				
			||||||
					% account, 'Save password', autoconnect)
 | 
										% account, 'Save password', autoconnect)
 | 
				
			||||||
				passphrase, save = w.run()
 | 
									passphrase, save = w.run()
 | 
				
			||||||
				if passphrase == -1:
 | 
									if passphrase == -1:
 | 
				
			||||||
| 
						 | 
					@ -724,32 +723,32 @@ class Roster_window:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			keyid = None
 | 
								keyid = None
 | 
				
			||||||
			save_gpg_pass = 0
 | 
								save_gpg_pass = 0
 | 
				
			||||||
			save_gpg_pass = gajim.config.get_per('accounts', account, \
 | 
								save_gpg_pass = gajim.config.get_per('accounts', account, 
 | 
				
			||||||
				'savegpgpass')
 | 
									'savegpgpass')
 | 
				
			||||||
			keyid = gajim.config.get_per('accounts', account, 'keyid')
 | 
								keyid = gajim.config.get_per('accounts', account, 'keyid')
 | 
				
			||||||
			if keyid and gajim.connections[account].connected < 2 and \
 | 
								if keyid and gajim.connections[account].connected < 2 and \
 | 
				
			||||||
				gajim.config.get('usegpg'):
 | 
									gajim.config.get('usegpg'):
 | 
				
			||||||
				if save_gpg_pass:
 | 
									if save_gpg_pass:
 | 
				
			||||||
					passphrase = gajim.config.get_per('accounts', account, \
 | 
										passphrase = gajim.config.get_per('accounts', account, 
 | 
				
			||||||
						'gpgpassword')
 | 
											'gpgpassword')
 | 
				
			||||||
				else:
 | 
									else:
 | 
				
			||||||
					passphrase = ''
 | 
										passphrase = ''
 | 
				
			||||||
					w = dialogs.Passphrase_dialog(\
 | 
										w = dialogs.Passphrase_dialog(
 | 
				
			||||||
						_('Enter GPG key passphrase for account %s') % account, \
 | 
											_('Enter GPG key passphrase for account %s') % account, 
 | 
				
			||||||
						'Save passphrase', autoconnect)
 | 
											'Save passphrase', autoconnect)
 | 
				
			||||||
					passphrase, save = w.run()
 | 
										passphrase, save = w.run()
 | 
				
			||||||
					if passphrase == -1:
 | 
										if passphrase == -1:
 | 
				
			||||||
						passphrase = ''
 | 
											passphrase = ''
 | 
				
			||||||
					if save:
 | 
										if save:
 | 
				
			||||||
						gajim.config.set_per('accounts', account, 'savegpgpass', True)
 | 
											gajim.config.set_per('accounts', account, 'savegpgpass', True)
 | 
				
			||||||
						gajim.config.set_per('accounts', account, 'gpgpassword', \
 | 
											gajim.config.set_per('accounts', account, 'gpgpassword', 
 | 
				
			||||||
							passphrase)
 | 
												passphrase)
 | 
				
			||||||
				gajim.connections[account].gpg_passphrase(passphrase)
 | 
									gajim.connections[account].gpg_passphrase(passphrase)
 | 
				
			||||||
		gajim.connections[account].change_status(status, txt)
 | 
							gajim.connections[account].change_status(status, txt)
 | 
				
			||||||
		for room_jid in self.plugin.windows[account]['gc']:
 | 
							for room_jid in self.plugin.windows[account]['gc']:
 | 
				
			||||||
			if room_jid != 'tabbed':
 | 
								if room_jid != 'tabbed':
 | 
				
			||||||
				nick = self.plugin.windows[account]['gc'][room_jid].nicks[room_jid]
 | 
									nick = self.plugin.windows[account]['gc'][room_jid].nicks[room_jid]
 | 
				
			||||||
				gajim.connections[account].send_gc_status(nick, room_jid, status, \
 | 
									gajim.connections[account].send_gc_status(nick, room_jid, status, 
 | 
				
			||||||
					txt)
 | 
										txt)
 | 
				
			||||||
		if status == 'online' and self.plugin.sleeper.getState() != \
 | 
							if status == 'online' and self.plugin.sleeper.getState() != \
 | 
				
			||||||
			common.sleepy.STATE_UNKNOWN:
 | 
								common.sleepy.STATE_UNKNOWN:
 | 
				
			||||||
| 
						 | 
					@ -761,7 +760,7 @@ class Roster_window:
 | 
				
			||||||
		if (status == 'online' and not gajim.config.get('ask_online_status')) or \
 | 
							if (status == 'online' and not gajim.config.get('ask_online_status')) or \
 | 
				
			||||||
			(status == 'offline' and not gajim.config.get('ask_offline_status')):
 | 
								(status == 'offline' and not gajim.config.get('ask_offline_status')):
 | 
				
			||||||
			return status
 | 
								return status
 | 
				
			||||||
		dlg = dialogs.Change_status_message_dialog(self.plugin, status, \
 | 
							dlg = dialogs.Change_status_message_dialog(self.plugin, status, 
 | 
				
			||||||
			autoconnect)
 | 
								autoconnect)
 | 
				
			||||||
		message = dlg.run()
 | 
							message = dlg.run()
 | 
				
			||||||
		return message
 | 
							return message
 | 
				
			||||||
| 
						 | 
					@ -789,7 +788,7 @@ class Roster_window:
 | 
				
			||||||
			self.update_status_comboxbox()
 | 
								self.update_status_comboxbox()
 | 
				
			||||||
			return
 | 
								return
 | 
				
			||||||
		for acct in accounts:
 | 
							for acct in accounts:
 | 
				
			||||||
			if not gajim.config.get_per('accounts', acct, \
 | 
								if not gajim.config.get_per('accounts', acct, 
 | 
				
			||||||
				'sync_with_global_status'):
 | 
									'sync_with_global_status'):
 | 
				
			||||||
				continue
 | 
									continue
 | 
				
			||||||
			self.send_status(acct, status, message)
 | 
								self.send_status(acct, status, message)
 | 
				
			||||||
| 
						 | 
					@ -857,7 +856,7 @@ class Roster_window:
 | 
				
			||||||
		if gajim.config.get('usetabbedchat'):
 | 
							if gajim.config.get('usetabbedchat'):
 | 
				
			||||||
			if not self.plugin.windows[account]['gc'].has_key('tabbed'):
 | 
								if not self.plugin.windows[account]['gc'].has_key('tabbed'):
 | 
				
			||||||
				self.plugin.windows[account]['gc']['tabbed'] = \
 | 
									self.plugin.windows[account]['gc']['tabbed'] = \
 | 
				
			||||||
					groupchat_window.Groupchat_window(jid, nick, self.plugin, \
 | 
										groupchat_window.Groupchat_window(jid, nick, self.plugin, 
 | 
				
			||||||
						account)
 | 
											account)
 | 
				
			||||||
			else:
 | 
								else:
 | 
				
			||||||
				self.plugin.windows[account]['gc']['tabbed'].new_group(jid, nick)
 | 
									self.plugin.windows[account]['gc']['tabbed'].new_group(jid, nick)
 | 
				
			||||||
| 
						 | 
					@ -872,7 +871,7 @@ class Roster_window:
 | 
				
			||||||
	def on_message(self, jid, msg, tim, account):
 | 
						def on_message(self, jid, msg, tim, account):
 | 
				
			||||||
		'''when we receive a message'''
 | 
							'''when we receive a message'''
 | 
				
			||||||
		if not self.contacts[account].has_key(jid):
 | 
							if not self.contacts[account].has_key(jid):
 | 
				
			||||||
			user1 = User(jid, jid, ['not in the roster'], \
 | 
								user1 = User(jid, jid, ['not in the roster'], 
 | 
				
			||||||
				'not in the roster', 'not in the roster', 'none', None, '', 0, '')
 | 
									'not in the roster', 'not in the roster', 'none', None, '', 0, '')
 | 
				
			||||||
			self.contacts[account][jid] = [user1]
 | 
								self.contacts[account][jid] = [user1]
 | 
				
			||||||
			self.add_user_to_roster(jid, account)
 | 
								self.add_user_to_roster(jid, account)
 | 
				
			||||||
| 
						 | 
					@ -912,7 +911,7 @@ class Roster_window:
 | 
				
			||||||
					self.tree.expand_row(path[0:2], False)
 | 
										self.tree.expand_row(path[0:2], False)
 | 
				
			||||||
					self.tree.scroll_to_cell(path)
 | 
										self.tree.scroll_to_cell(path)
 | 
				
			||||||
					self.tree.set_cursor(path)
 | 
										self.tree.set_cursor(path)
 | 
				
			||||||
			self.plugin.windows[account]['chats'][jid].print_conversation(msg, \
 | 
								self.plugin.windows[account]['chats'][jid].print_conversation(msg, 
 | 
				
			||||||
				jid, tim = tim)
 | 
									jid, tim = tim)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	def on_preferences_menuitem_activate(self, widget):
 | 
						def on_preferences_menuitem_activate(self, widget):
 | 
				
			||||||
| 
						 | 
					@ -1126,7 +1125,7 @@ class Roster_window:
 | 
				
			||||||
					user.groups.remove(old_name)
 | 
										user.groups.remove(old_name)
 | 
				
			||||||
					user.groups.append(new_text)
 | 
										user.groups.append(new_text)
 | 
				
			||||||
					self.add_user_to_roster(user.jid, account)
 | 
										self.add_user_to_roster(user.jid, account)
 | 
				
			||||||
					gajim.connections[account].update_user(user.jid, user.name, \
 | 
										gajim.connections[account].update_user(user.jid, user.name, 
 | 
				
			||||||
						user.groups)
 | 
											user.groups)
 | 
				
			||||||
		model.set_value(iter, 5, False)
 | 
							model.set_value(iter, 5, False)
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
| 
						 | 
					@ -1146,8 +1145,8 @@ class Roster_window:
 | 
				
			||||||
			iconset = 'sun'
 | 
								iconset = 'sun'
 | 
				
			||||||
		self.path = '../data/iconsets/' + iconset + '/'
 | 
							self.path = '../data/iconsets/' + iconset + '/'
 | 
				
			||||||
		self.pixbufs = {}
 | 
							self.pixbufs = {}
 | 
				
			||||||
		for state in ('connecting', 'online', 'chat', 'away', 'xa', 'dnd', \
 | 
							for state in ('connecting', 'online', 'chat', 'away', 'xa', 'dnd',
 | 
				
			||||||
			'invisible', 'offline', 'error', 'requested', 'message', \
 | 
								'invisible', 'offline', 'error', 'requested', 'message', 
 | 
				
			||||||
			'opened', 'closed', 'not in the roster'):
 | 
								'opened', 'closed', 'not in the roster'):
 | 
				
			||||||
			# try to open a pixfile with the correct method
 | 
								# try to open a pixfile with the correct method
 | 
				
			||||||
			state_file = state.replace(' ', '_')
 | 
								state_file = state.replace(' ', '_')
 | 
				
			||||||
| 
						 | 
					@ -1163,6 +1162,18 @@ class Roster_window:
 | 
				
			||||||
					image.set_from_file(file)
 | 
										image.set_from_file(file)
 | 
				
			||||||
					break
 | 
										break
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						def init_transports_pixbufs(self, arg, dirname, fnames):
 | 
				
			||||||
 | 
							name_only = os.path.basename(dirname)
 | 
				
			||||||
 | 
							print name_only
 | 
				
			||||||
 | 
							print name_only != 'transports'
 | 
				
			||||||
 | 
							if name_only != 'transports' or not name_only.startswith('.svn'):
 | 
				
			||||||
 | 
								for fname in fnames: # fname is not abs
 | 
				
			||||||
 | 
									print 'fname', fname, 'in dir', dirname
 | 
				
			||||||
 | 
									transport_kind = name_only
 | 
				
			||||||
 | 
									return
 | 
				
			||||||
 | 
									self.transports_pixbufs[transport_kind][fname] = 'be'
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	def reload_pixbufs(self):
 | 
						def reload_pixbufs(self):
 | 
				
			||||||
		self.mkpixbufs()
 | 
							self.mkpixbufs()
 | 
				
			||||||
		# Update the roster
 | 
							# Update the roster
 | 
				
			||||||
| 
						 | 
					@ -1205,11 +1216,11 @@ class Roster_window:
 | 
				
			||||||
	def iconCellDataFunc(self, column, renderer, model, iter, data=None):
 | 
						def iconCellDataFunc(self, column, renderer, model, iter, data=None):
 | 
				
			||||||
		'''When a row is added, set properties for icon renderer'''
 | 
							'''When a row is added, set properties for icon renderer'''
 | 
				
			||||||
		if model.get_value(iter, 2) == 'account':
 | 
							if model.get_value(iter, 2) == 'account':
 | 
				
			||||||
			renderer.set_property('cell-background', \
 | 
								renderer.set_property('cell-background', 
 | 
				
			||||||
				gajim.config.get('accountbgcolor'))
 | 
									gajim.config.get('accountbgcolor'))
 | 
				
			||||||
			renderer.set_property('xalign', 0)
 | 
								renderer.set_property('xalign', 0)
 | 
				
			||||||
		elif model.get_value(iter, 2) == 'group':
 | 
							elif model.get_value(iter, 2) == 'group':
 | 
				
			||||||
			renderer.set_property('cell-background', \
 | 
								renderer.set_property('cell-background', 
 | 
				
			||||||
				gajim.config.get('groupbgcolor'))
 | 
									gajim.config.get('groupbgcolor'))
 | 
				
			||||||
			renderer.set_property('xalign', 0.5)
 | 
								renderer.set_property('xalign', 0.5)
 | 
				
			||||||
		else:
 | 
							else:
 | 
				
			||||||
| 
						 | 
					@ -1220,7 +1231,7 @@ class Roster_window:
 | 
				
			||||||
			elif jid in self.to_be_removed[account]:
 | 
								elif jid in self.to_be_removed[account]:
 | 
				
			||||||
				renderer.set_property('cell-background', '#ab6161')
 | 
									renderer.set_property('cell-background', '#ab6161')
 | 
				
			||||||
			else:
 | 
								else:
 | 
				
			||||||
				renderer.set_property('cell-background', \
 | 
									renderer.set_property('cell-background', 
 | 
				
			||||||
					gajim.config.get('userbgcolor'))
 | 
										gajim.config.get('userbgcolor'))
 | 
				
			||||||
			renderer.set_property('xalign', 1)
 | 
								renderer.set_property('xalign', 1)
 | 
				
			||||||
		renderer.set_property('width', 20)
 | 
							renderer.set_property('width', 20)
 | 
				
			||||||
| 
						 | 
					@ -1228,30 +1239,30 @@ class Roster_window:
 | 
				
			||||||
	def nameCellDataFunc(self, column, renderer, model, iter, data=None):
 | 
						def nameCellDataFunc(self, column, renderer, model, iter, data=None):
 | 
				
			||||||
		'''When a row is added, set properties for name renderer'''
 | 
							'''When a row is added, set properties for name renderer'''
 | 
				
			||||||
		if model.get_value(iter, 2) == 'account':
 | 
							if model.get_value(iter, 2) == 'account':
 | 
				
			||||||
			renderer.set_property('foreground', \
 | 
								renderer.set_property('foreground', 
 | 
				
			||||||
				gajim.config.get('accounttextcolor'))
 | 
									gajim.config.get('accounttextcolor'))
 | 
				
			||||||
			renderer.set_property('cell-background', \
 | 
								renderer.set_property('cell-background', 
 | 
				
			||||||
				gajim.config.get('accountbgcolor'))
 | 
									gajim.config.get('accountbgcolor'))
 | 
				
			||||||
			renderer.set_property('font', gajim.config.get('accountfont'))
 | 
								renderer.set_property('font', gajim.config.get('accountfont'))
 | 
				
			||||||
			renderer.set_property('xpad', 0)
 | 
								renderer.set_property('xpad', 0)
 | 
				
			||||||
		elif model.get_value(iter, 2) == 'group':
 | 
							elif model.get_value(iter, 2) == 'group':
 | 
				
			||||||
			renderer.set_property('foreground', \
 | 
								renderer.set_property('foreground', 
 | 
				
			||||||
				gajim.config.get('grouptextcolor'))
 | 
									gajim.config.get('grouptextcolor'))
 | 
				
			||||||
			renderer.set_property('cell-background', \
 | 
								renderer.set_property('cell-background', 
 | 
				
			||||||
				gajim.config.get('groupbgcolor'))
 | 
									gajim.config.get('groupbgcolor'))
 | 
				
			||||||
			renderer.set_property('font', gajim.config.get('groupfont'))
 | 
								renderer.set_property('font', gajim.config.get('groupfont'))
 | 
				
			||||||
			renderer.set_property('xpad', 4)
 | 
								renderer.set_property('xpad', 4)
 | 
				
			||||||
		else:
 | 
							else:
 | 
				
			||||||
			jid = model.get_value(iter, 3)
 | 
								jid = model.get_value(iter, 3)
 | 
				
			||||||
			account = model.get_value(iter, 4)
 | 
								account = model.get_value(iter, 4)
 | 
				
			||||||
			renderer.set_property('foreground', \
 | 
								renderer.set_property('foreground', 
 | 
				
			||||||
				gajim.config.get('usertextcolor'))
 | 
									gajim.config.get('usertextcolor'))
 | 
				
			||||||
			if jid in self.newly_added[account]:
 | 
								if jid in self.newly_added[account]:
 | 
				
			||||||
				renderer.set_property('cell-background', '#adc3c6')
 | 
									renderer.set_property('cell-background', '#adc3c6')
 | 
				
			||||||
			elif jid in self.to_be_removed[account]:
 | 
								elif jid in self.to_be_removed[account]:
 | 
				
			||||||
				renderer.set_property('cell-background', '#ab6161')
 | 
									renderer.set_property('cell-background', '#ab6161')
 | 
				
			||||||
			else:
 | 
								else:
 | 
				
			||||||
				renderer.set_property('cell-background', \
 | 
									renderer.set_property('cell-background', 
 | 
				
			||||||
					gajim.config.get('userbgcolor'))
 | 
										gajim.config.get('userbgcolor'))
 | 
				
			||||||
			renderer.set_property('font', gajim.config.get('userfont'))
 | 
								renderer.set_property('font', gajim.config.get('userfont'))
 | 
				
			||||||
			renderer.set_property('xpad', 8)
 | 
								renderer.set_property('xpad', 8)
 | 
				
			||||||
| 
						 | 
					@ -1388,8 +1399,10 @@ class Roster_window:
 | 
				
			||||||
		model.set_sort_column_id(1, gtk.SORT_ASCENDING)
 | 
							model.set_sort_column_id(1, gtk.SORT_ASCENDING)
 | 
				
			||||||
		self.tree.set_model(model)
 | 
							self.tree.set_model(model)
 | 
				
			||||||
		self.mkpixbufs()
 | 
							self.mkpixbufs()
 | 
				
			||||||
 | 
							self.transports_pixbufs = { 'aim': {}, 'gadugadu': {}, 'icq': {}, 'msn': {}, 'yahoo': {} }
 | 
				
			||||||
 | 
							os.path.walk('../data/iconsets/transports', self.init_transports_pixbufs, None) # arg is None
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		liststore = gtk.ListStore(gobject.TYPE_STRING, gtk.Image, \
 | 
							liststore = gtk.ListStore(gobject.TYPE_STRING, gtk.Image, 
 | 
				
			||||||
			gobject.TYPE_STRING)
 | 
								gobject.TYPE_STRING)
 | 
				
			||||||
		self.status_combobox = gtk.ComboBox()
 | 
							self.status_combobox = gtk.ComboBox()
 | 
				
			||||||
		self.xml.get_widget('vbox1').pack_end(self.status_combobox, False)
 | 
							self.xml.get_widget('vbox1').pack_end(self.status_combobox, False)
 | 
				
			||||||
| 
						 | 
					@ -1452,7 +1465,7 @@ class Roster_window:
 | 
				
			||||||
		self.tree.connect('drag_data_get', self.drag_data_get_data)
 | 
							self.tree.connect('drag_data_get', self.drag_data_get_data)
 | 
				
			||||||
		self.tree.connect('drag_data_received', self.drag_data_received_data)
 | 
							self.tree.connect('drag_data_received', self.drag_data_received_data)
 | 
				
			||||||
		self.xml.signal_autoconnect(self)
 | 
							self.xml.signal_autoconnect(self)
 | 
				
			||||||
		self.id_signal_cb = self.status_combobox.connect('changed',\
 | 
							self.id_signal_cb = self.status_combobox.connect('changed',
 | 
				
			||||||
														self.on_status_combobox_changed)
 | 
																			self.on_status_combobox_changed)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		self.hidden_lines = gajim.config.get('hiddenlines').split('\t')
 | 
							self.hidden_lines = gajim.config.get('hiddenlines').split('\t')
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue