return TRUE;
}
- if (event && (event->state & (GDK_MOD1_MASK|GDK_CONTROL_MASK|GDK_SHIFT_MASK)) != 0)
+ if (event && (event->state & (GDK_MOD1_MASK|GDK_CONTROL_MASK)) != 0)
+ return FALSE;
+ if (event && (event->state & GDK_SHIFT_MASK) && event->keyval != GDK_space)
return FALSE;
g_signal_stop_emission_by_name(G_OBJECT(widget),
{
GSList *cur = msgview->mimeview->textview->uri_list;
GSList *newlist = NULL;
- GHashTable *uri_hashtable = g_hash_table_new(g_str_hash, g_str_equal);
+ GHashTable *uri_hashtable;
gchar *tmp;
+ uri_hashtable = g_hash_table_new_full(g_str_hash, g_str_equal,
+ (GDestroyNotify) g_free, NULL);
+
for (; cur; cur = cur->next) {
ClickableText *uri = (ClickableText *)cur->data;
if (uri->uri &&
newlist = g_slist_prepend(newlist, uri);
g_hash_table_insert(uri_hashtable, tmp,
GUINT_TO_POINTER(g_str_hash(tmp)));
- g_free(tmp);
}
}
newlist = g_slist_reverse(newlist);