summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2011-03-08 12:47:46 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2011-03-08 12:47:46 +0000
commit9d3ec7bd4b3eb8977a423debb1169f26e6888187 (patch)
tree371cc8b09577d8097732e44c07ba8d35914ca97e
parent9f2042a4ef343d14997dac02038e6cc6aeeafc4d (diff)
issue 19: case insensitive filtering
-rw-r--r--src/trg-main-window.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/trg-main-window.c b/src/trg-main-window.c
index 757393e..8efe06c 100644
--- a/src/trg-main-window.c
+++ b/src/trg-main-window.c
@@ -1048,8 +1048,17 @@ trg_torrent_tree_view_visible_func(GtkTreeModel * model,
} else if (name != NULL) {
const gchar *filterText =
gtk_entry_get_text(GTK_ENTRY(priv->filterEntry));
- if (strlen(filterText) > 0 && strstr(name, filterText) == NULL)
- visible = FALSE;
+ if (strlen(filterText) > 0) {
+ gchar *filterTextFolded = g_utf8_casefold(filterText, -1);
+ gchar *nameFolded = g_utf8_casefold(name, -1);
+
+ if (!strstr(nameFolded, filterTextFolded))
+ visible = FALSE;
+
+ g_free(filterTextFolded);
+ g_free(nameFolded);
+ }
+
}
g_free(name);