selection = gtk_text_buffer_get_text (buffer, &start, &end, FALSE);
}
} else if (GTK_IS_LABEL (focused)) {
- gint start, end;
- if (gtk_label_get_selection_bounds (GTK_LABEL (focused), &start, &end)) {
- const gchar *start_offset;
- const gchar *end_offset;
- start_offset = gtk_label_get_text (GTK_LABEL (focused));
- start_offset = g_utf8_offset_to_pointer (start_offset, start);
- end_offset = gtk_label_get_text (GTK_LABEL (focused));
- end_offset = g_utf8_offset_to_pointer (end_offset, end);
- selection = g_strndup (start_offset, end_offset - start_offset);
- g_message (selection);
- }
+ selection = modest_text_utils_label_get_selection (GTK_LABEL (focused));
} else {
gboolean do_check = TRUE;
GtkClipboard *clipboard;
/* free */
- g_object_unref (folder);
+ if (folder)
+ g_object_unref (folder);
return result;
}