From: Gonzalo Odiard <godi...@gmail.com> This patch complement the filter functionality in the home view. If only one activity is selected, Return key start the activity.
Signed-off-by: Gonzalo Odiard <gonz...@laptop.org> --- src/jarabe/desktop/favoritesview.py | 7 +++++++ src/jarabe/desktop/homewindow.py | 2 ++ 2 files changed, 9 insertions(+), 0 deletions(-) diff --git a/src/jarabe/desktop/favoritesview.py b/src/jarabe/desktop/favoritesview.py index 132d14f..db3aa36 100644 --- a/src/jarabe/desktop/favoritesview.py +++ b/src/jarabe/desktop/favoritesview.py @@ -94,6 +94,7 @@ class FavoritesView(hippo.Canvas): self._layout = None self._alert = None self._resume_mode = True + self._filtered_icons = [] # More DND stuff self.add_events(gtk.gdk.BUTTON_PRESS_MASK | @@ -113,14 +114,20 @@ class FavoritesView(hippo.Canvas): def set_filter(self, query): query = query.strip() + self._filtered_icons = [] for icon in self._box.get_children(): if icon not in [self._my_icon, self._current_activity]: activity_name = icon._activity_info.get_name().lower() if activity_name.find(query) > -1: icon.alpha = 1.0 + self._filtered_icons.append(icon) else: icon.alpha = 0.33 + def start_selected_activity(self): + if len(self._filtered_icons) == 1: + self._filtered_icons[0]._activate() + def __settings_changed_cb(self, **kwargs): favorites_settings = get_settings() self._set_layout(favorites_settings.layout) diff --git a/src/jarabe/desktop/homewindow.py b/src/jarabe/desktop/homewindow.py index 07deff7..f03b067 100644 --- a/src/jarabe/desktop/homewindow.py +++ b/src/jarabe/desktop/homewindow.py @@ -117,6 +117,8 @@ class HomeWindow(gtk.Window): def __key_press_event_cb(self, window, event): if event.keyval in [gtk.keysyms.Alt_L, gtk.keysyms.Alt_R]: self._home_box.set_resume_mode(False) + if event.keyval == gtk.keysyms.Return: + self._home_box._favorites_view.start_selected_activity() return False def __key_release_event_cb(self, window, event): -- 1.7.7 _______________________________________________ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel