[Sugar-devel] dialog during installation?

2011-04-14 Thread Erik Blankinship
Is there any way to present a modal dialog during the installation of a
sugar activity?  (For example: you will want to be on an xo to run this
software with an option to cancel installation)

Thanks
Erik
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] Deployments round table in eduJam

2011-04-14 Thread Gonzalo Odiard
Hello!
We are trying to organize a deployments round table in eduJam, on Saturday
the 7th.
If you can represent your deployment, please send me a mail to coordinate
times and preparation.
Send me your name, deployment and what are the topics you consider important
to talk.
Regards,

eduJam Program committee

--

Hola!
Estamos tratando de organizar una mesa redonda de despliegues en el eduJam,
el sábado 7.
Si puedes representar a tu despliegue, por favor envíame un mail para
coordinar tiempos y preparación.
Envíame tu nompre, despliegue y los temas que consideras importantes para
tratar.
Saludos

Comité de Programa eduJam
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] Deployments round table in eduJam

2011-04-14 Thread Gonzalo Odiard
Perfect, can you represent these deployments?

Gonzalo

On Thu, Apr 14, 2011 at 2:26 PM, Tony Anderson t...@olenepal.org wrote:

 Hi,

 I have experience with the Nepal and Rwanda deployments.

 Tony


 On 04/14/2011 03:39 PM, Gonzalo Odiard wrote:

 Hello!
 We are trying to organize a deployments round table in eduJam, on
 Saturday the 7th.
 If you can represent your deployment, please send me a mail to
 coordinate times and preparation.
 Send me your name, deployment and what are the topics you consider
 important to talk.
 Regards,

 eduJam Program committee


 --

 Hola!
 Estamos tratando de organizar una mesa redonda de despliegues en el
 eduJam, el sábado 7.
 Si puedes representar a tu despliegue, por favor envíame un mail para
 coordinar tiempos y preparación.
 Envíame tu nompre, despliegue y los temas que consideras importantes
 para tratar.
 Saludos

 Comité de Programa eduJam



___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] [PATCH sugar] Anly approve and not handle channels in the shell, part of OLPC #10738

2011-04-14 Thread Simon Schampijer
We only approve channels in the shell and do not claim to handle them
anymore. The handling is now done by the activity (toolkit patch).
More info about approving and handling of channels can be found at [1].

This patch does as well only handle sugar activity invitations, invitations
from non-sugar clients will be handled in a separate patch.

[1] 
http://telepathy.freedesktop.org/doc/book/sect.channel-dispatcher.clients.html

Signed-off-by: Simon Schampijer si...@laptop.org
---
 src/jarabe/model/telepathyclient.py |   21 -
 1 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/src/jarabe/model/telepathyclient.py 
b/src/jarabe/model/telepathyclient.py
index c6fbac1..cea8693 100644
--- a/src/jarabe/model/telepathyclient.py
+++ b/src/jarabe/model/telepathyclient.py
@@ -19,11 +19,16 @@ import logging
 import dbus
 from dbus import PROPERTIES_IFACE
 from telepathy.interfaces import CLIENT, \
+ CHANNEL, \
+ CHANNEL_TYPE_TEXT, \
  CLIENT_APPROVER, \
  CLIENT_HANDLER, \
  CLIENT_INTERFACE_REQUESTS
 from telepathy.server import DBusProperties
 
+from telepathy.constants import CONNECTION_HANDLE_TYPE_CONTACT
+from telepathy.constants import CONNECTION_HANDLE_TYPE_ROOM
+
 from sugar import dispatch
 
 
@@ -48,9 +53,6 @@ class TelepathyClient(dbus.service.Object, DBusProperties):
 self._implement_property_get(CLIENT, {
 'Interfaces': lambda: list(self._interfaces),
   })
-self._implement_property_get(CLIENT_HANDLER, {
-'HandlerChannelFilter': self.__get_filters_cb,
-  })
 self._implement_property_get(CLIENT_APPROVER, {
 'ApproverChannelFilter': self.__get_filters_cb,
   })
@@ -60,8 +62,17 @@ class TelepathyClient(dbus.service.Object, DBusProperties):
 
 def __get_filters_cb(self):
 logging.debug('__get_filters_cb')
-filter_dict = dbus.Dictionary({}, signature='sv')
-return dbus.Array([filter_dict], signature='a{sv}')
+
+filt = {
+CHANNEL + '.ChannelType': CHANNEL_TYPE_TEXT,
+CHANNEL + '.TargetHandleType': CONNECTION_HANDLE_TYPE_ROOM,
+}
+filter_dict = dbus.Dictionary(filt, signature='sv')
+filters = dbus.Array([filter_dict], signature='a{sv}')
+
+logging.debug('__get_filters_cb %r', filters)
+
+return filters
 
 @dbus.service.method(dbus_interface=CLIENT_HANDLER,
  in_signature='ooa(oa{sv})aota{sv}', out_signature='')
-- 
1.7.4

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] [PATCH sugar] Fix invitations from a non sugar client (empathy), part of OLPC #10814

2011-04-14 Thread Simon Schampijer
This does bring back the 'invitation from a non-sugar client'
functionality based on the 0.84 code. I did remove the part
where we claim to handle as well video invitations for now,
as we can not handle them.

Signed-off-by: Simon Schampijer si...@laptop.org
---
 src/jarabe/model/invites.py |  133 ---
 src/jarabe/model/telepathyclient.py |   11 +++-
 2 files changed, 100 insertions(+), 44 deletions(-)

diff --git a/src/jarabe/model/invites.py b/src/jarabe/model/invites.py
index d2a2e0c..66aabcc 100644
--- a/src/jarabe/model/invites.py
+++ b/src/jarabe/model/invites.py
@@ -17,16 +17,15 @@
 
 import logging
 from functools import partial
+import simplejson
 
 import gobject
 import dbus
+import gconf
 from telepathy.interfaces import CHANNEL, \
  CHANNEL_DISPATCHER, \
  CHANNEL_DISPATCH_OPERATION, \
  CHANNEL_TYPE_CONTACT_LIST, \
- CHANNEL_TYPE_DBUS_TUBE, \
- CHANNEL_TYPE_STREAMED_MEDIA, \
- CHANNEL_TYPE_STREAM_TUBE, \
  CHANNEL_TYPE_TEXT, \
  CLIENT
 from telepathy.constants import HANDLE_TYPE_ROOM
@@ -45,25 +44,51 @@ CONNECTION_INTERFACE_ACTIVITY_PROPERTIES = \
 _instance = None
 
 
-class ActivityInvite(object):
-Invitation to a shared activity.
-def __init__(self, dispatch_operation_path, handle, handler,
- activity_properties):
+class BaseInvite(object):
+Invitation to shared activity or private 1-1 Telepathy channel
+def __init__(self, dispatch_operation_path, handle, handler):
 self.dispatch_operation_path = dispatch_operation_path
 self._handle = handle
 self._handler = handler
 
-if activity_properties is not None:
-self._activity_properties = activity_properties
-else:
-self._activity_properties = {}
-
 def get_bundle_id(self):
 if CLIENT in self._handler:
 return self._handler[len(CLIENT + '.'):]
 else:
 return None
 
+def _name_owner_changed_cb(self, name, old_owner, new_owner):
+logging.debug('BasicInvite._name_owner_changed_cb %r %r %r', name,
+  new_owner, old_owner)
+if name == self._handler and new_owner and not old_owner:
+self._call_handle_with()
+
+def _call_handle_with(self):
+bus = dbus.Bus()
+obj = bus.get_object(CHANNEL_DISPATCHER, self.dispatch_operation_path)
+dispatch_operation = dbus.Interface(obj, CHANNEL_DISPATCH_OPERATION)
+dispatch_operation.HandleWith(self._handler,
+reply_handler=self._handle_with_reply_cb,
+error_handler=self._handle_with_reply_cb)
+
+def _handle_with_reply_cb(self, error=None):
+if error is not None:
+raise error
+else:
+logging.debug('_handle_with_reply_cb')
+
+
+class ActivityInvite(BaseInvite):
+Invitation to a shared activity.
+def __init__(self, dispatch_operation_path, handle, handler,
+ activity_properties):
+BaseInvite.__init__(self, dispatch_operation_path, handle, handler)
+
+if activity_properties is not None:
+self._activity_properties = activity_properties
+else:
+self._activity_properties = {}
+
 def get_color(self):
 color = self._activity_properties.get('color', None)
 return XoColor(color)
