static void text_buffer_apply_tag (GtkTextBuffer *buffer, GtkTextTag *tag,
GtkTextIter *start, GtkTextIter *end,
gpointer userdata);
-static void text_buffer_insert_text (GtkTextBuffer *buffer,
- GtkTextIter *location,
- gchar *text,
- gint len,
- ModestMsgEditWindow *window);
static void text_buffer_delete_images_by_id (GtkTextBuffer *buffer, const gchar * image_id);
static void subject_field_changed (GtkEditable *editable, ModestMsgEditWindow *window);
static void subject_field_insert_text (GtkEditable *editable,
G_CALLBACK (body_changed), obj);
g_signal_connect (G_OBJECT (priv->text_buffer), "modified-changed",
G_CALLBACK (body_changed), obj);
- g_signal_connect (G_OBJECT (priv->text_buffer), "insert-text",
- G_CALLBACK (text_buffer_insert_text), obj);
g_signal_connect (G_OBJECT (obj), "window-state-event",
G_CALLBACK (modest_msg_edit_window_window_state_event),
NULL);
g_string_free (result, TRUE);
}
-static void
-text_buffer_insert_text (GtkTextBuffer *buffer,
- GtkTextIter *iter,
- gchar *new_text,
- gint new_text_length,
- ModestMsgEditWindow *window)
-{
- GString *result = g_string_new ("");
- gchar *current;
- gint result_len = 0;
- gboolean changed = FALSE;
-
- for (current = new_text; current != NULL && *current != '\0'; current = g_utf8_next_char (current)) {
- gunichar c = g_utf8_get_char_validated (current, 8);
- /* Invalid unichar, stop */
- if (c == -1)
- break;
- /* a bullet */
- switch (c) {
- case 0x2022:
- result = g_string_append_c (result, ' ');
- changed = TRUE;
- break;
- default:
- result = g_string_append_unichar (result, c);
- }
- result_len++;
- }
-
- if (changed) {
- g_signal_stop_emission_by_name (G_OBJECT (buffer), "insert-text");
- g_signal_handlers_block_by_func(G_OBJECT(buffer), G_CALLBACK(text_buffer_insert_text), window);
- g_signal_emit_by_name (buffer, "insert-text",
- (gpointer) iter,
- (gpointer) result->str, (gpointer) result->len,
- (gpointer) window);
- g_signal_handlers_unblock_by_func(G_OBJECT(buffer), G_CALLBACK(text_buffer_insert_text), window);
- }
-
- g_string_free (result, TRUE);
-}
-
void
modest_msg_edit_window_toggle_find_toolbar (ModestMsgEditWindow *window,
gboolean show)