Ticket #2483: 0001-Do-not-remove-bodies-on-offline-status-2483.2.patch
File 0001-Do-not-remove-bodies-on-offline-status-2483.2.patch, 3.9 KB (added by pbrobinson, 12 years ago) |
---|
-
sugar-0.92.1/src/jarabe/desktop/grid.py
old new 16 16 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 17 17 18 18 import random 19 import logging 19 20 20 21 import gobject 21 22 import gtk … … 85 86 self._collisions.remove(child) 86 87 87 88 def move(self, child, x, y, locked=False): 89 if child not in self._child_rects: 90 import traceback 91 logging.warn('Grid.move, child %r is not counted:\n%s', 92 child, ''.join(traceback.format_stack())) 93 return 94 88 95 self.remove_weight(self._child_rects[child]) 89 96 90 97 rect = self._child_rects[child] -
sugar-0.92.1/src/jarabe/model/buddy.py
old new 195 195 class BuddyModel(BaseBuddyModel): 196 196 __gtype_name__ = 'SugarBuddyModel' 197 197 198 offline = True 199 198 200 def __init__(self, **kwargs): 199 201 200 202 self._account = None -
sugar-0.92.1/src/jarabe/model/neighborhood.py
old new 172 172 ([object, object])), 173 173 'buddy-removed': (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, 174 174 ([object])), 175 'buddy-presence-changed': (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, 176 ([object, object])), 175 177 'buddy-joined-activity': (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, 176 178 ([object, object])), 177 179 'buddy-left-activity': (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, … … 393 395 for handle, presence in presences.iteritems(): 394 396 if handle in self._buddy_handles: 395 397 presence_type, status_, message_ = presence 396 if presence_type == CONNECTION_PRESENCE_TYPE_OFFLINE: 397 contact_id = self._buddy_handles[handle] 398 del self._buddy_handles[handle] 399 self.emit('buddy-removed', contact_id) 398 self.emit('buddy-presence-changed', 399 self._buddy_handles[handle], presence_type) 400 400 401 401 def __buddy_info_updated_cb(self, handle, properties): 402 402 logging.debug('_Account.__buddy_info_updated_cb %r', handle) … … 674 674 account.connect('buddy-added', self.__buddy_added_cb) 675 675 account.connect('buddy-updated', self.__buddy_updated_cb) 676 676 account.connect('buddy-removed', self.__buddy_removed_cb) 677 account.connect('buddy-presence-changed', 678 self.__buddy_presence_changed_cb) 679 677 680 account.connect('buddy-joined-activity', 678 681 self.__buddy_joined_activity_cb) 679 682 account.connect('buddy-left-activity', self.__buddy_left_activity_cb) … … 898 901 if buddy.props.key is not None: 899 902 self.emit('buddy-removed', buddy) 900 903 904 def __buddy_presence_changed_cb(self, account, contact_id, presence_type): 905 if contact_id not in self._buddies: 906 logging.debug('Neighborhood.__buddy_presence_changed_cb Unknown ' \ 907 'buddy with contact_id %r', contact_id) 908 return 909 910 buddy = self._buddies[contact_id] 911 offline = (presence_type == CONNECTION_PRESENCE_TYPE_OFFLINE); 912 913 if buddy.offline != offline: 914 buddy.offline = offline 915 if buddy.props.key is not None: 916 if offline: 917 self.emit('buddy-removed', buddy) 918 else: 919 self.emit('buddy-added', buddy) 920 901 921 def __activity_added_cb(self, account, room_handle, activity_id): 902 922 logging.debug('__activity_added_cb %r %r', room_handle, activity_id) 903 923 if activity_id in self._activities: