[tasks] Kill trailing whitespace



commit b6995e423c045ee4ad95933d3768544deee04d27
Author: Ross Burton <ross linux intel com>
Date:   Thu Apr 23 19:00:54 2009 +0100

    Kill trailing whitespace
---
 libkoto/koto-actions.c              |   40 ++++++++--------
 libkoto/koto-category-group.c       |   10 ++--
 libkoto/koto-cell-renderer-pixbuf.c |    2 +-
 libkoto/koto-cell-renderer-pixbuf.h |    2 +-
 libkoto/koto-date-combo.c           |   36 ++++++++--------
 libkoto/koto-date-parser.c          |   82 +++++++++++++++++-----------------
 libkoto/koto-entry.c                |   34 +++++++-------
 libkoto/koto-field-editor-factory.c |   42 +++++++++---------
 libkoto/koto-group-combo.c          |   30 ++++++------
 libkoto/koto-group-filter-model.c   |   10 ++--
 libkoto/koto-group-store.c          |   20 ++++----
 libkoto/koto-hint-entry.c           |   10 ++--
 libkoto/koto-meta-group.c           |    4 +-
 libkoto/koto-no-category-group.c    |    2 +-
 libkoto/koto-priority-combo.c       |    6 +-
 libkoto/koto-task-editor-dialog.c   |   30 ++++++------
 libkoto/koto-task-editor.c          |    6 +-
 libkoto/koto-task-store.c           |   28 ++++++------
 libkoto/koto-task-view.c            |   52 +++++++++++-----------
 libkoto/koto-task.c                 |    6 +-
 libkoto/koto-undo-action.c          |   10 ++--
 libkoto/koto-undo-manager.c         |    2 +-
 libkoto/koto-undo-manager.h         |    2 +-
 libkoto/koto-undoable.h             |    4 +-
 libkoto/koto-utils.c                |    8 ++--
 libkoto/test-ical-util.c            |    4 +-
 libkoto/test-koto-group-store.c     |    4 +-
 src/gtk/window-util.c               |   18 ++++----
 src/hildon/hildon-tasks.c           |   54 +++++++++++-----------
 src/omoko/openmoko-tasks.c          |   22 +++++-----
 30 files changed, 290 insertions(+), 290 deletions(-)

diff --git a/libkoto/koto-actions.c b/libkoto/koto-actions.c
index e662b68..906691e 100644
--- a/libkoto/koto-actions.c
+++ b/libkoto/koto-actions.c
@@ -57,7 +57,7 @@ add_remove_task_undo (gpointer closure)
     g_warning (G_STRLOC ": cannot remove task: %s", error->message);
     g_error_free (error);
   }
-  
+
   g_free (data->uid);
   data->uid = NULL;
 }
@@ -72,7 +72,7 @@ add_remove_task_redo (gpointer closure)
     g_warning ("ECal has been destroyed");
     return;
   }
-  
+
   g_free (data->uid);
   data->uid = NULL;
 
@@ -103,7 +103,7 @@ modify_task_undo (gpointer closure)
     g_warning ("ECal has been destroyed");
     return;
   }
-  
+
   if (!e_cal_modify_object (data->cal, data->before, CALOBJ_MOD_THIS, &error)) {
     g_warning (G_STRLOC ": cannot modify task: %s", error->message);
     g_error_free (error);
@@ -120,7 +120,7 @@ modify_task_redo (gpointer closure)
     g_warning ("ECal has been destroyed");
     return;
   }
-  
+
   if (!e_cal_modify_object (data->cal, data->after, CALOBJ_MOD_THIS, &error)) {
     g_warning (G_STRLOC ": cannot modify task: %s", error->message);
     g_error_free (error);
@@ -148,31 +148,31 @@ koto_action_delete_task (ECal *cal, KotoTask *task, KotoUndoContext *undo)
 
   g_return_val_if_fail (E_IS_CAL (cal), FALSE);
   g_return_val_if_fail (task, FALSE);
-  
-  if (!e_cal_remove_object (cal, icalcomponent_get_uid (task->comp), &error)) {    
+
+  if (!e_cal_remove_object (cal, icalcomponent_get_uid (task->comp), &error)) {
     g_warning ("Cannot remove object: %s", error->message);
     g_error_free (error);
     return FALSE;
   }
-  
+
   if (undo) {
     KotoUndoable *u;
     AddRemoveData *c;
-    
+
     c = g_slice_new0 (AddRemoveData);
     c->cal = cal;
     g_object_add_weak_pointer (G_OBJECT (cal), (gpointer)&c->cal);
     c->uid = NULL;
     c->comp = icalcomponent_new_clone (task->comp);
-    
+
     u = koto_undoable_new (add_remove_task_redo,
                            add_remove_task_undo,
                            add_remove_task_destroy,
                            c);
-    
+
     koto_undo_context_add (undo, u);
   }
-  
+
   return TRUE;
 }
 
@@ -193,25 +193,25 @@ koto_action_create_task (ECal *cal, icalcomponent *comp, char **uid, KotoUndoCon
 
   if (uid)
     *uid = real_uid;
-  
+
   if (undo) {
     AddRemoveData *c;
     KotoUndoable *u;
-    
+
     c = g_slice_new0 (AddRemoveData);
     c->cal = cal;
     g_object_add_weak_pointer (G_OBJECT (cal), (gpointer)&c->cal);
     c->uid = g_strdup (real_uid);
     c->comp = icalcomponent_new_clone (comp);
-    
+
     u = koto_undoable_new (add_remove_task_undo,
                            add_remove_task_redo,
                            add_remove_task_destroy,
                            c);
-    
+
     koto_undo_context_add (undo, u);
   }
-  
+
   return TRUE;
 }
 
@@ -237,19 +237,19 @@ koto_action_modify_task (ECal *cal, KotoTask *task, icalcomponent *old, KotoUndo
   if (undo) {
     ModifyData *c;
     KotoUndoable *u;
-    
+
     c = g_slice_new0 (ModifyData);
     c->cal = cal;
     g_object_add_weak_pointer (G_OBJECT (cal), (gpointer)&c->cal);
     c->before = old;
     old = NULL; /* Set old to NULL so that it isn't freed later */
     c->after = icalcomponent_new_clone (task->comp);
-    
+
     u = koto_undoable_new (modify_task_undo,
                            modify_task_redo,
                            modify_task_destroy,
                            c);
-    
+
     koto_undo_context_add (undo, u);
   }
 
@@ -257,6 +257,6 @@ koto_action_modify_task (ECal *cal, KotoTask *task, icalcomponent *old, KotoUndo
   if (old) {
     icalcomponent_free (old);
   }
-  
+
   return TRUE;
 }
diff --git a/libkoto/koto-category-group.c b/libkoto/koto-category-group.c
index 481b987..5398e14 100644
--- a/libkoto/koto-category-group.c
+++ b/libkoto/koto-category-group.c
@@ -34,7 +34,7 @@ static const char *
 get_name (KotoGroup *group)
 {
   g_return_val_if_fail (KOTO_IS_CATEGORY_GROUP (group), NULL);
-  
+
   return GET_PRIVATE (group)->name;
 }
 
@@ -55,11 +55,11 @@ includes_task (KotoGroup *group, KotoTask *task)
   g_return_val_if_fail (task, FALSE);
 
   priv = GET_PRIVATE (group);
-  
+
   /* Handle no categories */
   if (task->categories == NULL)
     return FALSE;
-  
+
   for (l = task->categories; *l ; l++) {
     /* TODO: strmp? or funky decomposition compare? */
     if (strcmp (priv->name, *l) == 0) {
@@ -67,7 +67,7 @@ includes_task (KotoGroup *group, KotoTask *task)
       break;
     }
   }
-  
+
   return visible;
 }
 
@@ -77,7 +77,7 @@ koto_category_group_class_init (KotoCategoryGroupClass *klass)
   KotoGroupClass *group_class = KOTO_GROUP_CLASS (klass);
 
   g_type_class_add_private (klass, sizeof (KotoCategoryGroupPrivate));
-  
+
   group_class->get_name = get_name;
   group_class->get_weight = get_weight;
   group_class->includes_task = includes_task;
diff --git a/libkoto/koto-cell-renderer-pixbuf.c b/libkoto/koto-cell-renderer-pixbuf.c
index 0f6a753..b4ab170 100644
--- a/libkoto/koto-cell-renderer-pixbuf.c
+++ b/libkoto/koto-cell-renderer-pixbuf.c
@@ -49,7 +49,7 @@ koto_cell_renderer_pixbuf_activate (GtkCellRenderer *cell,
                                     GtkCellRendererState flags)
 {
   gdouble x, y;
-  
+
   if (event && gdk_event_get_coords (event, &x, &y)) {
     if (contains (cell_area, (int)x, (int)y)) {
       g_signal_emit (cell, signals[ACTIVATED], 0, path);
diff --git a/libkoto/koto-cell-renderer-pixbuf.h b/libkoto/koto-cell-renderer-pixbuf.h
index 789bca9..e8347f9 100644
--- a/libkoto/koto-cell-renderer-pixbuf.h
+++ b/libkoto/koto-cell-renderer-pixbuf.h
@@ -41,7 +41,7 @@ struct _KotoCellRendererPixbuf
 struct _KotoCellRendererPixbufClass
 {
   GtkCellRendererPixbufClass parent_class;
-  
+
   void (* activated) (KotoCellRendererPixbuf *cell, const char *path);
 };
 
diff --git a/libkoto/koto-date-combo.c b/libkoto/koto-date-combo.c
index ebf6fe7..1d7472f 100644
--- a/libkoto/koto-date-combo.c
+++ b/libkoto/koto-date-combo.c
@@ -32,7 +32,7 @@ typedef struct {
   GtkWidget *calendar;
 
   GDate *date;
-  
+
   guint selected_id;
 
   gboolean month_changed;
@@ -80,7 +80,7 @@ popup_grab_on_window (GdkWindow *window,
       return FALSE;
     }
   }
-  
+
   return FALSE;
 }
 
@@ -99,14 +99,14 @@ mark_today (KotoDateCombo *combo)
   priv = GET_PRIVATE (combo);
 
   g_date_set_time_t (&today, time (NULL));
-  
+
   if (priv->marked_day > 1) {
     gtk_calendar_unmark_day (GTK_CALENDAR (priv->calendar), priv->marked_day);
   }
 
   gtk_calendar_get_date (GTK_CALENDAR (priv->calendar), NULL, &month, NULL);
   month++; /* Stupid 0-based months */
-  
+
   if (month == g_date_get_month (&today)) {
     priv->marked_day = g_date_get_day (&today);
     gtk_calendar_mark_day (GTK_CALENDAR (priv->calendar), priv->marked_day);
@@ -122,7 +122,7 @@ clamp_window (GtkWindow *window, int *x, int *y)
   GdkScreen *screen;
   int monitor_num;
   GdkRectangle monitor;
-  
+
   screen = gtk_widget_get_screen (widget);
   monitor_num = gdk_screen_get_monitor_at_window (screen, widget->window);
   gdk_screen_get_monitor_geometry (screen, monitor_num, &monitor);
@@ -135,7 +135,7 @@ clamp_window (GtkWindow *window, int *x, int *y)
   if (*y < monitor.y)
     *y = monitor.y;
   else if (*y + widget->allocation.height > monitor.y + monitor.height)
-    *y = monitor.y + monitor.height - widget->allocation.height;  
+    *y = monitor.y + monitor.height - widget->allocation.height;
 }
 
 /*
@@ -155,7 +155,7 @@ koto_date_combo_toggled (GtkToggleButton *button)
 
     gtk_widget_show (priv->popup);
 
-    clamp_window (GTK_WINDOW (priv->popup), &x, &y);    
+    clamp_window (GTK_WINDOW (priv->popup), &x, &y);
     gtk_window_move (GTK_WINDOW (priv->popup), x, y);
 
     g_signal_handler_block (priv->calendar, priv->selected_id);
@@ -206,7 +206,7 @@ on_today_clicked (GtkButton *button, KotoDateCombo *combo)
   g_date_set_time_t (&date, time (NULL));
 
   koto_date_combo_set_date (combo, &date);
-  
+
   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (combo), FALSE);
 }
 
@@ -221,7 +221,7 @@ on_none_clicked (GtkButton *button, KotoDateCombo *combo)
   g_date_clear (&date, 1);
 
   koto_date_combo_set_date (combo, &date);
-  
+
   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (combo), FALSE);
 }
 
@@ -242,7 +242,7 @@ on_day_selected (GtkCalendar *calendar, KotoDateCombo *combo)
   }
 
   gtk_calendar_get_date (calendar, &year, &month, &day);
-  
+
   g_date_set_dmy (priv->date, day, month + 1, year);
 
   g_object_notify (G_OBJECT (combo), "date");
@@ -314,7 +314,7 @@ koto_date_combo_finalize (GObject *object)
   KotoDateComboPrivate *priv = GET_PRIVATE (object);
 
   g_date_free (priv->date);
-  
+
   G_OBJECT_CLASS (koto_date_combo_parent_class)->finalize (object);
 }
 
@@ -327,7 +327,7 @@ koto_date_combo_map (GtkWidget *widget)
   GTK_WIDGET_CLASS (koto_date_combo_parent_class)->map (widget);
 
   /* This is used to limit the scope of the grab */
-  
+
   toplevel = gtk_widget_get_toplevel (GTK_WIDGET (widget));
   if (GTK_WIDGET_TOPLEVEL (toplevel)) {
     gtk_window_set_transient_for (GTK_WINDOW (priv->popup),
@@ -359,7 +359,7 @@ koto_date_combo_class_init (KotoDateComboClass *klass)
                                                        G_PARAM_READABLE | G_PARAM_WRITABLE |
                                                        G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB));
 
-                                                       
+
 }
 
 static void
@@ -386,7 +386,7 @@ koto_date_combo_init (KotoDateCombo *self)
   gtk_box_pack_start (GTK_BOX (hbox),
                       gtk_arrow_new (GTK_ARROW_DOWN, GTK_SHADOW_NONE),
                       FALSE, FALSE, 0);
-  
+
   gtk_widget_show_all (hbox);
   gtk_container_add (GTK_CONTAINER (self), hbox);
 
@@ -450,7 +450,7 @@ koto_date_combo_set_date (KotoDateCombo *combo, GDate *date)
   } else {
     g_date_clear (priv->date, 1);
   }
-  
+
   g_object_notify (G_OBJECT (combo), "date");
 
   update_ui (combo);
@@ -461,10 +461,10 @@ GDate *
 koto_date_combo_get_date (KotoDateCombo *combo)
 {
   KotoDateComboPrivate *priv;
-  
+
   g_return_val_if_fail (KOTO_IS_DATE_COMBO (combo), NULL);
-  
+
   priv = GET_PRIVATE (combo);
-  
+
   return priv->date;
 }
diff --git a/libkoto/koto-date-parser.c b/libkoto/koto-date-parser.c
index 3f23ea3..befdee6 100644
--- a/libkoto/koto-date-parser.c
+++ b/libkoto/koto-date-parser.c
@@ -50,17 +50,17 @@ static void
 populate_hash (GHashTable *hash, const char **aliases, int count)
 {
   int i;
-  
+
   g_assert (hash);
   g_assert (aliases);
   g_assert (count);
 
   for (i = 0; i < count; i++) {
     char **tokens, **s;
-    
+
     if (aliases[i] == NULL)
       continue;
-    
+
     tokens = g_strsplit (_(aliases[i]), "|", 0);
     for (s = tokens; *s; s++) {
       g_hash_table_insert (hash, g_utf8_casefold (*s, -1), GINT_TO_POINTER (i));
@@ -85,7 +85,7 @@ init_days (void)
     N_("saturday|sat"),
     N_("sunday|sun"),
   };
-  
+
   day_hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
   populate_hash (day_hash, aliases, G_N_ELEMENTS (aliases));
 }
@@ -111,7 +111,7 @@ init_months (void)
     N_("november|nov"),
     N_("december|dec"),
   };
-  
+
   month_hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
   populate_hash (month_hash, aliases, G_N_ELEMENTS (aliases));
 }
