From f27317e0fcda438fe082a71acb6e4922e3cdec97 Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Tue, 20 Nov 2007 23:22:49 +0100 Subject: [PATCH] Patch from smcv: sugar.presence.presenceservice: use #4660 fix in Presence Service to streamline share process slightly (saves one D-Bus round trip) --- NEWS | 2 +- lib/sugar/presence/presenceservice.py | 16 ++++------------ 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/NEWS b/NEWS index ac29e0da..f53d9884 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,4 @@ -0.70.2 +* #4660: Use improved PS API which streamlines ShareActivity process (smcv) 0.70.1 diff --git a/lib/sugar/presence/presenceservice.py b/lib/sugar/presence/presenceservice.py index 2107f4ac..97640da6 100644 --- a/lib/sugar/presence/presenceservice.py +++ b/lib/sugar/presence/presenceservice.py @@ -424,9 +424,10 @@ class PresenceService(gobject.GObject): raise RuntimeError("Could not get owner object from presence service.") return self._new_object(owner_op) - def _share_activity_cb(self, activity, psact): + def _share_activity_cb(self, activity, op): """Finish sharing the activity """ + psact = self._new_object(op) psact._joined = True _logger.debug('%r: Just shared, setting up tubes', activity) psact.set_up_tubes(reply_handler=lambda: @@ -434,16 +435,6 @@ class PresenceService(gobject.GObject): error_handler=lambda e: self._share_activity_error_cb(activity, e)) - def _share_activity_privacy_cb(self, activity, private, op): - psact = self._new_object(op) - _logger.debug('%r: Just shared, setting privacy to %r', activity, - private) - psact.set_private(private, - reply_handler=lambda: - self._share_activity_cb(activity, psact), - error_handler=lambda e: - self._share_activity_error_cb(activity, e)) - def _share_activity_error_cb(self, activity, err): """Notify with GObject event of unsuccessful sharing of activity""" _logger.debug("Error sharing activity %s: %s" % (activity.get_id(), err)) @@ -474,9 +465,10 @@ class PresenceService(gobject.GObject): atype = activity.get_bundle_id() name = activity.props.title + properties['private'] = bool(private) self._ps.ShareActivity(actid, atype, name, properties, reply_handler=lambda op: \ - self._share_activity_privacy_cb(activity, private, op), + self._share_activity_cb(activity, op), error_handler=lambda e: \ self._share_activity_error_cb(activity, e))