@@ -78,7 +103,7 @@ class ActivityInvite(object):
 self._call_handle_with()
 else:
 bus = dbus.SessionBus()
-bus.add_signal_receiver(self.__name_owner_changed_cb,
+bus.add_signal_receiver(self._name_owner_changed_cb,
 'NameOwnerChanged',
 'org.freedesktop.DBus',
 arg0=self._handler)
@@ -88,25 +113,34 @@ class ActivityInvite(object):
 misc.launch(bundle, color=self.get_color(), invited=True,
 activity_id=activity_id)
 
-def __name_owner_changed_cb(self, name, old_owner, new_owner):
-logging.debug('ActivityInvite.__name_owner_changed_cb %r %r %r', name,
-  new_owner, old_owner)
-if name == self._handler and new_owner and not old_owner:
-self._call_handle_with()
 
-def _call_handle_with(self):
-bus = dbus.Bus()
-obj = bus.get_object(CHANNEL_DISPATCHER, self.dispatch_operation_path)
-dispatch_operation = dbus.Interface(obj, CHANNEL_DISPATCH_OPERATION)
-dispatch_operation.HandleWith(self._handler,
-reply_handler=self.__handle_with_reply_cb,
-error_handler=self.__handle_with_reply_cb)
+class PrivateInvite(BaseInvite):
+def __init__(self, dispatch_operation_path, handle, handler,

Re: [Sugar-devel] Deployments round table in eduJam

2011-04-14 Thread Martin Abente
After 2 years in Paraguay, developing Paraguay Educa back-end systems
and dextrose guess I should join it too ;)

On Thu, Apr 14, 2011 at 1:28 PM, Gonzalo Odiard gonz...@laptop.org wrote:
 Perfect, can you represent these deployments?

 Gonzalo

 On Thu, Apr 14, 2011 at 2:26 PM, Tony Anderson t...@olenepal.org wrote:

 Hi,

 I have experience with the Nepal and Rwanda deployments.

 Tony

 On 04/14/2011 03:39 PM, Gonzalo Odiard wrote:

 Hello!
 We are trying to organize a deployments round table in eduJam, on
 Saturday the 7th.
 If you can represent your deployment, please send me a mail to
 coordinate times and preparation.
 Send me your name, deployment and what are the topics you consider
 important to talk.
 Regards,

 eduJam Program committee


 --

 Hola!
 Estamos tratando de organizar una mesa redonda de despliegues en el
 eduJam, el sábado 7.
 Si puedes representar a tu despliegue, por favor envíame un mail para
 coordinar tiempos y preparación.
 Envíame tu nompre, despliegue y los temas que consideras importantes
 para tratar.
 Saludos

 Comité de Programa eduJam




 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel


___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] [PATCH sugar-toolkit] Handle DBUS tubes in the activity telepathy client, part of OLPC #10738

2011-04-14 Thread Simon Schampijer
This adds the handling of DBUS tube channels to the
'HandlerChannelFilter' in activity's telepathy client.

Signed-off-by: Simon Schampijer si...@laptop.org
---
 src/sugar/activity/activity.py |   30 +++---
 1 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/src/sugar/activity/activity.py b/src/sugar/activity/activity.py
index 35082cc..9df488a 100644
--- a/src/sugar/activity/activity.py
+++ b/src/sugar/activity/activity.py
@@ -65,9 +65,11 @@ import cjson
 from telepathy.server import DBusProperties
 from telepathy.interfaces import CHANNEL, \
  CHANNEL_TYPE_TEXT, \
+ CHANNEL_TYPE_DBUS_TUBE, \
  CLIENT, \
  CLIENT_HANDLER
 from telepathy.constants import CONNECTION_HANDLE_TYPE_CONTACT
+from telepathy.constants import CONNECTION_HANDLE_TYPE_ROOM
 
 from sugar import util
 from sugar.presence import presenceservice
@@ -368,6 +370,7 @@ class Activity(Window, gtk.Container):
 # There's already an instance on the mesh, join it
 logging.debug('*** Act %s joining existing mesh instance %r',
   self._activity_id, mesh_instance)