@@ -122,7 +122,7 @@ convert_str_weekday (const char *s)
   char *folded;
   GDateWeekday day;
   g_assert (s);
-  
+
   folded = g_utf8_casefold (s, -1);
 #if DEBUG
   g_printerr ("Converting '%s' to a week day\n", folded);
@@ -163,7 +163,7 @@ today (void)
 #if BUILD_TESTS
   g_date_set_dmy (date, 11, 3, 2008);
 #else
-  g_date_set_time_t (date, time (NULL)); 
+  g_date_set_time_t (date, time (NULL));
 #endif
   return date;
 }
@@ -201,19 +201,19 @@ match_next (const char  *input, GMatchInfo *info)
   char *s;
   GDateDay current_day, next_day;
   int add_days;
-  
+
   s = g_match_info_fetch_named (info, "day");
   next_day = convert_str_weekday (s);
   g_free (s);
   if (next_day == G_DATE_BAD_WEEKDAY)
     return NULL;
-  
+
   date = today ();
   current_day = g_date_get_weekday (date);
   add_days = 7 + next_day - current_day;
 
   g_date_add_days (date, add_days);
-  
+
   return date;
 }
 
@@ -224,13 +224,13 @@ match_this (const char *input, GMatchInfo *info)
   char *s;
   GDateDay today_day;
   GDateWeekday target_day;
-  
+
   s = g_match_info_fetch_named (info, "day");
   target_day = convert_str_weekday (s);
   g_free (s);
   if (target_day == G_DATE_BAD_WEEKDAY)
     return NULL;
-    
+
   date = today ();
   today_day = g_date_get_day (date);
   g_date_subtract_days (date, g_date_get_weekday (date));
@@ -238,7 +238,7 @@ match_this (const char *input, GMatchInfo *info)
 
   if (g_date_get_day (date) <= today_day)
     g_date_add_days (date, 7);
-  
+
   return date;
 }
 
@@ -261,14 +261,14 @@ match_date (const char *input, GMatchInfo *info)
     return NULL;
   month = atoi (month_s);
   g_free (month_s);
-  
+
   if (!g_date_valid_day (day) || !g_date_valid_month (month))
     return NULL;
 
   date = today ();
   g_date_set_day (date, day);
   g_date_set_month (date, month);
-  
+
   return date;
 }
 
@@ -294,7 +294,7 @@ match_day (const char *input, GMatchInfo *info)
 
   date = today ();
   g_date_set_day (date, day);
-  
+
   return date;
 }
 
@@ -322,7 +322,7 @@ match_day_month (const char *input, GMatchInfo *info)
   date = today ();
   g_date_set_day (date, day);
   g_date_set_month (date, month);
-  
+
   return date;
 }
 
@@ -335,11 +335,11 @@ match_digits (const char *input, GMatchInfo *info)
   s = g_match_info_fetch_named (info, "digits");
   if (!s)
     return NULL;
-  
+
   date = g_date_new ();
   g_date_set_parse (date, s);
   g_free (s);
-  
+
   if (g_date_valid (date)) {
     return date;
   } else {
@@ -354,7 +354,7 @@ match_week (const char *input, GMatchInfo *info)
   GDate *date;
   char *week_s;
   int week, this_week;
-  
+
   week_s = g_match_info_fetch_named (info, "week");
   if (!week_s)
     return NULL;
@@ -366,7 +366,7 @@ match_week (const char *input, GMatchInfo *info)
 
   date = today ();
   this_week = g_date_get_iso8601_week_of_year (date);
-  
+
   /* Go to the Monday in week 1 */
   g_date_set_day (date, 1);
   g_date_set_month (date, G_DATE_JANUARY);
@@ -385,7 +385,7 @@ match_days (const char *input, GMatchInfo *info)
   GDate *date;
   char *days_s;
   int days;
-  
+
   days_s = g_match_info_fetch_named (info, "days");
   if (!days_s)
     return NULL;
@@ -406,7 +406,7 @@ match_weeks (const char *input, GMatchInfo *info)
   GDate *date;
   char *weeks_s;
   int weeks;
-  
+
   weeks_s = g_match_info_fetch_named (info, "weeks");
   if (!weeks_s)
     return NULL;
@@ -430,11 +430,11 @@ matcher_new (const gchar *regex_str, MatchFunc func)
 
   g_assert (regex_str);
   g_assert (func);
-  
+
   regex = g_regex_new (regex_str,
 		       G_REGEX_CASELESS | G_REGEX_OPTIMIZE, 0,
 		       &error);
-  
+
   if (error) {
     g_warning ("Cannot parse regex '%s': %s", regex_str, error->message);
     g_error_free (error);
@@ -443,7 +443,7 @@ matcher_new (const gchar *regex_str, MatchFunc func)
 
   m = g_slice_new (Matcher);
   m->regex = regex;
-  m->func = func;  
+  m->func = func;
   return m;
 }
 
@@ -456,7 +456,7 @@ init_matchers (void)
 
   init_days ();
   init_months ();
-  
+
   /*
     Translators: WARNING: scary strings ahead.  If you don't understand regular
     expressions then skip these, otherwise
@@ -531,7 +531,7 @@ init_matchers (void)
      translated.*/
   m = matcher_new (_("^(?<task>.+) in (?<weeks>\\d+) weeks?$"), match_weeks);
   if (m) matchers = g_list_prepend (matchers, m);
-  
+
   return g_list_reverse (matchers);
 }
 
