From 7124e6f0bf2d4f6e575885b3662ca099836a99ee Mon Sep 17 00:00:00 2001 From: Dale Whittaker Date: Thu, 20 Aug 2009 23:39:38 +0200 Subject: [PATCH] Ensure that we have something to complete and set the actual model --- midori/midori-locationaction.c | 100 +++++++++++++++++---------------- 1 file changed, 51 insertions(+), 49 deletions(-) diff --git a/midori/midori-locationaction.c b/midori/midori-locationaction.c index 6c34e3af..f51146dc 100644 --- a/midori/midori-locationaction.c +++ b/midori/midori-locationaction.c @@ -630,7 +630,7 @@ midori_location_entry_render_text_cb (GtkCellLayout* layout, gtk_tree_model_get (model, iter, URI_COL, &uri, TITLE_COL, &title, -1); - desc_uri = desc_title = key = NULL; + desc = desc_uri = desc_title = key = NULL; if (G_LIKELY (data)) { entry = gtk_entry_completion_get_entry (GTK_ENTRY_COMPLETION (data)); @@ -638,63 +638,65 @@ midori_location_entry_render_text_cb (GtkCellLayout* layout, : g_ascii_strdown (gtk_entry_get_text (GTK_ENTRY (entry)), -1); len = 0; } - if (G_LIKELY (data && uri)) + if (key && *key) { - temp = g_ascii_strdown (uri, -1); - if ((start = strstr (temp, key))) + if (G_LIKELY (data && uri)) { - len = strlen (key); - skey = g_malloc0 (len + 1); - strncpy (skey, uri + (start - temp), len); - if (skey && *skey && (parts = g_strsplit (uri, skey, 2))) + temp = g_ascii_strdown (uri, -1); + if ((start = strstr (temp, key))) { - if (parts[0] && parts[1]) + len = strlen (key); + skey = g_malloc0 (len + 1); + strncpy (skey, uri + (start - temp), len); + if (skey && *skey && (parts = g_strsplit (uri, skey, 2))) { - desc_uri = g_markup_printf_escaped ("%s%s%s", - parts[0], skey, parts[1]); - g_strfreev (parts); + if (parts[0] && parts[1]) + { + desc_uri = g_markup_printf_escaped ("%s%s%s", + parts[0], skey, parts[1]); + g_strfreev (parts); + } } + g_free (skey); } - g_free (skey); + g_free (temp); } - g_free (temp); - } - if (uri && !desc_uri) - desc_uri = g_markup_escape_text (uri, -1); - if (G_LIKELY (data && title)) - { - temp = g_utf8_strdown (title, -1); - if ((start = strstr (temp, key))) + if (uri && !desc_uri) + desc_uri = g_markup_escape_text (uri, -1); + if (G_LIKELY (data && title)) { - if (!len) - len = strlen (key); - skey = g_malloc0 (len + 1); - strncpy (skey, title + (start - temp), len); - parts = g_strsplit (title, skey, 2); - if (parts && parts[0] && parts[1]) - desc_title = g_markup_printf_escaped ("%s%s%s", - parts[0], skey, parts[1]); - g_strfreev (parts); - g_free (skey); + temp = g_utf8_strdown (title, -1); + if ((start = strstr (temp, key))) + { + if (!len) + len = strlen (key); + skey = g_malloc0 (len + 1); + strncpy (skey, title + (start - temp), len); + parts = g_strsplit (title, skey, 2); + if (parts && parts[0] && parts[1]) + desc_title = g_markup_printf_escaped ("%s%s%s", + parts[0], skey, parts[1]); + g_strfreev (parts); + g_free (skey); + } + g_free (temp); } - g_free (temp); - } - if (title && !desc_title) - desc_title = g_markup_escape_text (title, -1); - - if (desc_title) - { - desc = g_strdup_printf ("%s\n%s", - desc_title, desc_uri); - g_free (desc_uri); - g_free (desc_title); - } - else - desc = desc_uri; + if (title && !desc_title) + desc_title = g_markup_escape_text (title, -1); - g_object_set (renderer, "markup", desc, - "ellipsize-set", TRUE, "ellipsize", PANGO_ELLIPSIZE_END, NULL); + if (desc_title) + { + desc = g_strdup_printf ("%s\n%s", + desc_title, desc_uri); + g_free (desc_uri); + g_free (desc_title); + } + else + desc = desc_uri; + g_object_set (renderer, "markup", desc, + "ellipsize-set", TRUE, "ellipsize", PANGO_ELLIPSIZE_END, NULL); + } g_free (uri); g_free (title); g_free (key); @@ -952,7 +954,7 @@ midori_location_action_completion_init (MidoriLocationAction* location_action, { gtk_entry_completion_set_model (completion, midori_location_action_is_frozen (location_action) - ? NULL : location_action->filter_model); + ? NULL : location_action->model); return; } @@ -961,7 +963,7 @@ midori_location_action_completion_init (MidoriLocationAction* location_action, g_object_unref (completion); gtk_entry_completion_set_model (completion, midori_location_action_is_frozen (location_action) - ? NULL : location_action->filter_model); + ? NULL : location_action->model); gtk_entry_completion_set_text_column (completion, URI_COL); #if GTK_CHECK_VERSION (2, 12, 0) -- 2.39.5