+self._client_handler = _ClientHandler(self.get_bundle_id(), None)
 self.shared_activity = mesh_instance
 self.shared_activity.connect('notify::private',
  self.__privacy_changed_cb)
@@ -927,15 +930,23 @@ class _ClientHandler(dbus.service.Object, DBusProperties):
   })
 
 def __get_filters_cb(self):
-logging.debug('__get_filters_cb')
-filters = {
+logging.debug('__get_filters_cb Activity')
+filter_text = {
 CHANNEL + '.ChannelType': CHANNEL_TYPE_TEXT,
 CHANNEL + '.TargetHandleType': CONNECTION_HANDLE_TYPE_CONTACT,
 }
-filter_dict = dbus.Dictionary(filters, signature='sv')
-logging.debug('__get_filters_cb %r', dbus.Array([filter_dict],
-signature='a{sv}'))
-return dbus.Array([filter_dict], signature='a{sv}')
+filter_dict = dbus.Dictionary(filter_text, signature='sv')
+filters = dbus.Array([filter_dict], signature='a{sv}')
+
+filter_tube = {
+CHANNEL + '.ChannelType': CHANNEL_TYPE_DBUS_TUBE,
+CHANNEL + '.TargetHandleType': CONNECTION_HANDLE_TYPE_ROOM,
+}
+filter_dict = dbus.Dictionary(filter_tube, signature='sv')
+filters.append(filter_dict)
+
+logging.debug('__get_filters_cb Activity filters=%r', filters)
+return filters
 
 @dbus.service.method(dbus_interface=CLIENT_HANDLER,
  in_signature='ooa(oa{sv})aota{sv}', out_signature='')
@@ -946,7 +957,12 @@ class _ClientHandler(dbus.service.Object, DBusProperties):
 user_action_time, handler_info)
 try:
 for channel in channels:
-self._got_channel_cb(connection, channel[0])
+channel_properties = channel[1]
+channel_type = channel_properties[CHANNEL + '.ChannelType']
+handle_type = channel_properties[CHANNEL + '.TargetHandleType']
+if channel_type == CHANNEL_TYPE_TEXT and \
+handle_type == CONNECTION_HANDLE_TYPE_ROOM:
+self._got_channel_cb(connection, channel[0])
 except Exception, e:
 logging.exception(e)
 
-- 
1.7.4

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] [PATCH sugar-toolkit] Fix invitations from a non sugar client (empathy), part of OLPC #10814

2011-04-14 Thread Simon Schampijer
This differentiates between sugar and non sugar invitations using the
handle type. For non-sugar invitations we use the activity id to
determine which activity to join.

Signed-off-by: Simon Schampijer si...@laptop.org
---
 src/sugar/activity/activity.py |   37 +
 1 files changed, 25 insertions(+), 12 deletions(-)

diff --git a/src/sugar/activity/activity.py b/src/sugar/activity/activity.py
index 9df488a..4be3153 100644
--- a/src/sugar/activity/activity.py
+++ b/src/sugar/activity/activity.py
@@ -280,6 +280,7 @@ class Activity(Window, gtk.Container):
 self._active = False
 self._activity_id = handle.activity_id
 self.shared_activity = None
+self._client_handler = None
 self._join_id = None
 self._updating_jobject = False
 self._closing = False
@@ -370,7 +371,9 @@ class Activity(Window, gtk.Container):
 # There's already an instance on the mesh, join it
 logging.debug('*** Act %s joining existing mesh instance %r',
   self._activity_id, mesh_instance)
-self._client_handler = _ClientHandler(self.get_bundle_id(), None)
+if self._client_handler is None:
+self._client_handler = _ClientHandler(self.get_bundle_id(),
+  None)
 self.shared_activity = mesh_instance
 self.shared_activity.connect('notify::private',
  self.__privacy_changed_cb)
@@ -392,17 +395,24 @@ class Activity(Window, gtk.Container):
 else:
 logging.debug('Unknown share scope %r', share_scope)
 
-def __got_channel_cb(self, wait_loop, connection_path, channel_path):
+def __got_channel_cb(self, wait_loop, connection_path, channel_path,
+ handle_type):
 logging.debug('Activity.__got_channel_cb')
-connection_name = connection_path.replace('/', '.')[1:]
-
-bus = dbus.SessionBus()
-channel = bus.get_object(connection_name, channel_path)
-room_handle = channel.Get(CHANNEL, 'TargetHandle')
 
 pservice = presenceservice.get_instance()
-mesh_instance = pservice.get_activity_by_handle(connection_path,
-room_handle)
+if handle_type == CONNECTION_HANDLE_TYPE_ROOM:
+connection_name = connection_path.replace('/', '.')[1:]
+
+bus = dbus.SessionBus()
+channel = bus.get_object(connection_name, channel_path)
+room_handle = channel.Get(CHANNEL, 'TargetHandle')
+
+
+mesh_instance = pservice.get_activity_by_handle(connection_path,
+room_handle)
+else:
+mesh_instance = pservice.get_activity(self._activity_id,
+  warn_if_none=False)
 self._set_up_sharing(mesh_instance, SCOPE_PRIVATE)
 wait_loop.quit()
 
@@ -955,14 +965,17 @@ class _ClientHandler(dbus.service.Object, DBusProperties):
 logging.debug('HandleChannels\n\t%r\n\t%r\n\t%r\n\t%r\n\t%r\n\t%r',
 account, connection, channels, requests_satisfied,
 user_action_time, handler_info)
+
+if self._got_channel_cb is None:
+return
+
 try:
 for channel in channels:
 channel_properties = channel[1]
 channel_type = channel_properties[CHANNEL + '.ChannelType']
 handle_type = channel_properties[CHANNEL + '.TargetHandleType']
-if channel_type == CHANNEL_TYPE_TEXT and \
-handle_type == CONNECTION_HANDLE_TYPE_ROOM:
-self._got_channel_cb(connection, channel[0])
+if channel_type == CHANNEL_TYPE_TEXT:
+self._got_channel_cb(connection, channel[0], handle_type)
 except Exception, e:
 logging.exception(e)
 
-- 
1.7.4

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] Deployments round table in eduJam

2011-04-14 Thread Gonzalo Odiard
Until now, I don't have another volunteer to represent Nepal ;)

Gonzalo

On Thu, Apr 14, 2011 at 2:32 PM, Tony Anderson t...@olenepal.org wrote:

  Hi,

 Yes, although there are others who are also familiar with Nepal and Nkubito
 Bakuramutsa, who is the OLPC coordinator for Rwanda, may be there. In any
 case, I certainly want to attend and learn.

 Yours,

 Tony


 On 04/14/2011 07:28 PM, Gonzalo Odiard wrote:

 Perfect, can you represent these deployments?

 Gonzalo

 On Thu, Apr 14, 2011 at 2:26 PM, Tony Anderson t...@olenepal.org wrote:

 Hi,

 I have experience with the Nepal and Rwanda deployments.

 Tony


 On 04/14/2011 03:39 PM, Gonzalo Odiard wrote:

 Hello!
 We are trying to organize a deployments round table in eduJam, on
 Saturday the 7th.
 If you can represent your deployment, please send me a mail to
 coordinate times and preparation.
 Send me your name, deployment and what are the topics you consider
 important to talk.
 Regards,

 eduJam Program committee


 --

 Hola!
 Estamos tratando de organizar una mesa redonda de despliegues en el
 eduJam, el sábado 7.
 Si puedes representar a tu despliegue, por favor envíame un mail para
 coordinar tiempos y preparación.
 Envíame tu nompre, despliegue y los temas que consideras importantes
 para tratar.
 Saludos

 Comité de Programa eduJam





___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [IAEP] Deployments round table in eduJam

2011-04-14 Thread Gonzalo Odiard
Perfect, Paraguay checked! :)

Gonzalo

