[gnome-todo] Don't use case when sorting by task title
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-todo] Don't use case when sorting by task title
- Date: Fri, 12 Feb 2016 03:57:34 +0000 (UTC)
commit e5047ec61bbaa6799ff26cfef411a013ddf647be
Author: Isaque Galdino <igaldino gmail com>
Date: Fri Feb 12 00:28:23 2016 -0200
Don't use case when sorting by task title
Fixed scheduled panel and task sorting functions to be case insentive,
using g_utf8_casefold API.
https://bugzilla.gnome.org/show_bug.cgi?id=759877
plugins/eds/gtd-panel-scheduled.c | 14 +++++++++++++-
src/gtd-task.c | 14 +++++++++++++-
2 files changed, 26 insertions(+), 2 deletions(-)
---
diff --git a/plugins/eds/gtd-panel-scheduled.c b/plugins/eds/gtd-panel-scheduled.c
index 833d350..6dcd074 100644
--- a/plugins/eds/gtd-panel-scheduled.c
+++ b/plugins/eds/gtd-panel-scheduled.c
@@ -207,6 +207,8 @@ gtd_panel_scheduled_sort_func (GtkListBoxRow *row1,
GDateTime *dt1;
GDateTime *dt2;
gint retval;
+ gchar *t1;
+ gchar *t2;
dt1 = dt2 = NULL;
@@ -230,7 +232,17 @@ gtd_panel_scheduled_sort_func (GtkListBoxRow *row1,
if (retval != 0)
return retval;
- return g_strcmp0 (gtd_task_get_title (row1_task), gtd_task_get_title (row2_task));
+ t1 = t2 = NULL;
+
+ t1 = g_utf8_casefold (gtd_task_get_title (row1_task), -1);
+ t2 = g_utf8_casefold (gtd_task_get_title (row2_task), -1);
+
+ retval = g_strcmp0 (t1, t2);
+
+ g_free (t1);
+ g_free (t2);
+
+ return retval;
}
static void
diff --git a/src/gtd-task.c b/src/gtd-task.c
index 5e5396a..547d9c2 100644
--- a/src/gtd-task.c
+++ b/src/gtd-task.c
@@ -906,6 +906,8 @@ gtd_task_compare (GtdTask *t1,
GDateTime *dt2;
gboolean completed1;
gboolean completed2;
+ gchar *txt1;
+ gchar *txt2;
gint p1;
gint p2;
gint retval;
@@ -964,5 +966,15 @@ gtd_task_compare (GtdTask *t1,
/*
* If they're equal up to now, compare by title.
*/
- return g_strcmp0 (gtd_task_get_title (t1), gtd_task_get_title (t2));
+ txt1 = txt2 = NULL;
+
+ txt1 = g_utf8_casefold (gtd_task_get_title (t1), -1);
+ txt2 = g_utf8_casefold (gtd_task_get_title (t2), -1);
+
+ retval = g_strcmp0 (txt1, txt2);
+
+ g_free (txt1);
+ g_free (txt2);
+
+ return retval;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]