Merge branch 'master' of git+ssh://dev.laptop.org/git/sugar
This commit is contained in:
commit
de2d4ef43b
5
NEWS
5
NEWS
@ -1,3 +1,8 @@
|
|||||||
|
* Actually handle multiple mime types (dcbw)
|
||||||
|
* Keep owner in the center in mesh view (dcbw)
|
||||||
|
* Suppress annoying warnings about unknown activities from the PS (dcbw)
|
||||||
|
* Don't close GlibTCPServer sockets prematurely (dcbw)
|
||||||
|
|
||||||
Snapshot 5212790236
|
Snapshot 5212790236
|
||||||
|
|
||||||
* Fix initialization order of buddy class '_activities' member (dcbw)
|
* Fix initialization order of buddy class '_activities' member (dcbw)
|
||||||
|
@ -113,7 +113,15 @@ class HomeActivity(gobject.GObject):
|
|||||||
colour for the icon.
|
colour for the icon.
|
||||||
"""
|
"""
|
||||||
pservice = presenceservice.get_instance()
|
pservice = presenceservice.get_instance()
|
||||||
activity = pservice.get_activity(self._activity_id)
|
|
||||||
|
# HACK to suppress warning in logs when activity isn't found
|
||||||
|
# (if it's locally launched and not shared yet)
|
||||||
|
activity = None
|
||||||
|
for act in pservice.get_activities():
|
||||||
|
if self._activity_id == act.props.id:
|
||||||
|
activity = act
|
||||||
|
break
|
||||||
|
|
||||||
if activity != None:
|
if activity != None:
|
||||||
return XoColor(activity.props.color)
|
return XoColor(activity.props.color)
|
||||||
else:
|
else:
|
||||||
|
@ -105,13 +105,24 @@ class FriendsBox(hippo.CanvasBox):
|
|||||||
'buddy-left', self.__buddy_left_cb)
|
'buddy-left', self.__buddy_left_cb)
|
||||||
|
|
||||||
def _active_activity_changed_cb(self, home_model, home_activity):
|
def _active_activity_changed_cb(self, home_model, home_activity):
|
||||||
if home_activity:
|
if not home_activity:
|
||||||
activity_id = home_activity.get_activity_id()
|
self._set_activity_ps(None)
|
||||||
if activity_id:
|
return
|
||||||
ps = self._pservice.get_activity(activity_id)
|
|
||||||
self._set_activity_ps(ps)
|
activity_id = home_activity.get_activity_id()
|
||||||
else:
|
if not activity_id:
|
||||||
self._set_activity_ps(None)
|
self._set_activity_ps(None)
|
||||||
|
return
|
||||||
|
|
||||||
|
# HACK to suppress warning in logs when activity isn't found
|
||||||
|
# (if it's locally launched and not shared yet)
|
||||||
|
activity = None
|
||||||
|
for act in self._pservice.get_activities():
|
||||||
|
if activity_id == act.props.id:
|
||||||
|
activity = act
|
||||||
|
break
|
||||||
|
if activity:
|
||||||
|
self._set_activity_ps(activity)
|
||||||
else:
|
else:
|
||||||
self._set_activity_ps(None)
|
self._set_activity_ps(None)
|
||||||
|
|
||||||
|
@ -260,6 +260,9 @@ class MeshBox(hippo.CanvasBox):
|
|||||||
self._remove_buddy(buddy_model)
|
self._remove_buddy(buddy_model)
|
||||||
|
|
||||||
def _buddy_moved_cb(self, model, buddy_model, activity_model):
|
def _buddy_moved_cb(self, model, buddy_model, activity_model):
|
||||||
|
# Owner doesn't move from the center
|
||||||
|
if buddy_model.is_owner():
|
||||||
|
return
|
||||||
self._move_buddy(buddy_model, activity_model)
|
self._move_buddy(buddy_model, activity_model)
|
||||||
|
|
||||||
def _activity_added_cb(self, model, activity_model):
|
def _activity_added_cb(self, model, activity_model):
|
||||||
|
@ -132,7 +132,7 @@ class Bundle:
|
|||||||
|
|
||||||
if cp.has_option(section, 'mime_types'):
|
if cp.has_option(section, 'mime_types'):
|
||||||
mime_list = cp.get(section, 'mime_types')
|
mime_list = cp.get(section, 'mime_types')
|
||||||
self._mime_types = mime_list.strip(';')
|
self._mime_types = mime_list.strip(';').split(';')
|
||||||
|
|
||||||
if cp.has_option(section, 'show_launcher'):
|
if cp.has_option(section, 'show_launcher'):
|
||||||
if cp.get(section, 'show_launcher') == 'no':
|
if cp.get(section, 'show_launcher') == 'no':
|
||||||
|
@ -69,6 +69,11 @@ class GlibTCPServer(SocketServer.TCPServer):
|
|||||||
self.handle_request()
|
self.handle_request()
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def close_request(self, request):
|
||||||
|
"""Called to clean up an individual request."""
|
||||||
|
# let the request be closed by the request handler when its done
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
class ChunkedGlibHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
|
class ChunkedGlibHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
|
||||||
"""RequestHandler class that integrates with Glib mainloop. It writes
|
"""RequestHandler class that integrates with Glib mainloop. It writes
|
||||||
@ -112,6 +117,7 @@ class ChunkedGlibHTTPRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
|
|||||||
def _cleanup(self):
|
def _cleanup(self):
|
||||||
if self._file:
|
if self._file:
|
||||||
self._file.close()
|
self._file.close()
|
||||||
|
self._file = None
|
||||||
if self._srcid > 0:
|
if self._srcid > 0:
|
||||||
gobject.source_remove(self._srcid)
|
gobject.source_remove(self._srcid)
|
||||||
self._srcid = 0
|
self._srcid = 0
|
||||||
@ -507,12 +513,23 @@ def xmlrpc_test(loop):
|
|||||||
error_handler=xmlrpc_error_cb,
|
error_handler=xmlrpc_error_cb,
|
||||||
user_data=loop)
|
user_data=loop)
|
||||||
|
|
||||||
def main():
|
def start_xmlrpc():
|
||||||
loop = gobject.MainLoop()
|
|
||||||
server = GlibXMLRPCServer(("", 8888))
|
server = GlibXMLRPCServer(("", 8888))
|
||||||
inst = Test()
|
inst = Test()
|
||||||
server.register_instance(inst)
|
server.register_instance(inst)
|
||||||
gobject.idle_add(xmlrpc_test, loop)
|
gobject.idle_add(xmlrpc_test, loop)
|
||||||
|
|
||||||
|
class TestReqHandler(ChunkedGlibHTTPRequestHandler):
|
||||||
|
def translate_path(self, path):
|
||||||
|
return "/tmp/foo"
|
||||||
|
|
||||||
|
def start_http():
|
||||||
|
server = GlibTCPServer(("", 8890), TestReqHandler)
|
||||||
|
|
||||||
|
def main():
|
||||||
|
loop = gobject.MainLoop()
|
||||||
|
# start_xmlrpc()
|
||||||
|
start_http()
|
||||||
try:
|
try:
|
||||||
loop.run()
|
loop.run()
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
@ -521,3 +538,5 @@ def main():
|
|||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
main()
|
main()
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user