Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/jarabe/desktop/activitieslist.py
diff options
context:
space:
mode:
authorManuel Quiñones <manuq@laptop.org>2012-10-09 18:36:23 (GMT)
committer Manuel Quiñones <manuq@laptop.org>2012-10-09 20:47:08 (GMT)
commit6d72b348e091a8fb0775297da4cf0d86cc4c8ddd (patch)
treeed69eb5084e674a5608a542a3f1a5e40709e7a1e /src/jarabe/desktop/activitieslist.py
parent536204c2a3f742a3d62c0c94e975c3a47ce6c12f (diff)
Improve search in views normalizing the strings - SL #3588
Add a normalize.py file to the jarabe/util directory with a normalize_string method inside. Before calling it, we have to decode the strings returned by Gtk to Unicode in UTF8, because we use Python2. When we switch to Python3 this decodification will not be needed [1] [2] . [1] http://python-gtk-3-tutorial.readthedocs.org/en/latest/unicode.html [2] https://mail.gnome.org/archives/python-hackers-list/2012-June/msg00012.html Signed-off-by: Manuel Quiñones <manuq@laptop.org> Acked-by: Simon Schampijer <simon@laptop.org>
Diffstat (limited to 'src/jarabe/desktop/activitieslist.py')
-rw-r--r--src/jarabe/desktop/activitieslist.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/jarabe/desktop/activitieslist.py b/src/jarabe/desktop/activitieslist.py
index 3b07e87..4d2eb1a 100644
--- a/src/jarabe/desktop/activitieslist.py
+++ b/src/jarabe/desktop/activitieslist.py
@@ -36,6 +36,7 @@ from sugar3.graphics.alert import Alert
from jarabe.model import bundleregistry
from jarabe.view.palettes import ActivityPalette
from jarabe.journal import misc
+from jarabe.util.normalize import normalize_string
class ActivitiesTreeView(Gtk.TreeView):
@@ -153,14 +154,15 @@ class ActivitiesTreeView(Gtk.TreeView):
of matching activities.
"""
- self._query = query.lower()
+ self._query = normalize_string(query.decode('utf-8'))
self.get_model().refilter()
matches = self.get_model().iter_n_children(None)
return matches
def __model_visible_cb(self, model, tree_iter, data):
title = model[tree_iter][ListModel.COLUMN_TITLE]
- return title is not None and title.lower().find(self._query) > -1
+ title = normalize_string(title.decode('utf-8'))
+ return title is not None and title.find(self._query) > -1
class ListModel(Gtk.TreeModelSort):