@@ -544,10 +544,10 @@ koto_date_parse (const char *s, char **out_s)
 #if DEBUG
   g_printerr ("Testing '%s'\n", s);
 #endif
-  
+
   if (matchers == NULL)
     matchers = init_matchers ();
-  
+
   for (l = matchers; l != NULL; l = l->next) {
     Matcher *m = l->data;
     GMatchInfo *info;
@@ -560,12 +560,12 @@ koto_date_parse (const char *s, char **out_s)
       date = m->func (s, info);
       if (!date)
 	goto next;
-      
+
       if (!g_date_valid (date)) {
 	g_date_free (date);
 	goto next;
       }
-      
+
       if (out_s) {
 	*out_s = g_match_info_fetch_named (info, "task");
 #if DEBUG
@@ -625,12 +625,12 @@ main (int argc, char **argv)
   /*
    * today() returns 11th March 2008 when running the test case.
    */
-  
+
   /* Set the locale to C so we can do string comparisons easily */
   setlocale (LC_ALL, "C");
 
   /* Sanity checks for non-date strings */
-  
+
   TEST_PARSER_FAIL ("foo");
   TEST_PARSER_FAIL ("foo and bar");
 
@@ -644,7 +644,7 @@ main (int argc, char **argv)
 
   g_date_subtract_days (expected, 2);
   TEST_PARSER ("Foo Yesterday", "Foo");
-  
+
   /* On 21st, etc */
 
   g_date_set_dmy (expected, 1, 3, 2008);
@@ -661,7 +661,7 @@ main (int argc, char **argv)
 
   TEST_PARSER_FAIL ("foo by 999th");
   TEST_PARSER_FAIL ("foo on 32th");
-  
+
   /* On 1st June, etc */
 
   g_date_set_dmy (expected, 1, 4, 2008);
@@ -680,7 +680,7 @@ main (int argc, char **argv)
   TEST_PARSER ("foo by jan 3rd", "foo");
 
   /* This/etc [weekday] */
-  
+
   g_date_set_dmy (expected, 12, 3, 2008);
   TEST_PARSER ("foo this wednesday", "foo");
   TEST_PARSER ("foo this wed", "foo");
@@ -713,7 +713,7 @@ main (int argc, char **argv)
   TEST_PARSER_FAIL ("foo due fish");
   TEST_PARSER_FAIL ("foo by fish");
   TEST_PARSER_FAIL ("fish this flob");
-  
+
   /* Next [weekday] */
 
   g_date_set_dmy (expected, 17, 3, 2008);
@@ -738,7 +738,7 @@ main (int argc, char **argv)
   TEST_PARSER ("foo next sunday", "foo");
 
   TEST_PARSER_FAIL ("foo next flobday");
-  
+
   /* Digits.  Remember we're in in the C locale so the dates are m/d/y */
 
   g_date_set_dmy (expected, 17, 3, 2008);
@@ -759,7 +759,7 @@ main (int argc, char **argv)
   TEST_PARSER_FAIL ("foo on 4/31/07");
 
   /* Week numbers */
-  
+
   g_date_set_dmy (expected, 17, 3, 2008);
   TEST_PARSER ("foo on w12", "foo");
 
@@ -810,7 +810,7 @@ main (int argc, char **argv)
   TEST_PARSER_FAIL ("foo in 0 weeks");
 
   g_date_free (expected);
-  
+
   return 0;
 }
 #endif /* BUILD_TESTS */
diff --git a/libkoto/koto-entry.c b/libkoto/koto-entry.c
index 80434d3..cf49544 100644
--- a/libkoto/koto-entry.c
+++ b/libkoto/koto-entry.c
@@ -94,15 +94,15 @@ koto_entry_insert_text (GtkEditable *editable, const gchar *text, int length, in
   if (priv->user_edit) {
     KotoUndoContext *context;
     InsertState *state;
-    
+
     context = koto_undo_manager_context_begin (priv->manager, _("Insert"));
-    
+
     state = g_slice_new0 (InsertState);
     state->editable = editable;
     state->text = g_strdup (text);
     state->length = strlen (text);
     state->position = *position;
-    
+
     koto_undo_context_add
       (context, koto_undoable_new (insert_undo, insert_redo, insert_destroy, state));
 
@@ -112,7 +112,7 @@ koto_entry_insert_text (GtkEditable *editable, const gchar *text, int length, in
   parent_editable_interface->insert_text (editable, text, length, position);
 }
 
-static void 
+static void
 koto_entry_delete_text (GtkEditable *editable, int start_pos, int end_pos)
 {
   KotoEntry *entry = KOTO_ENTRY (editable);
@@ -121,21 +121,21 @@ koto_entry_delete_text (GtkEditable *editable, int start_pos, int end_pos)
   if (priv->user_edit) {
     KotoUndoContext *context;
     InsertState *state;
-    
+
     context = koto_undo_manager_context_begin (priv->manager, _("Delete"));
-    
+
     state = g_slice_new0 (InsertState);
     state->editable = editable;
     state->text = gtk_editable_get_chars (editable, start_pos, end_pos);
     state->length = strlen (state->text);
     state->position = start_pos;
-    
+
     koto_undo_context_add
       (context, koto_undoable_new (insert_redo, insert_undo, insert_destroy, state));
 
     koto_undo_manager_context_end (priv->manager, context);
   }
-  
+
   parent_editable_interface->delete_text (editable, start_pos, end_pos);
 }
 
@@ -143,12 +143,12 @@ static void
 koto_entry_dispose (GObject *object)
 {
   KotoEntryPrivate *priv = ENTRY_PRIVATE (object);
-  
+
   if (priv->manager) {
     g_object_unref (priv->manager);
     priv->manager = NULL;
   }
-  
+
   G_OBJECT_CLASS (koto_entry_parent_class)->dispose (object);
 }
 
@@ -157,7 +157,7 @@ static void
 koto_entry_editable_init (GtkEditableClass *iface)
 {
   parent_editable_interface = g_type_interface_peek_parent (iface);
-  
+
   iface->insert_text = koto_entry_insert_text;
   iface->delete_text = koto_entry_delete_text;
 }
@@ -176,15 +176,15 @@ static gboolean
 on_key_press_event (GtkWidget *widget, GdkEventKey *event)
 {
   gboolean control;
-  
+
   control = event->state & GDK_CONTROL_MASK;
-  
+
   if (control && event->keyval == 'z') {
-    KotoEntryPrivate *priv = ENTRY_PRIVATE (widget); 
+    KotoEntryPrivate *priv = ENTRY_PRIVATE (widget);
     koto_undo_manager_undo (priv->manager);
     return TRUE;
   } else if (control && event->keyval == 'Z') {
-    KotoEntryPrivate *priv = ENTRY_PRIVATE (widget); 
+    KotoEntryPrivate *priv = ENTRY_PRIVATE (widget);
     koto_undo_manager_redo (priv->manager);
     return TRUE;
   }
@@ -212,9 +212,9 @@ void
 koto_entry_set_text (KotoEntry *entry, const char *text)
 {
   KotoEntryPrivate *priv;
-  
+
   g_return_if_fail (KOTO_IS_ENTRY (entry));
-  
+
   priv = ENTRY_PRIVATE (entry);
 
   priv->user_edit = FALSE;
diff --git a/libkoto/koto-field-editor-factory.c b/libkoto/koto-field-editor-factory.c
index 8e14d10..9147d5d 100644
--- a/libkoto/koto-field-editor-factory.c
+++ b/libkoto/koto-field-editor-factory.c
@@ -76,7 +76,7 @@ on_entry_changed (GtkEntry *entry)
 {
   FieldData *data;
   const char *text;
-  
+
   data = g_object_get_data (G_OBJECT (entry), FIELD_DATA);
 
   if (!data) {
@@ -104,7 +104,7 @@ entry_new (void)
 {
   GtkWidget *widget;
   guint id;
-  
+
   widget = koto_entry_new ();
   id = g_signal_connect (widget, "changed", G_CALLBACK (on_entry_changed), NULL);
   g_object_set_data (G_OBJECT (widget), SIGNAL_DATA, GINT_TO_POINTER (id));
@@ -152,7 +152,7 @@ static void
 on_icon_entry_changed (SexyIconEntry *entry)
 {
   const char *text;
-  
+
   text = gtk_entry_get_text (GTK_ENTRY (entry));
 
   sexy_icon_entry_set_icon_highlight (entry,
@@ -275,7 +275,7 @@ priority_set (GtkWidget *widget, icalproperty *prop)
   if (prop) {
     priority = icalproperty_get_priority (prop);
   }
-  
+
   g_signal_handler_block (widget, id);
   koto_priority_combo_set_priority (KOTO_PRIORITY_COMBO (widget), priority);
   g_signal_handler_unblock (widget, id);
@@ -314,10 +314,10 @@ on_text_changed (GtkTextBuffer *buffer)
   gtk_text_buffer_get_start_iter (buffer, &start);
   gtk_text_buffer_get_end_iter (buffer, &end);
   text = gtk_text_buffer_get_text (buffer, &start, &end, FALSE);
-  
+
   escaped = g_strescape (text, NULL);
   g_free (text);
-  
+
   /* NO means use the default value type. Ugly as sin. */
   icalproperty_set_value_from_string (data->prop, escaped, "NO");
   g_free (escaped);
@@ -333,7 +333,7 @@ text_new (void)
   GtkWidget *scrolled, *textview;
   GtkTextBuffer *buffer;
   guint id;
-  
+
   scrolled = gtk_scrolled_window_new (NULL, NULL);
   gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
   gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled), GTK_SHADOW_IN);
@@ -348,7 +348,7 @@ text_new (void)
 
   id = g_signal_connect (buffer, "changed", G_CALLBACK (on_text_changed), NULL);
   g_object_set_data (G_OBJECT (scrolled), SIGNAL_DATA, GINT_TO_POINTER (id));
-  
+
   return scrolled;
 }
 
@@ -424,7 +424,7 @@ run_new_category_dialog (GtkWidget *widget)
   /* Magically get the top-level window */
   parent = gtk_widget_get_toplevel (widget);
   parent = GTK_WIDGET_TOPLEVEL (parent) ? parent : NULL;
-  
+
   dialog = gtk_dialog_new_with_buttons (_("New Category"), GTK_WINDOW (parent),
                                         GTK_DIALOG_NO_SEPARATOR,
                                         GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
@@ -432,17 +432,17 @@ run_new_category_dialog (GtkWidget *widget)
                                         NULL);
   gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
   gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
-  
+
   box = GTK_DIALOG (dialog)->vbox;
   gtk_box_set_spacing (GTK_BOX (box), 8);
-  
+
   label = gtk_label_new (_("Enter the name of the new category:"));
   gtk_box_pack_start (GTK_BOX (box), label, FALSE, FALSE, 0);
-  
+
   entry = gtk_entry_new ();
   gtk_entry_set_activates_default (GTK_ENTRY (entry), TRUE);
   gtk_box_pack_start (GTK_BOX (box), entry, TRUE, TRUE, 0);
-  
+
   gtk_widget_show_all (dialog);
 
   if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_OK) {
@@ -470,7 +470,7 @@ on_category_changed (KotoGroupCombo *combo)
 
   group = koto_group_combo_get_active_group (combo);
   type = G_OBJECT_TYPE (group);
-  
+
   if (g_type_is_a (type, KOTO_TYPE_CATEGORY_GROUP)) {
     /* Create the property if it didn't exist */
     if (data->prop == NULL) {
@@ -480,7 +480,7 @@ on_category_changed (KotoGroupCombo *combo)
     /* Now set its value */
     icalproperty_set_categories (data->prop, koto_group_get_name (group));
   }
-  
+
   else if (g_type_is_a (type, KOTO_TYPE_META_GROUP)) {
     KotoMetaGroupKind kind;
     kind = koto_meta_group_get_kind (KOTO_META_GROUP (group));
@@ -497,7 +497,7 @@ on_category_changed (KotoGroupCombo *combo)
       GtkTreeIter iter;
 
       name = run_new_category_dialog (GTK_WIDGET (combo));
-      
+
       if (name) {
         store = KOTO_GROUP_STORE (gtk_combo_box_get_model (GTK_COMBO_BOX (combo)));
         koto_group_store_add_new_category (store, &iter, name);
@@ -516,7 +516,7 @@ on_category_changed (KotoGroupCombo *combo)
   } else {
     g_warning ("Unhandled group type %s", g_type_name (type));
   }
-  
+
   g_object_unref (group);
 
   *data->dirty = TRUE;
@@ -594,12 +594,12 @@ date_set (GtkWidget *widget, icalproperty *prop)
   id = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (widget), SIGNAL_DATA));
 
   g_date_clear (&date, 1);
-  
+
   if (prop) {
     due = icalproperty_get_due (prop);
     g_date_set_dmy (&date, due.day, due.month, due.year);
   }
-  
+
   g_signal_handler_block (widget, id);
   koto_date_combo_set_date (KOTO_DATE_COMBO (widget), &date);
   g_signal_handler_unblock (widget, id);
@@ -638,7 +638,7 @@ koto_field_editor_create (icalproperty_kind kind, gboolean *dirty)
       data->dirty = dirty;
 
       g_object_set_data_full (G_OBJECT (widget), FIELD_DATA, data, g_free);
-      
+
       return widget;
     }
   }
@@ -656,7 +656,7 @@ koto_field_editor_set (GtkWidget *widget, KotoTask *task)
   data = g_object_get_data (G_OBJECT (widget), FIELD_DATA);
   if (!data)
     return;
-  
+
   g_return_if_fail (data->field->set_value);
 
   data->task = task;
diff --git a/libkoto/koto-group-combo.c b/libkoto/koto-group-combo.c
index 42bef26..d39c64f 100644
--- a/libkoto/koto-group-combo.c
+++ b/libkoto/koto-group-combo.c
@@ -41,18 +41,18 @@ is_separator_func (GtkTreeModel *model, GtkTreeIter *iter, gpointer data)
 {
   KotoGroup *group = NULL;
   gboolean ret = FALSE;
-  
+
   gtk_tree_model_get (model, iter, COL_GROUP, &group, -1);
   if (!group)
     return FALSE;
-  
+
   if (g_type_is_a (G_OBJECT_TYPE (group), KOTO_TYPE_META_GROUP)
       && koto_meta_group_get_kind
       (KOTO_META_GROUP (group)) == KOTO_META_GROUP_SEPERATOR)
     ret = TRUE;
-  
+
   g_object_unref (group);
-  
+
   return ret;
 }
 
@@ -112,7 +112,7 @@ static void
 koto_group_combo_init (KotoGroupCombo *self)
 {
   GtkCellRenderer *renderer;
-  
+
   renderer = gtk_cell_renderer_text_new ();
   gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (self), renderer, TRUE);
   gtk_cell_layout_set_cell_data_func  (GTK_CELL_LAYOUT (self), renderer,
@@ -133,10 +133,10 @@ koto_group_combo_new (KotoGroupStore *store)
   GtkWidget *combo;
 
   combo = g_object_new (KOTO_TYPE_GROUP_COMBO, NULL);
-  
+
   if (store)
     g_object_set (combo, "model", store, NULL);
-  
+
   return combo;
 }
 
@@ -146,17 +146,17 @@ koto_group_combo_get_active_group (KotoGroupCombo *combo)
   GtkTreeIter iter;
   GtkTreeModel *model;
   KotoGroup *group = NULL;
-  
+
   g_return_val_if_fail (KOTO_IS_GROUP_COMBO (combo), NULL);
-  
+
   if (gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo), &iter)) {
     model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo));
-    
+
     gtk_tree_model_get (model, &iter, COL_GROUP, &group, -1);
-    
+
     return group;
   }
-  
+
   return NULL;
 }
 
