/* Go to the first tab (Country separator) */
tab = g_utf8_strrchr (line, -1, '\t');
+ if (!tab)
+ return 0;
+
*country = g_utf8_find_next_char (tab, NULL);
/* Replace by end of string. We need to use strlen, because
}
static gchar *
-country_picker_print_func (HildonTouchSelector *selector)
+country_picker_print_func (HildonTouchSelector *selector, gpointer userdata)
{
GtkTreeModel *model;
GtkTreeIter iter;
model = hildon_touch_selector_get_model (selector, 0);
if (hildon_touch_selector_get_selected (selector, 0, &iter)) {
gint column;
+ GtkWidget *entry;
+ const gchar *entry_text;
column = hildon_touch_selector_entry_get_text_column (HILDON_TOUCH_SELECTOR_ENTRY (selector));
gtk_tree_model_get (model, &iter, column, &text, -1);
+
+ entry = GTK_WIDGET (hildon_touch_selector_entry_get_entry (HILDON_TOUCH_SELECTOR_ENTRY (selector)));
+ entry_text = hildon_entry_get_text (HILDON_ENTRY (entry));
+ if (entry_text != NULL && text != NULL && strcmp (entry_text, text)) {
+ hildon_entry_set_text (HILDON_ENTRY (entry), text);
+ }
}
return text;
}
g_object_set (G_OBJECT (renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL);
selector = hildon_touch_selector_entry_new ();
- hildon_touch_selector_set_print_func (HILDON_TOUCH_SELECTOR (selector), country_picker_print_func);
+ hildon_touch_selector_set_print_func (HILDON_TOUCH_SELECTOR (selector), (HildonTouchSelectorPrintFunc) country_picker_print_func);
column = hildon_touch_selector_append_column (HILDON_TOUCH_SELECTOR (selector), GTK_TREE_MODEL (model),
renderer, "text", MODEL_COL_NAME, NULL);
g_object_set (G_OBJECT (column), "text-column", MODEL_COL_NAME, NULL);