[Sugar-devel] [PATCH] Remove bitmap icon handling from s-p-s
Tomeu Vizoso
tomeu at tomeuvizoso.net
Wed Aug 11 05:02:26 EDT 2010
On Wed, Aug 11, 2010 at 00:38, Bernie Innocenti <bernie at codewiz.org> wrote:
> This patch gets rid of some almost-dead code in sugar-presence-service
> for handling bitmap avatars.
The idea is that the PS is going to disappear soon. Do we really want
to make such cleanups given that?
Regards,
Tomeu
> Signed-off-by: Bernie Innocenti <bernie at codewiz.org>
> ---
> src/buddy.py | 63 +--------------------------------------------------------
> 1 files changed, 2 insertions(+), 61 deletions(-)
>
> diff --git a/src/buddy.py b/src/buddy.py
> index d81952e..4335f2d 100644
> --- a/src/buddy.py
> +++ b/src/buddy.py
> @@ -69,37 +69,6 @@ def _buddy_icon_save_cb(buf, data):
> data[0] += buf
> return True
>
> -def _get_buddy_icon_at_size(icon, maxw, maxh, maxsize):
> -# FIXME Do not import gtk in the presence service,
> -# it uses a lot of memory and slow down startup.
> -# loader = gtk.gdk.PixbufLoader()
> -# loader.write(icon)
> -# loader.close()
> -# unscaled_pixbuf = loader.get_pixbuf()
> -# del loader
> -#
> -# pixbuf = unscaled_pixbuf.scale_simple(maxw, maxh, gtk.gdk.INTERP_BILINEAR)
> -# del unscaled_pixbuf
> -#
> -# data = [""]
> -# quality = 90
> -# img_size = maxsize + 1
> -# while img_size > maxsize:
> -# data = [""]
> -# pixbuf.save_to_callback(_buddy_icon_save_cb, "jpeg",
> -# {"quality":"%d" % quality}, data)
> -# quality -= 10
> -# img_size = len(data[0])
> -# del pixbuf
> -#
> -# if img_size > maxsize:
> -# data = [""]
> -# raise RuntimeError("could not size image less than %d bytes" % maxsize)
> -#
> -# return str(data[0])
> -
> - return ""
> -
> class Buddy(ExportedGObject):
> """Person on the network (tracks properties and shared activites)
>
> @@ -212,20 +181,9 @@ class Buddy(ExportedGObject):
> _logger.debug("Invalid init property '%s'; ignoring..." % key)
> del kwargs[key]
>
> - # Set icon after superclass init, because it sends DBus and GObject
> - # signals when set
> - icon_data = None
> - if kwargs.has_key(_PROP_ICON):
> - icon_data = kwargs[_PROP_ICON]
> - del kwargs[_PROP_ICON]
> -
> ExportedGObject.__init__(self, bus, self._object_path,
> gobject_properties=kwargs)
>
> - if icon_data is not None:
> - self._icon = str(icon_data)
> - self.IconChanged(self._icon)
> -
> def __repr__(self):
> return '<ps.buddy.Buddy %s>' % (self._nick or u'').encode('utf-8')
>
> @@ -893,17 +851,6 @@ class GenericOwner(Buddy):
> if maxsize > 0 and size > maxsize:
> size = maxsize
>
> - if 1:
> - # FIXME: Avatars have been disabled for Trial-2 due to performance
> - # issues in the avatar cache. Revisit this afterwards
> - pass
> - else:
> - img_data = _get_buddy_icon_at_size(icon_data, width, height, size)
> - conn[CONN_INTERFACE_AVATARS].SetAvatar(img_data, "image/jpeg",
> - reply_handler=set_self_avatar_cb,
> - error_handler=lambda e:
> - _logger.warning('Error setting avatar: %s', e))
> -
> def _property_changed(self, changed_props):
> for tp in self._handles.iterkeys():
>
> @@ -963,8 +910,7 @@ class ShellOwner(GenericOwner):
> bus -- a connection to the D-Bus session bus
>
> Retrieves initial property values from the profile
> - module. Loads the buddy icon from file as well.
> - XXX note: no error handling on that
> + module.
>
> calls GenericOwner.__init__
> """
> @@ -981,14 +927,9 @@ class ShellOwner(GenericOwner):
> if not isinstance(nick, unicode):
> nick = unicode(nick, 'utf-8')
>
> - icon_file = os.path.join(env.get_profile_path(), "buddy-icon.jpg")
> - f = open(icon_file, "r")
> - icon = f.read()
> - f.close()
> -
> GenericOwner.__init__(self, ps, bus,
> 'keyid/' + psutils.pubkey_to_keyid(key),
> - key=key, nick=nick, color=color, icon=icon, key_hash=key_hash,
> + key=key, nick=nick, color=color, key_hash=key_hash,
> tags=tags)
>
> # Ask to get notifications on Owner object property changes in the
> --
> 1.7.2.1
>
>
More information about the Sugar-devel
mailing list