@@ -174,17 +174,17 @@ koto_group_combo_connect_filter (KotoGroupCombo *combo, KotoGroupFilterModel *fi
   KotoGroupComboPrivate *priv;
 
   g_return_if_fail (KOTO_IS_GROUP_COMBO (combo));
-  
+
   priv = GET_PRIVATE (combo);
 
   if (priv->changed_id) {
     g_signal_handler_disconnect (combo, priv->changed_id);
     g_object_unref (priv->filter);
-    
+
     priv->changed_id = 0;
     priv->filter = NULL;
   }
-  
+
   if (filter) {
     priv->changed_id = g_signal_connect (combo, "changed",
                                          G_CALLBACK (on_group_changed), NULL);
diff --git a/libkoto/koto-group-filter-model.c b/libkoto/koto-group-filter-model.c
index a7a92f0..35f7bf8 100644
--- a/libkoto/koto-group-filter-model.c
+++ b/libkoto/koto-group-filter-model.c
@@ -41,12 +41,12 @@ visible_func (GtkTreeModel *model, GtkTreeIter *iter, gpointer data)
   KotoGroupFilterModelPrivate *priv = GET_PRIVATE (data);
   KotoTask *task = NULL;
   gboolean visible = FALSE;
-  
+
   gtk_tree_model_get (model, iter, COLUMN_TASK, &task, -1);
-  
+
   if (task == NULL)
     return FALSE;
-  
+
   if (priv->group) {
     visible = koto_group_includes_task (priv->group, task);
     if (!visible)
@@ -54,7 +54,7 @@ visible_func (GtkTreeModel *model, GtkTreeIter *iter, gpointer data)
   }
  done:
   koto_task_unref (task);
-  
+
   return visible;
 }
 
@@ -134,6 +134,6 @@ koto_group_model_filter_set_group (KotoGroupFilterModel *filter, KotoGroup *grou
   if (group) {
     priv->group = g_object_ref (group);
   }
-  
+
   gtk_tree_model_filter_refilter  (GTK_TREE_MODEL_FILTER (filter));
 }
diff --git a/libkoto/koto-group-store.c b/libkoto/koto-group-store.c
index 050716b..a0e6664 100644
--- a/libkoto/koto-group-store.c
+++ b/libkoto/koto-group-store.c
@@ -54,7 +54,7 @@ on_objects_added (ECalView *view, GList *objects, KotoGroupStore *store)
   for (;objects; objects = g_list_next (objects)) {
     icalcomponent *comp = objects->data;
     char **categories, **l;
-    
+
     categories = g_strsplit (ical_util_get_categories (comp) ?: "", ",", 0);
 
     for (l = categories; *l; l++) {
@@ -81,7 +81,7 @@ sorter_cb (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer user_da
     res = weight_a - weight_b;
     goto done;
   }
-  
+
   res = g_utf8_collate (koto_group_get_name (group_a) ?: "",
                         koto_group_get_name (group_b) ?: "");
 
@@ -141,7 +141,7 @@ koto_group_store_finalize (GObject *object)
   KotoGroupStorePrivate *priv = GET_PRIVATE (object);
 
   g_hash_table_destroy (priv->iter_hash);
-  
+
   G_OBJECT_CLASS (koto_group_store_parent_class)->finalize (object);
 }
 
@@ -179,7 +179,7 @@ koto_group_store_init (KotoGroupStore *self)
   gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (self),
                                         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID,
                                         GTK_SORT_ASCENDING);
-  
+
   priv->iter_hash = g_hash_table_new_full (g_str_hash, g_str_equal,
                                       g_free, (GDestroyNotify)gtk_tree_iter_free);
 }
@@ -211,7 +211,7 @@ koto_group_store_set_view (KotoGroupStore *store, ECalView *view)
     g_object_unref (priv->view);
     priv->view = NULL;
   }
