[Sugar-devel] Pulsing icons don't stop
Tomeu Vizoso
tomeu at sugarlabs.org
Mon Jul 19 06:18:26 EDT 2010
On Sun, Jul 18, 2010 at 07:21, Gonzalo Odiard <godiard at gmail.com> wrote:
> I am using systemtap in F13 to try to know what is doing sugar.
> In my first test I found the pulsing icon in launcher.py never stop.
> To monitor sugar-sesion I have a script stap-sugar-session.sh:
>
> [gonzalo at aronax sugar-jhbuild]$ cat stap-sugar-session.sh
> SUGAR_SESSION_PID=`ps ax | grep sugar-session | grep -v grep | awk
> '{printf("%s",$1)}'`
> stap -t /usr/share/doc/python-libs-2.6.4/systemtap-sugar-3.stp -x
> $SUGAR_SESSION_PID
>
> The file /usr/share/doc/python-libs-2.6.4/systemtap-sugar-3.stp is a
> modification of /usr/share/doc/python-libs-2.6.4/systemtap-example.stp, but
> you can use it also.
>
> If I start sugar-emulator and execute stap-sugar-session.sh I can see after
> start a activity and stop the activity, the pulsing icon continue for ever.
> It can be resolved applying the following patch, but I don't know if it's
> the right solution. May be it's anything wrong with the properties.
>
>
> [gonzalo at aronax view]$ diff -u launcher.py launcher.py.new
> --- launcher.py 2010-07-18 01:39:20.436252902 -0300
> +++ launcher.py.new 2010-07-17 01:25:42.893632264 -0300
> @@ -122,7 +122,7 @@
> self.connect('destroy', self.__destroy_cb)
>
> def __destroy_cb(self, box):
> - self._activity_icon.pulsing = False
> + self._activity_icon.set_paused(True)
> self._home.disconnect_by_func(self.__active_activity_changed_cb)
>
> def zoom_in(self):
> @@ -133,13 +133,13 @@
> style.STANDARD_ICON_SIZE,
> style.XLARGE_ICON_SIZE))
> self._animator.start()
> - self._activity_icon.pulsing = True
> + self._activity_icon.set_paused(False)
>
> def __active_activity_changed_cb(self, model, activity):
> if activity.get_activity_id() == self._activity_id:
> - self._activity_icon.paused = False
> + self._activity_icon.set_paused(False)
> else:
> - self._activity_icon.paused = True
> + self._activity_icon.set_paused(False)
AFAICS, icon[.props].paused = True should be equivalent to
icon.set_paused(True). Could you check if it's actually the case? May
be a bug in pygobject.
> class _Animation(animator.Animation):
>
> There are other files using the same properties.
>
> [gonzalo at aronax site-packages]$ pwd
> /home/gonzalo/sugar-jhbuild/install/lib/python2.6/site-packages
> [gonzalo at aronax site-packages]$ grep -r props.pause *
> jarabe/view/launcher.py.ori: self._activity_icon.props.paused =
> False
> jarabe/view/launcher.py.ori: self._activity_icon.props.paused =
> True
> jarabe/desktop/meshbox.py: net.props.paused = True
> jarabe/desktop/meshbox.py: net.props.paused = False
> [gonzalo at aronax site-packages]$ grep -r props.pulsing *
> jarabe/view/launcher.py.ori: self._activity_icon.props.pulsing =
> False
> jarabe/view/launcher.py.ori: self._activity_icon.props.pulsing = True
> jarabe/frame/notification.py: self._icon.props.pulsing = True
> jarabe/frame/notification.py: self._icon.props.pulsing = False
> jarabe/frame/activitiestray.py: self._icon.props.pulsing = True
> jarabe/frame/activitiestray.py: self._icon.props.pulsing = False
> jarabe/desktop/meshbox.py: self.props.pulsing = True
> jarabe/desktop/meshbox.py: self.props.pulsing = False
> jarabe/desktop/meshbox.py: self.props.pulsing = False
> jarabe/desktop/meshbox.py: self.props.pulsing = False
> jarabe/desktop/meshbox.py: self.props.pulsing = True
> jarabe/desktop/meshbox.py: self.props.pulsing = False
> jarabe/desktop/meshbox.py: self.props.pulsing = False
>
> I can put the instructions to use systemtap with sugar in the wiki if
> anybody think its useful.
That would be great, looks really useful.
Thanks,
Tomeu
> --
> Gonzalo Odiard
> SugarLabs Argentina
>
> _______________________________________________
> Sugar-devel mailing list
> Sugar-devel at lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel
>
>
More information about the Sugar-devel
mailing list