On Thu, Apr 14, 2011 at 2:42 PM, Martin Abente 
martin.abente.lah...@gmail.com wrote:

 After 2 years in Paraguay, developing Paraguay Educa back-end systems
 and dextrose guess I should join it too ;)

 On Thu, Apr 14, 2011 at 1:28 PM, Gonzalo Odiard gonz...@laptop.org
 wrote:
  Perfect, can you represent these deployments?
 
  Gonzalo
 
  On Thu, Apr 14, 2011 at 2:26 PM, Tony Anderson t...@olenepal.org
 wrote:
 
  Hi,
 
  I have experience with the Nepal and Rwanda deployments.
 
  Tony
 
  On 04/14/2011 03:39 PM, Gonzalo Odiard wrote:
 
  Hello!
  We are trying to organize a deployments round table in eduJam, on
  Saturday the 7th.
  If you can represent your deployment, please send me a mail to
  coordinate times and preparation.
  Send me your name, deployment and what are the topics you consider
  important to talk.
  Regards,
 
  eduJam Program committee
 
 
 
 --
 
  Hola!
  Estamos tratando de organizar una mesa redonda de despliegues en el
  eduJam, el sábado 7.
  Si puedes representar a tu despliegue, por favor envíame un mail para
  coordinar tiempos y preparación.
  Envíame tu nompre, despliegue y los temas que consideras importantes
  para tratar.
  Saludos
 
  Comité de Programa eduJam
 
 
 
 
  ___
  Sugar-devel mailing list
  Sugar-devel@lists.sugarlabs.org
  http://lists.sugarlabs.org/listinfo/sugar-devel
 
 
 ___
 IAEP -- It's An Education Project (not a laptop project!)
 i...@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/iaep

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] [RELEASE] sugar-0.92.1

2011-04-14 Thread Simon Schampijer
== Source ==

http://download.sugarlabs.org/sources/sucrose/glucose/sugar/sugar-0.92.1.tar.bz2

== News ==

* Release 0.92.1 (Simon Schampijer)
* jarabe.desktop.transitionbox: don't set icon size to float (Sascha Silbe)
* Fix search on external device OLPC #10808 (Simon Schampijer)
* Copy to external device: do not fail on custom binary metadata OLPC #10807 
(Simon Schampijer)
* Journal detail view copy-palette: fallback to more generic icon when needed, 
part of OLPC #10805 (Simon Schampijer)
* Commit from Sugar Labs: Translation System by user aputsiaq.: 370 of 370 
messages translated (0 fuzzy). (Pootle daemon)
* Reveal the file transfer palette immediately on left click OLPC #10796 (Simon 
Schampijer)
* Commit from Sugar Labs: Translation System by user RafaelOrtiz.: 370 of 370 
messages translated (0 fuzzy). (Pootle daemon)
* Fix inviting from friends view OLPC #10767 (Simon Schampijer)
* Cache the XO palette in the Home View, part of SL #2726 (Simon Schampijer)
* Fully update the salut account information when the nick name changes OLPC 
#10749 (Simon Schampijer)
* Commit from Sugar Labs: Translation System by user cjl.: 374 of 374 messages 
translated (0 fuzzy). (Pootle daemon)
* Construct the published name based on the public key OLPC #10737 (Simon 
Schampijer)
* ActivityListPalette: fix bundle_changed disconnection (Sascha Silbe)
* Remove leftovers that try to sync friends in the PS OLPC #10736 (Simon 
Schampijer)
* Language: restore undo functionality in control panel section #10754 (Simon 
Schampijer)
* Make the nick name in the file transfer palette a string OLPC #10735 (Simon 
Schampijer)
* Open content bundles on an external device SL #1748 (Simon Schampijer)
* Sugar Ad-hoc network: reconnect after suspend SL #2187 (Simon Schampijer)
* Make sure to listen on the new device after suspend OLPC #10672 (Simon 
Schampijer)
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] [RELEASE] sugar-toolkit-0.92.1

2011-04-14 Thread Simon Schampijer
== Source ==

http://download.sugarlabs.org/sources/sucrose/glucose/sugar-toolkit/sugar-toolkit-0.92.1.tar.bz2

== News ==

