Changeset 9569
- Timestamp:
- 05/04/08 02:24:27 (7 months ago)
- Location:
- branches/session_centric/src
- Files:
-
- 5 modified
-
chat_control.py (modified) (6 diffs)
-
gajim.py (modified) (1 diff)
-
groupchat_control.py (modified) (5 diffs)
-
message_control.py (modified) (3 diffs)
-
message_window.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/session_centric/src/chat_control.py
r9560 r9569 1587 1587 unread = '[' + unicode(num_unread) + ']' 1588 1588 1589 # Draw tab label using chatstate 1589 # Draw tab label using chatstate 1590 1590 theme = gajim.config.get('roster_theme') 1591 1591 color = None … … 1847 1847 self.contact.our_chatstate = None 1848 1848 1849 # terminate session 1849 1850 self.session.control = None 1850 1851 … … 2078 2079 # Is it a pm ? 2079 2080 room_jid, nick = gajim.get_room_and_nick_from_fjid(jid) 2080 # XXX fixme somehow 2081 # control = gajim.interface.msg_win_mgr.get_control(room_jid, self.account) 2082 # if control and control.type_id == message_control.TYPE_GC: 2083 # control.update_ui() 2084 # control.parent_win.show_title() 2085 # typ = 'pm' 2081 control = gajim.interface.msg_win_mgr.get_gc_control(room_jid, self.account) 2082 if control and control.type_id == message_control.TYPE_GC: 2083 control.update_ui() 2084 control.parent_win.show_title() 2085 typ = 'pm' 2086 2086 2087 2087 self.redraw_after_event_removed(jid) … … 2094 2094 gajim.interface.roster.really_remove_contact(self.contact, 2095 2095 self.account) 2096 #elif typ == 'pm':2097 #control.remove_contact(nick)2096 elif typ == 'pm': 2097 control.remove_contact(nick) 2098 2098 2099 2099 def show_bigger_avatar(self, small_avatar): … … 2141 2141 if gtk.gtk_version >= (2, 10, 0) and gtk.pygtk_version >= (2, 10, 0): 2142 2142 window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_TOOLTIP) 2143 2143 2144 2144 window.realize() 2145 2145 window.window.set_back_pixmap(pixmap, False) # make it transparent 2146 2146 window.window.shape_combine_mask(mask, 0, 0) 2147 2147 2148 # make the bigger avatar window show up centered 2148 # make the bigger avatar window show up centered 2149 2149 x0, y0 = small_avatar.window.get_origin() 2150 2150 x0 += small_avatar.allocation.x … … 2152 2152 center_x= x0 + (small_avatar.allocation.width / 2) 2153 2153 center_y = y0 + (small_avatar.allocation.height / 2) 2154 pos_x, pos_y = center_x - (avatar_w / 2), center_y - (avatar_h / 2) 2154 pos_x, pos_y = center_x - (avatar_w / 2), center_y - (avatar_h / 2) 2155 2155 window.move(pos_x, pos_y) 2156 2156 # make the cursor invisible so we can see the image -
branches/session_centric/src/gajim.py
r9560 r9569 1925 1925 new_sess = gajim.connections[account].make_new_session(str(jid)) 1926 1926 ctrl.set_session(new_sess) 1927 gajim.connections[account].delete_session(str(jid), session.thread_id) 1927 1928 1928 1929 if was_encrypted: -
branches/session_centric/src/groupchat_control.py
r9560 r9569 605 605 606 606 # We print if window is opened 607 pm_control = gajim.interface.msg_win_mgr.get_control(fjid, self.account, session)607 pm_control = session.control 608 608 609 609 if pm_control: … … 633 633 self.parent_win.redraw_tab(self) 634 634 else: 635 self._start_private_message(nick , session)635 self._start_private_message(nick) 636 636 # Scroll to line 637 637 self.list_treeview.expand_row(path[0:1], False) … … 892 892 fjid = gajim.construct_fjid(self.room_jid, nick) # 'fake' jid 893 893 894 self._start_private_message(nick)894 ctrl = self._start_private_message(nick) 895 895 if msg: 896 gajim.interface.msg_win_mgr.get_control(fjid, self.account).\ 897 send_message(msg) 896 ctrl.send_message(msg) 898 897 899 898 def on_send_file(self, widget, gc_contact): … … 2042 2041 win.window.present() 2043 2042 2043 return ctrl 2044 2044 2045 def on_row_activated(self, widget, path): 2045 2046 '''When an iter is activated (dubblick or single click if gnome is set … … 2100 2101 2101 2102 if gajim.single_click and not event.state & gtk.gdk.SHIFT_MASK: 2102 self.on_row_activated(widget, path) 2103 self.on_row_activated(widget, path) 2103 2104 return True 2104 2105 else: -
branches/session_centric/src/message_control.py
r9308 r9569 118 118 119 119 def set_session(self, session): 120 if hasattr(self, 'session') and session == self.session: 120 oldsession = None 121 if hasattr(self, 'session'): 122 oldsession = self.session 123 124 if oldsession and session == oldsession: 121 125 return 122 123 was_encrypted = False124 125 if hasattr(self, 'session') and self.session:126 if self.session.enable_encryption:127 was_encrypted = True128 129 gajim.connections[self.account].delete_session(self.session.jid,130 self.session.thread_id)131 126 132 127 self.session = session … … 135 130 session.control = self 136 131 137 if was_encrypted: 138 self.print_esession_details() 132 if oldsession: 133 self.parent_win.change_thread_key(self.contact.jid, 134 self.account, oldsession.thread_id, session.thread_id) 135 136 if oldsession.enable_encryption: 137 self.print_esession_details() 139 138 140 139 def send_message(self, message, keyID = '', type = 'chat', … … 145 144 jid = self.contact.jid 146 145 147 if not self.session:148 print('uhoh new session')149 fjid = self.contact.get_full_jid()150 new_session = gajim.connections[self.account].make_new_session(fjid)151 152 self.set_session(new_session)153 154 146 # Send and update history 155 147 return gajim.connections[self.account].send_message(jid, message, keyID, -
branches/session_centric/src/message_window.py
r9556 r9569 430 430 fjid = ctrl.get_full_jid() 431 431 thread_id = ctrl.session.thread_id 432 432 433 del self._controls[ctrl.account][fjid][thread_id] 433 434 … … 568 569 569 570 def change_key(self, old_jid, new_jid, acct): 570 '''Change the key of a control'''571 '''Change the JID key of a control''' 571 572 try: 572 # Check if control exists573 ctrl = self._controls[acct][old_jid]574 except :573 # Check if controls exists 574 ctrls = self._controls[acct][old_jid] 575 except KeyError: 575 576 return 576 self._controls[acct][new_jid] = self._controls[acct][old_jid]577 self._controls[acct][new_jid] = ctrls 577 578 del self._controls[acct][old_jid] 578 579 if old_jid in gajim.last_message_time[acct]: … … 580 581 gajim.last_message_time[acct][old_jid] 581 582 del gajim.last_message_time[acct][old_jid] 583 584 def change_thread_key(self, jid, acct, old_thread_id, new_thread_id): 585 '''Change the thread_id key of a control''' 586 try: 587 # Check if control exists 588 ctrl = self._controls[acct][jid][old_thread_id] 589 except KeyError: 590 return 591 592 self._controls[acct][jid][new_thread_id] = ctrl 593 del self._controls[acct][jid][old_thread_id] 582 594 583 595 def controls(self):
