Merge branch 'master' of git+ssh://dev.laptop.org/git/sugar
This commit is contained in:
commit
32fb016a6c
@ -378,6 +378,8 @@ class ServerPlugin(gobject.GObject):
|
||||
except dbus.DBusException, e:
|
||||
if str(e).startswith("org.freedesktop.DBus.Error.NoReply"):
|
||||
raise InvalidBuddyError("couldn't get properties")
|
||||
props = {}
|
||||
logging.debug("Error getting buddy properties: %s" % e)
|
||||
|
||||
if not props.has_key('color'):
|
||||
raise InvalidBuddyError("no color")
|
||||
@ -402,7 +404,9 @@ class ServerPlugin(gobject.GObject):
|
||||
online = handle in self._online_contacts
|
||||
for status, params in statuses.items():
|
||||
jid = self._conn[CONN_INTERFACE].InspectHandles(CONNECTION_HANDLE_TYPE_CONTACT, [handle])[0]
|
||||
print "Handle %s (%s) was online=%s. new statuse %s" % (handle, jid, online, status)
|
||||
olstr = "ONLINE"
|
||||
if not online: olstr = "OFFLINE"
|
||||
print "Handle %s (%s) was %s, status now '%s'." % (handle, jid, olstr, status)
|
||||
if not online and status in ["available", "away", "brb", "busy", "dnd", "xa"]:
|
||||
try:
|
||||
self._contact_online(handle)
|
||||
@ -412,6 +416,11 @@ class ServerPlugin(gobject.GObject):
|
||||
self._contact_offline(handle)
|
||||
|
||||
def _avatar_updated_cb(self, handle, new_avatar_token):
|
||||
if handle == self._conn[CONN_INTERFACE].GetSelfHandle():
|
||||
# ignore network events for Owner property changes since those
|
||||
# are handled locally
|
||||
return
|
||||
|
||||
jid = self._online_contacts[handle]
|
||||
icon = self._icon_cache.get_icon(jid, new_avatar_token)
|
||||
if not icon:
|
||||
@ -428,14 +437,23 @@ class ServerPlugin(gobject.GObject):
|
||||
#print "Buddy %s alias changed to %s" % (handle, alias)
|
||||
self._buddy_properties_changed_cb(handle, prop)
|
||||
|
||||
def _buddy_properties_changed_cb(self, contact, properties):
|
||||
self.emit("buddy-properties-changed", contact, properties)
|
||||
def _buddy_properties_changed_cb(self, handle, properties):
|
||||
if handle == self._conn[CONN_INTERFACE].GetSelfHandle():
|
||||
# ignore network events for Owner property changes since those
|
||||
# are handled locally
|
||||
return
|
||||
self.emit("buddy-properties-changed", handle, properties)
|
||||
|
||||
def _buddy_activities_changed_cb(self, handle, activities):
|
||||
if handle == self._conn[CONN_INTERFACE].GetSelfHandle():
|
||||
# ignore network events for Owner activity changes since those
|
||||
# are handled locally
|
||||
return
|
||||
|
||||
def _buddy_activities_changed_cb(self, contact, activities):
|
||||
for act_id, act_handle in activities:
|
||||
self._activities[act_id] = act_handle
|
||||
activities_id = map(lambda x: x[0], activities)
|
||||
self.emit("buddy-activities-changed", contact, activities_id)
|
||||
self.emit("buddy-activities-changed", handle, activities_id)
|
||||
|
||||
def _new_channel_cb(self, object_path, channel_type, handle_type, handle, suppress_handler):
|
||||
if handle_type == CONNECTION_HANDLE_TYPE_ROOM and channel_type == CHANNEL_TYPE_TEXT:
|
||||
|
@ -31,10 +31,11 @@ class ActivityMenu(Menu):
|
||||
def __init__(self, activity_model):
|
||||
Menu.__init__(self, activity_model.get_title())
|
||||
|
||||
if not activity_model.get_shared():
|
||||
self.add_item(MenuItem(ActivityMenu.ACTION_SHARE,
|
||||
_('Share'),
|
||||
'theme:stock-share-mesh'))
|
||||
# FIXME: re-enable after trial1
|
||||
# if not activity_model.get_shared():
|
||||
# self.add_item(MenuItem(ActivityMenu.ACTION_SHARE,
|
||||
# _('Share'),
|
||||
# 'theme:stock-share-mesh'))
|
||||
|
||||
self.add_item(MenuItem(ActivityMenu.ACTION_CLOSE,
|
||||
_('Close'),
|
||||
|
Loading…
Reference in New Issue
Block a user