Please make sure to to mention the ticket number in the git log. Something like: "Fix #1111". I'll try to post about this in a more generic way later today.
Marco On Sun, Jun 22, 2008 at 9:16 AM, Tomeu Vizoso <[EMAIL PROTECTED]> wrote: > r+ Thanks! > > On Sun, Jun 22, 2008 at 4:05 AM, Eben Eliason <[EMAIL PROTECTED]> wrote: >> Good points. This new patch addresses the points brought up, and also >> cleans things up a bit by naming the hovering event appropriately, and >> by homogenizing the classes in the two files a bit. >> >> --- >> src/view/home/activitieslist.py | 31 +++++++++++++++++++++---------- >> src/view/home/favoritesview.py | 22 ++++++++++++++-------- >> 2 files changed, 35 insertions(+), 18 deletions(-) >> >> diff --git a/src/view/home/activitieslist.py >> b/src/view/home/activitieslist.py >> index 5dab09d..e542859 100644 >> --- a/src/view/home/activitieslist.py >> +++ b/src/view/home/activitieslist.py >> @@ -105,22 +105,33 @@ class ActivitiesList(gtk.ScrolledWindow): >> class ActivityIcon(CanvasIcon): >> def __init__(self, activity_info): >> CanvasIcon.__init__(self, size=style.STANDARD_ICON_SIZE, cache=True, >> - file_name=activity_info.icon, >> - stroke_color=style.COLOR_BUTTON_GREY.get_svg(), >> - fill_color=style.COLOR_TRANSPARENT.get_svg()) >> + file_name=activity_info.icon) >> self._activity_info = activity_info >> + self._uncolor() >> self.connect('hovering-changed', self.__hovering_changed_event_cb) >> - >> - def __hovering_changed_event_cb(self, icon, event): >> - if event: >> - self.props.xo_color = profile.get_color() >> - else: >> - self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >> - self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >> + self.connect('button-release-event', self.__button_release_event_cb) >> >> def create_palette(self): >> return ActivityPalette(self._activity_info) >> >> + def _color(self): >> + self.props.xo_color = profile.get_color() >> + >> + def _uncolor(self): >> + self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >> + self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >> + >> + def __hovering_changed_event_cb(self, icon, hovering): >> + if hovering: >> + self._color() >> + else: >> + self._uncolor() >> + >> + def __button_release_event_cb(self, icon, event): >> + self.palette.popdown(immediate=True) >> + self._uncolor() >> + >> + >> class ActivityEntry(hippo.CanvasBox, hippo.CanvasItem): >> __gtype_name__ = 'SugarActivityEntry' >> >> diff --git a/src/view/home/favoritesview.py b/src/view/home/favoritesview.py >> index a6e2268..1c948e8 100644 >> --- a/src/view/home/favoritesview.py >> +++ b/src/view/home/favoritesview.py >> @@ -268,23 +268,29 @@ class ActivityIcon(CanvasIcon): >> def __init__(self, activity_info): >> CanvasIcon.__init__(self, cache=True, file_name=activity_info.icon) >> self._activity_info = activity_info >> + self._uncolor() >> self.connect('hovering-changed', self.__hovering_changed_event_cb) >> self.connect('button-release-event', self.__button_release_event_cb) >> >> - self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >> - self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >> - >> def create_palette(self): >> return ActivityPalette(self._activity_info) >> >> - def __hovering_changed_event_cb(self, icon, event): >> - if event: >> - self.props.xo_color = get_profile().color >> + def _color(self): >> + self.props.xo_color = get_profile().color >> + >> + def _uncolor(self): >> + self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >> + self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >> + >> + def __hovering_changed_event_cb(self, icon, hovering): >> + if hovering: >> + self._color() >> else: >> - self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >> - self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >> + self._uncolor() >> >> def __button_release_event_cb(self, icon, event): >> + self.palette.popdown(immediate=True) >> + self._uncolor() >> >> view.Shell.get_instance().start_activity(self._activity_info.bundle_id) >> >> def get_bundle_id(self): >> -- >> >> Thanks! >> >> - Eben >> >> >> >> On Sat, Jun 21, 2008 at 4:56 AM, Tomeu Vizoso <[EMAIL PROTECTED]> wrote: >>> On Sat, Jun 21, 2008 at 1:14 AM, Eben Eliason <[EMAIL PROTECTED]> wrote: >>>> The act of clicking on an activity icon in Home to launch it >>>> switches the view to the launcher, eliminating the expected >>>> hovering-changed event (leave). This commit hides the palette >>>> instantly (it used to remain visible in the launcher) and >>>> un-colors the icon (which used to remain colored when returning >>>> to Home). >>>> >>>> --- >>>> src/view/home/activitieslist.py | 11 ++++++++++- >>>> src/view/home/favoritesview.py | 8 +++++++- >>>> 2 files changed, 17 insertions(+), 2 deletions(-) >>>> >>>> diff --git a/src/view/home/activitieslist.py >>>> b/src/view/home/activitieslist.py >>>> index 5dab09d..8086b7b 100644 >>>> --- a/src/view/home/activitieslist.py >>>> +++ b/src/view/home/activitieslist.py >>>> @@ -110,6 +110,9 @@ class ActivityIcon(CanvasIcon): >>>> fill_color=style.COLOR_TRANSPARENT.get_svg()) >>>> self._activity_info = activity_info >>>> self.connect('hovering-changed', self.__hovering_changed_event_cb) >>>> + self.connect('button-release-event', >>>> self.__button_release_event_cb) >>>> + >>>> + self._palette = None >>> >>> No need to keep track of the palette, we can access it with >>> self.palette (is a property of CanvasIcon). >>> >>>> def __hovering_changed_event_cb(self, icon, event): >>>> if event: >>>> @@ -118,8 +121,14 @@ class ActivityIcon(CanvasIcon): >>>> self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >>>> self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >>>> >>>> + def __button_release_event_cb(self, icon, event): >>>> + self._palette.popdown(immediate=True) >>>> + self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >>>> + self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >>> >>> Perhaps we shouldn't duplicate this set of colors, maybe a >>> _restore_colors() method could be created? >>> >>>> + >>>> def create_palette(self): >>>> - return ActivityPalette(self._activity_info) >>>> + self._palette = ActivityPalette(self._activity_info) >>>> + return self._palette >>>> >>>> class ActivityEntry(hippo.CanvasBox, hippo.CanvasItem): >>>> __gtype_name__ = 'SugarActivityEntry' >>>> diff --git a/src/view/home/favoritesview.py >>>> b/src/view/home/favoritesview.py >>>> index a6e2268..6e56db5 100644 >>>> --- a/src/view/home/favoritesview.py >>>> +++ b/src/view/home/favoritesview.py >>>> @@ -274,8 +274,11 @@ class ActivityIcon(CanvasIcon): >>>> self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >>>> self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >>>> >>>> + self._palette = None >>>> + >>>> def create_palette(self): >>>> - return ActivityPalette(self._activity_info) >>>> + self._palette = ActivityPalette(self._activity_info) >>>> + return self._palette >>>> >>>> def __hovering_changed_event_cb(self, icon, event): >>>> if event: >>>> @@ -285,6 +288,9 @@ class ActivityIcon(CanvasIcon): >>>> self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >>>> >>>> def __button_release_event_cb(self, icon, event): >>>> + self._palette.popdown(immediate=True) >>>> + self.props.stroke_color = style.COLOR_BUTTON_GREY.get_svg() >>>> + self.props.fill_color = style.COLOR_TRANSPARENT.get_svg() >>>> >>>> view.Shell.get_instance().start_activity(self._activity_info.bundle_id) >>>> >>>> def get_bundle_id(self): >>> >>> Same for favorites as for the list. >>> >>> Thanks, >>> >>> Tomeu >>> >> > _______________________________________________ > Code-review mailing list > [EMAIL PROTECTED] > http://lists.laptop.org/listinfo/code-review > _______________________________________________ Sugar mailing list Sugar@lists.laptop.org http://lists.laptop.org/listinfo/sugar