* Release 0.92.1 (Simon Schampijer)
* Avoid showing decorated windows during start-up (OLPC#10713) (Sascha Silbe)
* The activity icon does not handle the case of a activity without metadata. 
(Gonzalo Odiard)
* Store all the buddies that have been joined in the activity metadata OLPC 
#10578 (Simon Schampijer)
* Commit from Sugar Labs: Translation System by user cjl.: 40 of 40 messages 
translated (0 fuzzy). (Pootle daemon)
* fix regressions introduced by 29582de6 (fix for SL#1742) (Sascha Silbe)
* Open content bundles on a external device #1748 (Simon Schampijer)
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


[Sugar-devel] [RELEASE] sugar-datastore-0.92.1

2011-04-14 Thread Simon Schampijer
== Source ==

http://download.sugarlabs.org/sources/sucrose/glucose/sugar-datastore/sugar-datastore-0.92.1.tar.bz2

== News ==

* Release 0.92.1 (Simon Schampijer)
* Make sure data store checkouts are read-only (Sascha Silbe)
* don't destroy unchanged data store entries (SL#2668) (Sascha Silbe)
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [PATCH sugar] Anly approve and not handle channels in the shell, part of OLPC #10738

2011-04-14 Thread David Van Assche
awsome stuff on all the telepathy related stuff... I'm no expert, but looks
like things became more homologised and is now used more in line with the
way empathy and others run under gnome to use telepathy... Maybe I'm reading
too much into this, but does this effectively mean that we can now
communicate with any telepathy based client on other systems from a sugar
based system?

Perhaps you could explain how this effects activity sharing across
activities on other oses (say chat client on gnome with sugar chat?)

kind regards,
David Van Assche

On Thu, Apr 14, 2011 at 7:42 PM, Simon Schampijer si...@schampijer.dewrote:

 We only approve channels in the shell and do not claim to handle them
 anymore. The handling is now done by the activity (toolkit patch).
 More info about approving and handling of channels can be found at [1].

 This patch does as well only handle sugar activity invitations, invitations
 from non-sugar clients will be handled in a separate patch.

 [1]
 http://telepathy.freedesktop.org/doc/book/sect.channel-dispatcher.clients.html

 Signed-off-by: Simon Schampijer si...@laptop.org
 ---
  src/jarabe/model/telepathyclient.py |   21 -
  1 files changed, 16 insertions(+), 5 deletions(-)

 diff --git a/src/jarabe/model/telepathyclient.py
 b/src/jarabe/model/telepathyclient.py
 index c6fbac1..cea8693 100644
 --- a/src/jarabe/model/telepathyclient.py
 +++ b/src/jarabe/model/telepathyclient.py
 @@ -19,11 +19,16 @@ import logging
  import dbus
  from dbus import PROPERTIES_IFACE
  from telepathy.interfaces import CLIENT, \
 + CHANNEL, \
 + CHANNEL_TYPE_TEXT, \
  CLIENT_APPROVER, \
  CLIENT_HANDLER, \
  CLIENT_INTERFACE_REQUESTS
  from telepathy.server import DBusProperties

 +from telepathy.constants import CONNECTION_HANDLE_TYPE_CONTACT
 +from telepathy.constants import CONNECTION_HANDLE_TYPE_ROOM
 +
  from sugar import dispatch


 @@ -48,9 +53,6 @@ class TelepathyClient(dbus.service.Object,
 DBusProperties):
 self._implement_property_get(CLIENT, {
 'Interfaces': lambda: list(self._interfaces),
   })
 -self._implement_property_get(CLIENT_HANDLER, {
 -'HandlerChannelFilter': self.__get_filters_cb,
 -  })
 self._implement_property_get(CLIENT_APPROVER, {
 'ApproverChannelFilter': self.__get_filters_cb,
   })
 @@ -60,8 +62,17 @@ class TelepathyClient(dbus.service.Object,
 DBusProperties):

 def __get_filters_cb(self):
 logging.debug('__get_filters_cb')
 -filter_dict = dbus.Dictionary({}, signature='sv')
 -return dbus.Array([filter_dict], signature='a{sv}')
 +
 +filt = {
 +CHANNEL + '.ChannelType': CHANNEL_TYPE_TEXT,
 +CHANNEL + '.TargetHandleType': CONNECTION_HANDLE_TYPE_ROOM,
 +}
 +filter_dict = dbus.Dictionary(filt, signature='sv')
 +filters = dbus.Array([filter_dict], signature='a{sv}')
 +
 +logging.debug('__get_filters_cb %r', filters)
 +
 +return filters

 @dbus.service.method(dbus_interface=CLIENT_HANDLER,
  in_signature='ooa(oa{sv})aota{sv}',
 out_signature='')
 --
 1.7.4

 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel