Changeset 9308
- Timestamp:
- 02/06/08 06:24:07 (7 months ago)
- Location:
- branches/session_centric/src
- Files:
-
- 6 modified
-
chat_control.py (modified) (2 diffs)
-
common/connection_handlers.py (modified) (1 diff)
-
message_control.py (modified) (1 diff)
-
notify.py (modified) (2 diffs)
-
roster_window.py (modified) (3 diffs)
-
session.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/session_centric/src/chat_control.py
r9299 r9308 679 679 event = 'message_received' 680 680 show_in_roster = notify.get_show_in_roster(event, 681 self.account, self.contact )681 self.account, self.contact, self.session) 682 682 show_in_systray = notify.get_show_in_systray(event, 683 683 self.account, self.contact) … … 1842 1842 # destroy banner tooltip - bug #pygtk for that! 1843 1843 self.status_tooltip.destroy() 1844 1844 1845 # Send 'gone' chatstate 1845 1846 self.send_chatstate('gone', self.contact) 1846 1847 self.contact.chatstate = None 1847 1848 self.contact.our_chatstate = None 1849 1850 self.session.control = None 1851 1848 1852 # Disconnect timer callbacks 1849 1853 gobject.source_remove(self.possible_paused_timeout_id) -
branches/session_centric/src/common/connection_handlers.py
r9307 r9308 1753 1753 try: 1754 1754 del self.sessions[jid][thread_id] 1755 1755 1756 1756 if not self.sessions[jid]: 1757 1757 del self.sessions[jid] -
branches/session_centric/src/message_control.py
r9299 r9308 146 146 147 147 if not self.session: 148 print('uhoh new session') 148 149 fjid = self.contact.get_full_jid() 149 150 new_session = gajim.connections[self.account].make_new_session(fjid) -
branches/session_centric/src/notify.py
r9299 r9308 54 54 USER_HAS_GROWL = False 55 55 56 57 def get_show_in_roster(event, account, contact): 56 def get_show_in_roster(event, account, contact, session = None): 58 57 '''Return True if this event must be shown in roster, else False''' 59 58 if event == 'gc_message_received': … … 66 65 return False 67 66 if event == 'message_received': 68 chat_control = helpers.get_chat_control(account, contact) 69 if chat_control: 67 if session: 68 if session.control: 69 return False 70 elif helpers.get_chat_control(account, contact): 70 71 return False 71 72 return True -
branches/session_centric/src/roster_window.py
r9307 r9308 1300 1300 for result in results: 1301 1301 tim = time.localtime(float(result[2])) 1302 self.on_message(jid, result[1], tim, account, msg_type = 'chat', 1303 msg_id = result[0], session = session) 1302 session.roster_message(jid, result[1], tim, msg_type='chat', msg_id=result[0]) 1304 1303 1305 1304 def fill_contacts_and_groups_dicts(self, array, account): … … 3961 3960 resource = resource) 3962 3961 3962 session = gajim.connections[account].get_session(fjid, None, 'chat') 3963 3963 3964 if not gajim.interface.msg_win_mgr.has_window(fjid, account): 3964 session = account.make_new_session(account, fjid) 3965 self.control = self.new_chat(session, contact, account, resource = resource) 3965 session.control = self.new_chat(session, contact, account, resource = resource) 3966 3966 3967 3967 if len(gajim.events.get_events(account, fjid)): 3968 chat_control.read_queue()3968 session.control.read_queue() 3969 3969 3970 3970 mw = gajim.interface.msg_win_mgr.get_window(fjid, account) … … 4293 4293 if resource: 4294 4294 fjid += '/' + resource 4295 4296 conn = gajim.connections[account] 4297 4298 if not session: 4299 session = conn.get_session(fjid, None, 'chat') 4300 4295 4301 win = gajim.interface.msg_win_mgr.get_window(fjid, account) 4296 4302 if not win: 4297 self.new_chat(session, contact, account, resource = resource) 4303 session.control = self.new_chat(session, contact, account, resource=resource) 4304 4305 if len(gajim.events.get_events(account, fjid)): 4306 session.control.read_queue() 4307 4298 4308 win = gajim.interface.msg_win_mgr.get_window(fjid, account) 4299 ctrl = win.get_control(fjid, account)4300 4309 # last message is long time ago 4301 gajim.last_message_time[account][ctrl.get_full_jid()] = 0 4310 gajim.last_message_time[account][session.control.get_full_jid()] = 0 4311 4302 4312 win.set_active_tab(fjid, account) 4303 if gajim.connections[account].is_zeroconf and \ 4304 gajim.connections[account].status in ('offline', 'invisible'): 4313 if conn.is_zeroconf and conn.status in ('offline', 'invisible'): 4305 4314 win.get_control(fjid, account).got_disconnected() 4306 4315 -
branches/session_centric/src/session.py
r9307 r9308 52 52 if contact.our_chatstate == 'ask': # we were jep85 disco? 53 53 contact.our_chatstate = 'active' # no more 54 self.control.handle_incoming_chatstate()54 #self.control.handle_incoming_chatstate() XXX 55 55 elif contact.chatstate != 'active': 56 56 # got no valid jep85 answer, peer does not support it … … 110 110 111 111 if gajim.interface.remote_ctrl: 112 gajim.interface.remote_ctrl.raise_signal('NewMessage', (self.conn.name, [full_jid_with_resource, message, tim, encrypted, msg_type, subject, chatstate, msg_id, composing_xep, user_nick, xhtml, form_node])) 112 gajim.interface.remote_ctrl.raise_signal('NewMessage', 113 (self.conn.name, [full_jid_with_resource, message, tim, 114 encrypted, msg_type, subject, chatstate, msg_id, 115 composing_xep, user_nick, xhtml, form_node])) 113 116 114 117 def roster_message(self, jid, msg, tim, encrypted=False, msg_type='', … … 189 192 event_type = 'single_message_received' 190 193 191 show_in_roster = notify.get_show_in_roster(event_type, self.conn.name, contact )194 show_in_roster = notify.get_show_in_roster(event_type, self.conn.name, contact, self) 192 195 show_in_systray = notify.get_show_in_systray(event_type, self.conn.name, contact) 193 196 … … 200 203 if popup: 201 204 if not self.control: 202 self.control = self.new_chat(self, contact, self.conn.name, resource=resource_for_chat)205 self.control = gajim.interface.roster.new_chat(self, contact, self.conn.name, resource=resource_for_chat) 203 206 204 207 if len(gajim.events.get_events(self.conn.name, fjid)):