-  
+
   if (view) {
     priv->view = g_object_ref (view);
     priv->sig_added = g_signal_connect (priv->view, "objects-added", G_CALLBACK (on_objects_added), store);
@@ -233,7 +233,7 @@ koto_group_store_get_iter_for_group (KotoGroupStore *store, const char *group, G
   if (group == NULL || group[0] == '\0') {
     return gtk_tree_model_get_iter_first (GTK_TREE_MODEL (store), iter);
   }
-  
+
   if (g_hash_table_lookup_extended (priv->iter_hash, group, NULL, (gpointer*)(void*)&it)) {
     *iter = *it;
     return TRUE;
@@ -261,9 +261,9 @@ koto_group_store_add_new_category (KotoGroupStore *store, GtkTreeIter *iter, con
 
   g_return_if_fail (KOTO_IS_GROUP_STORE (store));
   g_return_if_fail (name);
-  
+
   priv = GET_PRIVATE (store);
-  
+
   current_it = g_hash_table_lookup (priv->iter_hash, name);
   if (current_it) {
     if (iter) *iter = *current_it;
@@ -275,7 +275,7 @@ koto_group_store_add_new_category (KotoGroupStore *store, GtkTreeIter *iter, con
     g_hash_table_insert (priv->iter_hash, g_strdup (name), gtk_tree_iter_copy (&new_it));
 
     g_object_unref (group);
-    
+
     if (iter) *iter = new_it;
   }
 }
@@ -318,7 +318,7 @@ find_group (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpointer
       ret = TRUE;
     }
   }
-  
+
   g_object_unref (group);
   return ret;
 }
diff --git a/libkoto/koto-hint-entry.c b/libkoto/koto-hint-entry.c
index 855ca2b..1825d5f 100644
--- a/libkoto/koto-hint-entry.c
+++ b/libkoto/koto-hint-entry.c
@@ -106,7 +106,7 @@ koto_hint_entry_get_property (GObject *object, guint property_id,
                               GValue *value, GParamSpec *pspec)
 {
   KotoHintEntryPrivate *priv = GET_PRIVATE (object);
-  
+
   switch (property_id) {
   case PROP_HINT:
     g_value_set_string (value, priv->hint);
@@ -121,7 +121,7 @@ koto_hint_entry_set_property (GObject *object, guint property_id,
                               const GValue *value, GParamSpec *pspec)
 {
   KotoHintEntryPrivate *priv = GET_PRIVATE (object);
-  
+
   switch (property_id) {
   case PROP_HINT:
     if (priv->hint) {
@@ -161,7 +161,7 @@ koto_hint_entry_class_init (KotoHintEntryClass *klass)
 
   widget_class->focus_in_event = focus_in_event;
   widget_class->focus_out_event = focus_out_event;
-  
+
   g_object_class_install_property (object_class, PROP_HINT, g_param_spec_string
                                    ("hint", "hint", NULL, "",
                                     G_PARAM_READWRITE | G_PARAM_CONSTRUCT |
@@ -203,7 +203,7 @@ void
 koto_hint_entry_clear (KotoHintEntry *entry)
 {
   g_return_if_fail (KOTO_IS_HINT_ENTRY (entry));
-  
+
   gtk_entry_set_text (GTK_ENTRY (entry), "");
 
   update (entry);
@@ -215,7 +215,7 @@ koto_hint_entry_is_empty (KotoHintEntry *entry)
   KotoHintEntryPrivate *priv;
 
   g_return_val_if_fail (KOTO_IS_HINT_ENTRY (entry), TRUE);
-  
+
   priv = GET_PRIVATE (entry);
 
   if (priv->state == STATE_HINTING)
diff --git a/libkoto/koto-meta-group.c b/libkoto/koto-meta-group.c
index 6582601..c523576 100644
--- a/libkoto/koto-meta-group.c
+++ b/libkoto/koto-meta-group.c
@@ -36,7 +36,7 @@ get_name (KotoGroup *group)
   KotoMetaGroupPrivate *priv;
 
   g_return_val_if_fail (KOTO_IS_META_GROUP (group), NULL);
-  
+
   priv = GET_PRIVATE (group);
 
   switch (priv->kind) {
@@ -65,7 +65,7 @@ koto_meta_group_class_init (KotoMetaGroupClass *klass)
   KotoGroupClass *group_class = KOTO_GROUP_CLASS (klass);
 
   g_type_class_add_private (klass, sizeof (KotoMetaGroupPrivate));
-  
+
   group_class->get_name = get_name;
   group_class->get_weight = get_weight;
 }
diff --git a/libkoto/koto-no-category-group.c b/libkoto/koto-no-category-group.c
index cd41c28..b544ab4 100644
--- a/libkoto/koto-no-category-group.c
+++ b/libkoto/koto-no-category-group.c
@@ -28,7 +28,7 @@ static const char *
 get_name (KotoGroup *group)
 {
   g_return_val_if_fail (KOTO_IS_NO_CATEGORY_GROUP (group), NULL);
-  
+
   return _("No Category");
 }
 
diff --git a/libkoto/koto-priority-combo.c b/libkoto/koto-priority-combo.c
index 8e8a021..d50fa5a 100644
--- a/libkoto/koto-priority-combo.c
+++ b/libkoto/koto-priority-combo.c
@@ -37,7 +37,7 @@ combo_changed (GtkComboBox *combo)
   KotoPriorityComboPrivate *priv = GET_PRIVATE (combo);
   GtkTreeModel *model;
   GtkTreeIter iter;
-  
+
   model = gtk_combo_box_get_model (combo);
   gtk_combo_box_get_active_iter (combo, &iter);
 
@@ -118,9 +118,9 @@ int
 koto_priority_combo_get_priority (KotoPriorityCombo *combo)
 {
   KotoPriorityComboPrivate *priv;
-  
+
   g_return_val_if_fail (KOTO_IS_PRIORITY_COMBO (combo), PRIORITY_NONE);
-  
+
   priv = GET_PRIVATE (combo);
 
   return priv->priority;
diff --git a/libkoto/koto-task-editor-dialog.c b/libkoto/koto-task-editor-dialog.c
index 35b70a5..e2e2415 100644
--- a/libkoto/koto-task-editor-dialog.c
+++ b/libkoto/koto-task-editor-dialog.c
@@ -58,11 +58,11 @@ response_cb (GtkDialog *dialog, int response)
   KotoTaskEditorDialogPrivate *priv = GET_PRIVATE (dialog);
   GtkWidget *confirm;
   KotoUndoContext *undo = NULL;
-  
+
   if (!priv->task) {
     return;
   }
-  
+
   switch (response) {
   case KOTO_TASK_EDITOR_DIALOG_RESPONSE_DELETE:
     confirm = gtk_message_dialog_new (GTK_WINDOW (dialog),
@@ -77,7 +77,7 @@ response_cb (GtkDialog *dialog, int response)
                             GTK_STOCK_DELETE, GTK_RESPONSE_ACCEPT,
                             NULL);
     gtk_dialog_set_default_response (GTK_DIALOG (confirm), GTK_RESPONSE_ACCEPT);
-    
+
     if (gtk_dialog_run (GTK_DIALOG (confirm)) == GTK_RESPONSE_ACCEPT) {
       if (priv->undo_manager)
         undo = koto_undo_manager_context_begin_formatted (priv->undo_manager,
@@ -93,7 +93,7 @@ response_cb (GtkDialog *dialog, int response)
       /* Stop the response signal from getting anywhere. */
       g_signal_stop_emission_by_name (dialog, "response");
     }
-    
+
     gtk_widget_destroy (confirm);
   default:
     if (koto_task_editor_dialog_is_dirty (KOTO_TASK_EDITOR_DIALOG (dialog))) {
@@ -102,9 +102,9 @@ response_cb (GtkDialog *dialog, int response)
                                                           _("Edit Task %s"),
                                                           icalcomponent_get_summary (priv->task->comp),
                                                           NULL);
-      
+
       koto_action_modify_task (priv->cal, priv->task, priv->old_comp, undo);
-      
+
       if (priv->undo_manager)
         koto_undo_manager_context_end (priv->undo_manager, undo);
     }
@@ -117,7 +117,7 @@ koto_task_editor_dialog_get_property (GObject *object, guint property_id,
 {
   KotoTaskEditorDialog *editor = KOTO_TASK_EDITOR_DIALOG (object);
   KotoTaskEditorDialogPrivate *priv = GET_PRIVATE (editor);
-  
+
   switch (property_id) {
   case PROP_TASK:
     g_value_set_boxed (value, priv->task);
@@ -176,12 +176,12 @@ static void
 koto_task_editor_dialog_dispose (GObject *object)
 {
   KotoTaskEditorDialogPrivate *priv = GET_PRIVATE (object);
-  
+
   if (priv->cal) {
     g_object_unref (priv->cal);
     priv->cal = NULL;
   }
-  
+
   if (priv->task) {
     koto_task_unref (priv->task);
     priv->task = NULL;
@@ -191,7 +191,7 @@ koto_task_editor_dialog_dispose (GObject *object)
     g_object_unref (priv->undo_manager);
     priv->undo_manager = NULL;
   }
-  
+
   if (G_OBJECT_CLASS (koto_task_editor_dialog_parent_class)->dispose)
     G_OBJECT_CLASS (koto_task_editor_dialog_parent_class)->dispose (object);
 }
@@ -200,9 +200,9 @@ static void
 koto_task_editor_dialog_finalize (GObject *object)
 {
   KotoTaskEditorDialogPrivate *priv = GET_PRIVATE (object);
-  
+
   icalcomponent_free (priv->old_comp);
-  
+
   G_OBJECT_CLASS (koto_task_editor_dialog_parent_class)->finalize (object);
 }
 
@@ -334,9 +334,9 @@ koto_task_editor_dialog_set_task (KotoTaskEditorDialog *dialog, KotoTask *task)
   if (priv->old_comp)
     icalcomponent_free (priv->old_comp);
   priv->old_comp = icalcomponent_new_clone (task->comp);
-  
+
   g_object_set (priv->editor, "task", priv->task, NULL);
-  
+
   koto_field_editor_set (priv->desc, task);
   if (icalcomponent_get_description (priv->task->comp)) {
     gtk_label_set_markup (GTK_LABEL (priv->desc_label), _("<b>_Notes</b>"));
@@ -344,7 +344,7 @@ koto_task_editor_dialog_set_task (KotoTaskEditorDialog *dialog, KotoTask *task)
     gtk_label_set_text (GTK_LABEL (priv->desc_label), _("_Notes"));
   }
   gtk_label_set_use_underline (GTK_LABEL (priv->desc_label), TRUE);
-  
+
   title = g_strdup_printf (_("%s - Tasks"), icalcomponent_get_summary (task->comp));
   gtk_window_set_title (GTK_WINDOW (dialog), title);
   g_free (title);
diff --git a/libkoto/koto-task-editor.c b/libkoto/koto-task-editor.c
index 9d2d6e1..9167fbf 100644
--- a/libkoto/koto-task-editor.c
+++ b/libkoto/koto-task-editor.c
@@ -142,7 +142,7 @@ static void
 koto_task_editor_dispose (GObject *object)
 {
   KotoTaskEditorPrivate *priv = GET_PRIVATE (object);
-  
+
   if (priv->task) {
     koto_task_unref (priv->task);
     priv->task = NULL;
@@ -223,11 +223,11 @@ koto_task_editor_add_field (KotoTaskEditor *editor, icalproperty_kind kind)
   g_return_if_fail (kind);
 
   priv = GET_PRIVATE (editor);
- 
+
   /* TODO: sort fields and use bsearch */
   for (i = 0; i < G_N_ELEMENTS (fields); i++) {
     GtkWidget *label, *widget;
-    
+
     if (fields[i].type != kind)
       continue;
 
diff --git a/libkoto/koto-task-store.c b/libkoto/koto-task-store.c
index e9706a9..88f0361 100644
--- a/libkoto/koto-task-store.c
+++ b/libkoto/koto-task-store.c
@@ -78,14 +78,14 @@ sorter_cb (GtkTreeModel *model, GtkTreeIter *a, GtkTreeIter *b, gpointer user_da
     res = done_a < done_b ? -1 : 1;
     goto done;
   }
-  
+
   if (weight_a != weight_b) {
     res = weight_a < weight_b ? -1 : 1;
     goto done;
   }
-  
+
   res = g_utf8_collate (summary_a ?: "", summary_b ?: "");
-  
+
  done:
   g_free (summary_a);
   g_free (summary_b);
@@ -144,7 +144,7 @@ update_row (KotoTaskStore *store, icalcomponent *ical, gboolean insert, GtkTreeI
   g_assert (KOTO_IS_TASK_STORE (store));
   g_assert (ical);
   g_assert (iter);
-  
+
   status = icalcomponent_get_status (ical);
   due_time = icalcomponent_get_due (ical);
   if (!icaltime_is_null_time (due_time)) {
@@ -153,7 +153,7 @@ update_row (KotoTaskStore *store, icalcomponent *ical, gboolean insert, GtkTreeI
                        icaltime_as_timet_with_zone (due_time,
                                                     icaltimezone_get_utc_timezone ()));
   }
-  
+
   task = koto_task_new (icalcomponent_new_clone (ical));
 
   if (insert) {
@@ -177,7 +177,7 @@ update_row (KotoTaskStore *store, icalcomponent *ical, gboolean insert, GtkTreeI
                         COLUMN_URL, ical_util_get_url (ical),
                         -1);
   }
-  
+
   if (due_date)
     g_date_free (due_date);
   koto_task_unref (task);
@@ -202,7 +202,7 @@ on_objects_added (ECalView *view, GList *objects, KotoTaskStore *store)
     g_hash_table_insert (priv->uid_hash,
                          g_strdup (icalcomponent_get_uid (ical)),
                          gtk_tree_iter_copy (&iter));
-    
+
   }
 }
 
@@ -314,7 +314,7 @@ koto_task_store_finalize (GObject *object)
   KotoTaskStorePrivate *priv = GET_PRIVATE (object);
 
   g_hash_table_destroy (priv->uid_hash);
-  
+
   G_OBJECT_CLASS (koto_task_store_parent_class)->finalize (object);
 }
 
@@ -402,13 +402,13 @@ koto_task_store_set_view (KotoTaskStore *store, ECalView *view)
     if (priv->sig_done)
       g_signal_handler_disconnect (priv->view, priv->sig_done);
     priv->sig_added = priv->sig_modified = priv->sig_removed = priv->sig_done = 0;
-    
+
     g_object_unref (priv->view);
     g_object_unref (priv->cal);
     priv->view = NULL;
     priv->cal = NULL;
   }
-  
+
   if (view) {
     priv->view = g_object_ref (view);
     priv->cal = g_object_get_data (G_OBJECT (view), "koto-ecal");
@@ -432,13 +432,13 @@ koto_task_store_set_done (KotoTaskStore *store, GtkTreeIter *iter, gboolean done
   g_return_if_fail (iter);
 
   priv = GET_PRIVATE (store);
-  
+
   gtk_tree_model_get (GTK_TREE_MODEL (store), iter, COLUMN_TASK, &task, -1);
-  
+
   old_comp = icalcomponent_new_clone (task->comp);
-  
+
   icalcomponent_set_status (task->comp, done ? ICAL_STATUS_COMPLETED : ICAL_STATUS_NONE);
-  
+
   gtk_list_store_set (GTK_LIST_STORE (store), iter, COLUMN_DONE, done, -1);
 
   koto_action_modify_task (priv->cal, task, old_comp, undo);
diff --git a/libkoto/koto-task-view.c b/libkoto/koto-task-view.c
index e93b7eb..1dd7ef9 100644
--- a/libkoto/koto-task-view.c
+++ b/libkoto/koto-task-view.c
@@ -34,7 +34,7 @@ typedef struct {
   KotoTaskStore *store;
   KotoGroupFilterModel *filter;
   KotoUndoManager *undo_manager;
-  
+
   GdkColor colour_done, colour_low, colour_normal, colour_high;
 } KotoTaskViewPrivate;
 
@@ -73,7 +73,7 @@ on_done_toggled (GtkCellRendererToggle *cell_renderer, gchar *path,  KotoTaskVie
     }
     /* At this point we know the iterator is valid on the base model */
     gtk_tree_model_get (GTK_TREE_MODEL (priv->store), &iter, COLUMN_DONE, &done, -1);
-    
+
     if (priv->undo_manager)
       undo = koto_undo_manager_context_begin (priv->undo_manager, _("Complete Task"));
     koto_task_store_set_done (priv->store, &iter, !done, undo);
@@ -101,9 +101,9 @@ summary_func (GtkTreeViewColumn *tree_column,
   GdkColor *colour;
 
   g_assert (treeview);
-  
+
   priv = GET_PRIVATE (treeview);
-  
+
   gtk_tree_model_get (model, iter,
                       COLUMN_WEIGHT, &weight,
                       COLUMN_DONE, &done,
@@ -113,9 +113,9 @@ summary_func (GtkTreeViewColumn *tree_column,
 
   if (due) {
     char *temp, *date;
-    
+
     date = ical_util_get_human_due_date (due);
-    
+
     temp = g_strdup_printf ("%s (%s)", summary, date);
 
     g_free (summary);
@@ -142,7 +142,7 @@ summary_func (GtkTreeViewColumn *tree_column,
       ? PANGO_WEIGHT_BOLD
       : PANGO_WEIGHT_NORMAL;
   }
-  
+
   g_object_set (cell,
                 /* The text to display */
                 "text", summary,
@@ -153,13 +153,13 @@ summary_func (GtkTreeViewColumn *tree_column,
                 /* The colour from the style */
                 "foreground-gdk",
                 colour,
-                
+
                 /* If important, bolden */
                 "weight",
                 font_weight,
 
                 NULL);
-  
+
   g_free (summary);
 }
 
@@ -203,16 +203,16 @@ search_equal_func (GtkTreeModel *model, gint column,
 {
   char *summary = NULL;
   gboolean found;
-  
+
   gtk_tree_model_get (model, iter, COLUMN_SUMMARY, &summary, -1);
 
   if (!summary)
     return FALSE;
 
   found = e_util_utf8_strstrcasedecomp (summary, key) != NULL;
-  
+
   g_free (summary);
-  
+
   /* GtkTreeView is insane */
   return ! found;
 }
@@ -226,14 +226,14 @@ on_url_activated (KotoCellRendererPixbuf *cell, const char *path, GtkTreeView *v
   GtkTreeModel *model;
   GtkTreeIter iter;
   char *url = NULL;
-  
+
   model = gtk_tree_view_get_model (view);
 
   if (!gtk_tree_model_get_iter_from_string (model, &iter, path))
     return;
 
   gtk_tree_model_get (model, &iter, COLUMN_URL, &url, -1);
-  
+
   if (url) {
     koto_platform_open_url (url);
     g_free (url);
@@ -249,14 +249,14 @@ on_note_activated (KotoCellRendererPixbuf *cell, const char *path, GtkTreeView *
   GtkTreeModel *model;
   GtkTreeIter iter;
   KotoTask *task = NULL;
-  
+
   model = gtk_tree_view_get_model (view);
 
   if (!gtk_tree_model_get_iter_from_string (model, &iter, path))
     return;
 
   gtk_tree_model_get (model, &iter, COLUMN_TASK, &task, -1);
-  
+
   if (task) {
     koto_platform_edit_task (task);
     koto_task_unref (task);
@@ -320,7 +320,7 @@ static void
 koto_task_view_style_set (GtkWidget *widget, GtkStyle *previous)
 {
   KotoTaskViewPrivate *priv;
-  
+
   g_assert (KOTO_IS_TASK_VIEW (widget));
 
   priv = GET_PRIVATE (widget);
@@ -418,7 +418,7 @@ koto_task_view_dispose (GObject *object)
     g_object_unref (priv->undo_manager);
     priv->undo_manager = NULL;
   }
-  
+
   if (G_OBJECT_CLASS (koto_task_view_parent_class)->dispose)
     G_OBJECT_CLASS (koto_task_view_parent_class)->dispose (object);
 }
@@ -482,7 +482,7 @@ koto_task_view_init (KotoTaskView *self)
   gtk_tree_view_set_enable_search (treeview, TRUE);
   gtk_tree_view_set_search_column (treeview, COLUMN_SUMMARY);
   gtk_tree_view_set_search_equal_func (treeview, search_equal_func, NULL, NULL);
-  
+
   /* Done column */
   renderer = gtk_cell_renderer_toggle_new ();
   g_signal_connect (renderer, "toggled", G_CALLBACK (on_done_toggled), self);
@@ -494,7 +494,7 @@ koto_task_view_init (KotoTaskView *self)
   /* Summary column */
   renderer = gtk_cell_renderer_text_new ();
   column = gtk_tree_view_column_new_with_attributes (_("Summary"),
-                                                     renderer, 
+                                                     renderer,
                                                      NULL);
   g_object_set (renderer,
                 "ellipsize", PANGO_ELLIPSIZE_END,
@@ -516,7 +516,7 @@ koto_task_view_init (KotoTaskView *self)
   gtk_tree_view_column_pack_end (column, renderer, FALSE);
   gtk_tree_view_column_set_cell_data_func (column, renderer,
                                            note_icon_func, treeview, NULL);
-  
+
   gtk_tree_view_append_column (treeview, column);
 
 #if HAVE_DECL_GTK_WIDGET_SET_HAS_TOOLTIP
@@ -556,14 +556,14 @@ koto_task_view_get_selected_task (KotoTaskView *view)
   GtkTreeModel *model;
   GtkTreeIter iter;
   KotoTask *task = NULL;
-  
+
   g_return_val_if_fail (KOTO_IS_TASK_VIEW (view), NULL);
 
   selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (view));
   if (!gtk_tree_selection_get_selected (selection, &model, &iter)) {
     return NULL;
   }
-  
+
   gtk_tree_model_get (model, &iter, COLUMN_TASK, &task, -1);
 
   return task;
@@ -573,12 +573,12 @@ gboolean
 koto_task_view_get_selected_iter (KotoTaskView *view, GtkTreeIter *iter)
 {
   GtkTreeSelection *selection;
-  
+
   g_return_val_if_fail (KOTO_IS_TASK_VIEW (view), FALSE);
   g_return_val_if_fail (iter, FALSE);
 
   selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (view));
-  
+
   return gtk_tree_selection_get_selected (selection, NULL, iter);
 }
-  
+
diff --git a/libkoto/koto-task.c b/libkoto/koto-task.c
index 7d07099..01acc91 100644
--- a/libkoto/koto-task.c
+++ b/libkoto/koto-task.c
@@ -39,16 +39,16 @@ koto_task_new (icalcomponent *comp)
   const char *s;
 
   g_return_val_if_fail (comp, NULL);
-  
+
   task = g_slice_new0 (KotoTask);
   task->ref_count = 1;
   task->comp = comp;
-  
+
   /* Set the caches */
   s = ical_util_get_categories (comp);
   if (s)
     task->categories = g_strsplit (s, ",", 0);
-  
+
   return task;
 }
 
diff --git a/libkoto/koto-undo-action.c b/libkoto/koto-undo-action.c
index 420afa1..8513992 100644
--- a/libkoto/koto-undo-action.c
+++ b/libkoto/koto-undo-action.c
@@ -59,12 +59,12 @@ on_manager_changed_undo (KotoUndoManager *manager, gpointer user_data)
   if (koto_undo_manager_can_undo (manager)) {
     label = g_strdup_printf (_("Undo %s"),
                              koto_undo_manager_get_undo_name (manager));
-    
+
     g_object_set (action,
                   "sensitive", TRUE,
                   "label", label,
                   NULL);
-    
+
     g_free (label);
   } else {
     g_object_set (action,
@@ -83,12 +83,12 @@ on_manager_changed_redo (KotoUndoManager *manager, gpointer user_data)
   if (koto_undo_manager_can_redo (manager)) {
     label = g_strdup_printf (_("Redo %s"),
                              koto_undo_manager_get_redo_name (manager));
-    
+
     g_object_set (action,
                   "sensitive", TRUE,
                   "label", label,
                   NULL);
-    
+
     g_free (label);
   } else {
     g_object_set (action,
@@ -201,7 +201,7 @@ koto_undo_action_class_init (KotoUndoActionClass *klass)
 
   action_class->connect_proxy = koto_undo_action_connect_proxy;
   action_class->activate = koto_undo_action_activate;
-  
+
   g_object_class_install_property (gobject_class, PROP_UNDO,
                                    g_param_spec_boolean ("undo", "undo", "TRUE for undo, FALSE for redo",
                                                          TRUE,
diff --git a/libkoto/koto-undo-manager.c b/libkoto/koto-undo-manager.c
index dd58bb7..4943048 100644
--- a/libkoto/koto-undo-manager.c
+++ b/libkoto/koto-undo-manager.c
@@ -180,7 +180,7 @@ koto_undo_manager_can_redo (KotoUndoManager *manager)
 	return (manager->priv->redo != NULL);
 }
 
-/* FIXME: Should these return copies of the names 
+/* FIXME: Should these return copies of the names
    so that they're threadsafe? */
 const char *
 koto_undo_manager_get_undo_name (KotoUndoManager *manager)
diff --git a/libkoto/koto-undo-manager.h b/libkoto/koto-undo-manager.h
index 8e2e3e5..981646c 100644
--- a/libkoto/koto-undo-manager.h
+++ b/libkoto/koto-undo-manager.h
@@ -37,7 +37,7 @@ typedef struct _KotoUndoHistory {
 	char *name;
 
 	gboolean current; /* Is this the position we are at in the history */
-	KotoUndoContext *ctxt; 
+	KotoUndoContext *ctxt;
 } KotoUndoHistory;
 
 typedef struct _KotoUndoManager KotoUndoManager;
diff --git a/libkoto/koto-undoable.h b/libkoto/koto-undoable.h
index 3d66a82..f42b424 100644
--- a/libkoto/koto-undoable.h
+++ b/libkoto/koto-undoable.h
@@ -31,8 +31,8 @@ typedef void (*KotoUndoableFunc) (gpointer closure);
 typedef struct _KotoUndoable {
 	/* The functions that will undo/redo the action if they are passed
 	 * the data packet that is stored in closure */
-	KotoUndoableFunc undo; 
-	KotoUndoableFunc redo; 
+	KotoUndoableFunc undo;
+	KotoUndoableFunc redo;
 	KotoUndoableFunc destroy;
 
 	gpointer closure; /* This is enough data for the undo/redo functions
diff --git a/libkoto/koto-utils.c b/libkoto/koto-utils.c
index 0e44472..8d20304 100644
--- a/libkoto/koto-utils.c
+++ b/libkoto/koto-utils.c
@@ -54,7 +54,7 @@ count_pending (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpoint
     return FALSE;
 
   koto_task_unref (task);
-  
+
   if (!done)
     (*count)++;
 
@@ -131,16 +131,16 @@ void
 koto_sync_window_title (GtkWindow *window, GtkTreeModel *model, const char *title)
 {
   WindowData *data;
-  
+
   g_return_if_fail (GTK_WINDOW (window));
   g_return_if_fail (GTK_TREE_MODEL (model));
   g_return_if_fail (title);
-  
+
   data = g_slice_new (WindowData);
   data->window = window;
   data->model = model;
   data->title = g_strdup (title);
-  
+
   g_object_weak_ref (G_OBJECT (model), on_weak_notify, data);
 
   g_object_connect (model,
diff --git a/libkoto/test-ical-util.c b/libkoto/test-ical-util.c
index 3b658a1..468340a 100644
--- a/libkoto/test-ical-util.c
+++ b/libkoto/test-ical-util.c
@@ -15,9 +15,9 @@ main (int argc, char **argv)
 
   /* Set the locale to C so we can do string comparisons easily */
   setlocale(LC_ALL, "C");
-  
+
   g_date_clear (&date, 1);
-  
+
   g_date_set_dmy (&date, 1, G_DATE_MAY, 2001);
   s = ical_util_get_human_due_date (&date);
   g_assert (strcmp (s, "due 05/01/01") == 0);
diff --git a/libkoto/test-koto-group-store.c b/libkoto/test-koto-group-store.c
index af73132..4d68cb0 100644
--- a/libkoto/test-koto-group-store.c
+++ b/libkoto/test-koto-group-store.c
@@ -17,11 +17,11 @@ int main (int argc, char **argv)
   g_assert (koto_group_store_get_iter_for_group (store, "Foo", &iter));
   g_assert (koto_group_store_get_iter_for_group (store, "Bar", &iter));
   g_assert (koto_group_store_get_iter_for_group (store, "Flob", &iter) == FALSE);
-  
+
   g_assert (koto_group_store_match_group (store, "Flob") == NULL);
   g_assert (strcmp (koto_group_store_match_group (store, "Foo"), "Foo") == 0);
   g_assert (strcmp (koto_group_store_match_group (store, "foo"), "Foo") == 0);
   g_assert (strcmp (koto_group_store_match_group (store, "baR"), "Bar") == 0);
-  
+
   return 0;
 }
diff --git a/src/gtk/window-util.c b/src/gtk/window-util.c
index fbdaacb..707d7e7 100644
--- a/src/gtk/window-util.c
+++ b/src/gtk/window-util.c
@@ -66,7 +66,7 @@ get_key_file (void)
   GKeyFile *keys;
 
   filename = get_filename ();
-  
+
   keys = g_key_file_new ();
 
   if (g_file_test (filename, G_FILE_TEST_EXISTS)) {
@@ -75,7 +75,7 @@ get_key_file (void)
       g_error_free (error);
     }
   }
-  
+
   return keys;
 }
 
@@ -99,7 +99,7 @@ on_unmap (GtkWidget *widget, gpointer user_data)
   gtk_window_get_size (GTK_WINDOW (widget), &w, &h);
   g_key_file_set_integer (keys, group, WINDOW_WIDTH, w);
   g_key_file_set_integer (keys, group, WINDOW_HEIGHT, h);
-  
+
   filename = get_filename ();
   dirname = g_path_get_dirname (filename);
   g_mkdir_with_parents (dirname, 0755);
@@ -128,10 +128,10 @@ window_bind_state (GtkWindow *window, const char *name)
   g_signal_connect (window, "unmap", G_CALLBACK (on_unmap), NULL);
 
   keys = get_key_file ();
-  
+
   group = g_strconcat ("Window-", name, NULL);
   g_object_set_data_full (G_OBJECT (window), GROUP_PROP, group, g_free);
-  
+
   got_pos = get (keys, group, WINDOW_X, &x);
   if (got_pos)
     got_pos &= get (keys, group, WINDOW_Y, &y);
@@ -139,11 +139,11 @@ window_bind_state (GtkWindow *window, const char *name)
   if (got_pos) {
     gtk_window_move (window, x, y);
   }
-  
+
   got_size = get (keys, group, WINDOW_WIDTH, &w);
-  if (got_size) 
+  if (got_size)
     got_size &= get (keys, group, WINDOW_HEIGHT, &h);
-  
+
   if (got_size) {
     screen_w = gdk_screen_get_width (gtk_window_get_screen (window));
     screen_h = gdk_screen_get_width (gtk_window_get_screen (window));
@@ -156,6 +156,6 @@ window_bind_state (GtkWindow *window, const char *name)
 
     gtk_window_set_default_size (window, w, h);
   }
-  
+
   g_key_file_free (keys);
 }
diff --git a/src/hildon/hildon-tasks.c b/src/hildon/hildon-tasks.c
index a71a8f7..094df0f 100644
--- a/src/hildon/hildon-tasks.c
+++ b/src/hildon/hildon-tasks.c
@@ -66,18 +66,18 @@ select_uid (char *uid)
   GtkTreePath *path;
 
   g_assert (uid);
-  
+
   if (koto_task_store_get_iter_for_uid (KOTO_TASK_STORE (task_store), uid, &iter)) {
     selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
-    
+
     gtk_tree_model_filter_convert_child_iter_to_iter (GTK_TREE_MODEL_FILTER (filter),
                                                       &real_iter, &iter);
-    
+
     path = gtk_tree_model_get_path (filter, &real_iter);
     gtk_tree_view_set_cursor (GTK_TREE_VIEW (treeview), path, NULL, FALSE);
     gtk_tree_path_free (path);
   }
-  
+
   g_free (uid);
   return FALSE;
 }
@@ -121,7 +121,7 @@ create_component (const char *text, KotoGroup *default_group)
     text = g_utf8_next_char (text);
     skip_whitespace (&text);
   }
-  
+
   /* If the task starts with @foo, put it in the "foo" group. */
   if (text[0] == '@') {
     char *end, *guess;
@@ -136,7 +136,7 @@ create_component (const char *text, KotoGroup *default_group)
       /* Try and find a matching group */
       group = koto_group_store_match_group
         (KOTO_GROUP_STORE (group_selector_store), guess);
-      
+
       if (group)
         g_free (guess);
       else
@@ -154,7 +154,7 @@ create_component (const char *text, KotoGroup *default_group)
       group = g_strdup (koto_group_get_name (default_group));
     }
   }
-  
+
   if (group) {
     icalcomponent_add_property (comp, icalproperty_new_categories (group));
     g_free (group);
@@ -173,7 +173,7 @@ on_new_clicked (GtkButton *button)
   icalcomponent *comp;
 
   text = gtk_entry_get_text (GTK_ENTRY (new_entry));
-  
+
   if (!text || text[0] == '\0') {
     g_warning ("Got clicked with empty text");
     return;
@@ -201,7 +201,7 @@ on_new_clicked (GtkButton *button)
 }
 
 
-/* 
+/*
  * Used to enable/disable the new task button depending on the contents of the
  * entry.
  */
@@ -225,7 +225,7 @@ edit_task (KotoTask *task)
                 "groups", group_selector_store,
                 "task", task,
                 NULL);
-  
+
   gtk_dialog_run (GTK_DIALOG (dialog));
 
   gtk_widget_destroy (dialog);
@@ -235,7 +235,7 @@ void
 koto_platform_edit_task (KotoTask *task)
 {
   g_return_if_fail (task);
-  
+
   edit_task (task);
 }
 
@@ -283,7 +283,7 @@ on_edit_task_action (GtkAction *action, gpointer user_data)
     g_warning ("TODO: No task selected, EditTask should be disabled");
     return;
   }
-  
+
   edit_task (task);
 
   koto_task_unref (task);
@@ -300,7 +300,7 @@ on_complete_task_action (GtkAction *action, gpointer user_data)
   }
 
   gtk_tree_model_filter_convert_iter_to_child_iter (GTK_TREE_MODEL_FILTER (filter), &real_iter, &iter);
-  
+
   koto_task_store_set_done (KOTO_TASK_STORE (task_store), &real_iter, TRUE, NULL);
 }
 
@@ -319,7 +319,7 @@ on_delete_task_action (GtkAction *action, gpointer user_data)
     g_warning ("TODO: No task selected, DeleteTask should be disabled");
     return;
   }
-  
+
   dialog = gtk_message_dialog_new (GTK_WINDOW (window),
                                    GTK_DIALOG_DESTROY_WITH_PARENT,
                                    GTK_MESSAGE_QUESTION, GTK_BUTTONS_NONE,
@@ -332,14 +332,14 @@ on_delete_task_action (GtkAction *action, gpointer user_data)
                           GTK_STOCK_DELETE, GTK_RESPONSE_ACCEPT,
                           NULL);
   gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_ACCEPT);
-  
+
   if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) {
     if (!e_cal_remove_object (cal, icalcomponent_get_uid (task->comp), &error)) {
       g_warning ("Cannot remove object: %s", error->message);
       g_error_free (error);
     }
   }
-  
+
   gtk_widget_destroy (dialog);
 
   koto_task_unref (task);
@@ -360,7 +360,7 @@ purge_foreach (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpoint
                       COLUMN_DONE, &done,
                       COLUMN_TASK, &task,
                       -1);
-  
+
   if (done) {
     if (!e_cal_remove_object (cal, icalcomponent_get_uid (task->comp), &error)) {
       g_warning ("Cannot remove object: %s", error->message);
@@ -370,7 +370,7 @@ purge_foreach (GtkTreeModel *model, GtkTreePath *path, GtkTreeIter *iter, gpoint
   }
 
   koto_task_unref (task);
-  
+
   return FALSE;
 }
 
@@ -393,11 +393,11 @@ on_purge_action (GtkAction *action, gpointer user_data)
                           GTK_STOCK_DELETE, GTK_RESPONSE_ACCEPT,
                           NULL);
   gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_ACCEPT);
-  
+
   if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) {
     gtk_tree_model_foreach (task_store, purge_foreach, NULL);
   }
-  
+
   gtk_widget_destroy (dialog);
 }
 
@@ -449,7 +449,7 @@ on_about_action (GtkAction *action, gpointer user_data)
 }
 
 /* TODO: split into global actions and actions that require a task to be selected */
-static const GtkActionEntry actions[] = 
+static const GtkActionEntry actions[] =
 {
   /* Action name, stock ID, label, accelerator, tooltip, callback */
   { "app-menu", NULL, "AppMenu" }, /* dummy */
@@ -486,7 +486,7 @@ main (int argc, char **argv)
   cal = e_cal_new_system_tasks ();
   if (!cal)
     g_error ("Cannot get system tasks");
-  
+
   if (!e_cal_open (cal, FALSE, &error))
     g_error("Cannot open calendar: %s", error->message);
 
@@ -497,7 +497,7 @@ main (int argc, char **argv)
 
   /* Create the data stores */
   task_store = koto_task_store_new (cal_view);
-  
+
   group_filter_store = koto_group_store_new (cal_view);
   koto_group_store_add_group (KOTO_GROUP_STORE (group_filter_store), koto_all_group_new ());
   koto_group_store_add_group (KOTO_GROUP_STORE (group_filter_store), koto_meta_group_new (KOTO_META_GROUP_SEPERATOR, -99));
@@ -509,13 +509,13 @@ main (int argc, char **argv)
   koto_group_store_add_group (KOTO_GROUP_STORE (group_selector_store), koto_meta_group_new (KOTO_META_GROUP_SEPERATOR, -99));
   koto_group_store_add_group (KOTO_GROUP_STORE (group_selector_store), koto_meta_group_new (KOTO_META_GROUP_SEPERATOR, 99));
   koto_group_store_add_group (KOTO_GROUP_STORE (group_selector_store), koto_meta_group_new (KOTO_META_GROUP_NEW, 100));
-  
+
   /* Create the UI */
 
   program = hildon_program_get_instance ();
   /* We generally can hibernate. TODO this should be set to false when editing a task */
   hildon_program_set_can_hibernate (program, TRUE);
-  
+
   window = hildon_window_new ();
   hildon_program_add_window (program, HILDON_WINDOW (window));
 
@@ -523,7 +523,7 @@ main (int argc, char **argv)
   g_signal_connect (window, "destroy", gtk_main_quit, NULL);
 
   top_box = gtk_vbox_new (FALSE, 0);
-  gtk_container_add (GTK_CONTAINER (window), top_box); 
+  gtk_container_add (GTK_CONTAINER (window), top_box);
 
   action_group = gtk_action_group_new ("Actions");
   gtk_action_group_set_translation_domain (action_group, GETTEXT_PACKAGE);
@@ -609,7 +609,7 @@ main (int argc, char **argv)
                 "gtk-menu-images", FALSE,
                 NULL);
 
-  gtk_widget_show_all (window);  
+  gtk_widget_show_all (window);
   gtk_main ();
 
   return 0;
diff --git a/src/omoko/openmoko-tasks.c b/src/omoko/openmoko-tasks.c
index 1735591..ac66454 100644
--- a/src/omoko/openmoko-tasks.c
+++ b/src/omoko/openmoko-tasks.c
@@ -58,7 +58,7 @@ typedef struct _TasksApp
   ECal *cal;
 } TasksApp;
 
-enum 
+enum
 {
   PAGE_MAIN = 0,
   PAGE_EDIT
@@ -102,7 +102,7 @@ tv_selection_changed (GtkTreeSelection *selection, gpointer userdata)
 }
 
 static void
-notebook_switch_page_cb (GtkNotebook *notebook, GtkNotebookPage *page, 
+notebook_switch_page_cb (GtkNotebook *notebook, GtkNotebookPage *page,
     guint page_no, gpointer userdata)
 {
   TasksApp *app = (TasksApp *)userdata;
@@ -225,7 +225,7 @@ delete_clicked_cb (GtkToolButton *button, gpointer userdata)
     gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_ACCEPT);
 
     if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT) {
-      if (!e_cal_remove_object (app->cal, icalcomponent_get_uid (task->comp), 
+      if (!e_cal_remove_object (app->cal, icalcomponent_get_uid (task->comp),
             &error)) {
         g_warning ("Cannot remove object: %s", error->message);
         g_clear_error (&error);
@@ -247,7 +247,7 @@ main (int argc, char **argv)
   ECalView *cal_view;
   GError *error = NULL;
   GtkWidget *alignment;
-  
+
   gtk_init (&argc, &argv);
 
   app = g_new0 (TasksApp, 1);
@@ -265,28 +265,28 @@ main (int argc, char **argv)
     g_error("Cannot get calendar view: %s", error->message);
 
   /* TODO: nasty, should pass cal to the stores or add e_cal_view_get_cal() */
-  g_object_set_data_full (G_OBJECT (cal_view), "koto-ecal", g_object_ref (app->cal), 
+  g_object_set_data_full (G_OBJECT (cal_view), "koto-ecal", g_object_ref (app->cal),
       g_object_unref);
 
   /* Create the data stores */
   app->task_store = koto_task_store_new (cal_view);
 
   app->group_filter_store = koto_group_store_new (cal_view);
-  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_filter_store), 
+  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_filter_store),
       koto_all_group_new ());
-  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_filter_store), 
+  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_filter_store),
       koto_meta_group_new (KOTO_META_GROUP_SEPERATOR, -99));
 
   app->group_store = koto_group_store_new (cal_view);
-  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_store), 
+  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_store),
       koto_meta_group_new (KOTO_META_GROUP_SEPERATOR, 99));
-  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_store), 
+  koto_group_store_add_group (KOTO_GROUP_STORE (app->group_store),
       koto_no_category_group_new ());
 
   app->group_filter = koto_group_model_filter_new (KOTO_TASK_STORE (app->task_store));
 
   /* tree view */
-  app->treeview = koto_task_view_new (KOTO_TASK_STORE (app->task_store), 
+  app->treeview = koto_task_view_new (KOTO_TASK_STORE (app->task_store),
       KOTO_GROUP_MODEL_FILTER (app->group_filter));
 
   /* selection */
@@ -308,7 +308,7 @@ main (int argc, char **argv)
   app->notebook = gtk_notebook_new ();
   gtk_container_add (GTK_CONTAINER (app->main_window), app->notebook);
   gtk_notebook_set_tab_pos (GTK_NOTEBOOK (app->notebook), GTK_POS_BOTTOM);
-  g_signal_connect (app->notebook, "switch-page", 
+  g_signal_connect (app->notebook, "switch-page",
       G_CALLBACK (notebook_switch_page_cb), app);
 
   /* navigation */



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]