X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fwidgets%2Fmodest-account-view.c;fp=src%2Fwidgets%2Fmodest-account-view.c;h=6542c0b23e9ccab14ee13025d00389acbee22753;hp=6cc9271ba96d7dd067b527dfbde28a41653950c6;hb=a9b21aff6a7af9154f265db57c793a6bbadbab3b;hpb=80b04cfd3d665ac19e5e4870f68a7a6e437f97a2 diff --git a/src/widgets/modest-account-view.c b/src/widgets/modest-account-view.c index 6cc9271..6542c0b 100644 --- a/src/widgets/modest-account-view.c +++ b/src/widgets/modest-account-view.c @@ -44,6 +44,7 @@ #include #ifdef MODEST_TOOLKIT_HILDON2 #include +#include #endif #ifdef MODEST_USE_LIBTIME #include @@ -901,3 +902,38 @@ modest_account_view_get_filter (ModestAccountView *self) return priv->filter; } + +#ifdef MODEST_TOOLKIT_HILDON2 +static gboolean +live_search_visible_func (GtkTreeModel *model, + GtkTreeIter *iter, + gchar *text, + gpointer data) +{ + gchar *display_name; + gboolean result; + gtk_tree_model_get(model, iter, + MODEST_ACCOUNT_VIEW_DISPLAY_NAME_COLUMN, + &display_name, -1); + + result = modest_text_utils_live_search_find (display_name, text); + + g_free (display_name); + + return result; +} + +GtkWidget * +modest_account_view_setup_live_search (ModestAccountView *self) +{ + GtkWidget *live_search; + live_search = hildon_live_search_new (); + hildon_live_search_set_filter (HILDON_LIVE_SEARCH (live_search), + GTK_TREE_MODEL_FILTER (modest_account_view_get_filter (MODEST_ACCOUNT_VIEW (self)))); + hildon_live_search_set_visible_func (HILDON_LIVE_SEARCH (live_search), live_search_visible_func, self, NULL); + hildon_live_search_set_text_column (HILDON_LIVE_SEARCH (live_search), + MODEST_ACCOUNT_VIEW_DISPLAY_NAME_COLUMN); + + return live_search; +} +#endif