GtkWidget *font_dialog;
GtkWidget *pannable;
+ guint correct_scroll_idle;
guint scroll_drag_timeout_id;
gdouble last_upper;
priv->sent = FALSE;
priv->scroll_drag_timeout_id = 0;
+ priv->correct_scroll_idle = 0;
priv->last_upper = 0.0;
priv->font_dialog = NULL;
return FALSE;
}
-static void
-correct_scroll_without_drag_check (ModestMsgEditWindow *w, gboolean only_if_focused)
+static gboolean
+correct_scroll_without_drag_check_idle (gpointer userdata)
{
+ ModestMsgEditWindow *w = (ModestMsgEditWindow *) userdata;
ModestMsgEditWindowPrivate *priv;
- GtkTextMark *insert;
GtkTextIter iter;
GdkRectangle rectangle;
gdouble new_value;
gint offset;
+ GtkTextMark *insert;
priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE(w);
-
- if (only_if_focused && !gtk_widget_is_focus (priv->msg_body))
- return;
-
+
insert = gtk_text_buffer_get_insert (priv->text_buffer);
gtk_text_buffer_get_iter_at_mark (priv->text_buffer, &iter, insert);
new_value = (offset + rectangle.y);
hildon_pannable_area_jump_to (HILDON_PANNABLE_AREA (priv->pannable), -1, new_value);
+
+ priv->correct_scroll_idle = 0;
+ return FALSE;
+}
+
+static void
+correct_scroll_without_drag_check (ModestMsgEditWindow *w, gboolean only_if_focused)
+{
+ ModestMsgEditWindowPrivate *priv;
+
+ priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE(w);
+
+ if (only_if_focused && !gtk_widget_is_focus (priv->msg_body))
+ return;
+
+ if (priv->correct_scroll_idle > 0) {
+ return;
+ }
+
+ priv->correct_scroll_idle = g_idle_add ((GSourceFunc) correct_scroll_without_drag_check_idle,
+ (gpointer) w);
}
static void
to_caption = modest_maemo_utils_create_captioned_with_size_type
(title_size_group, value_size_group,
- _("mail_va_to"), priv->to_field,
+ _("mail_va_to"), FALSE, priv->to_field,
HILDON_SIZE_AUTO_HEIGHT | HILDON_SIZE_AUTO_WIDTH);
priv->cc_caption = modest_maemo_utils_create_captioned_with_size_type
(title_size_group, value_size_group,
- _("mail_va_cc"), priv->cc_field,
+ _("mail_va_cc"), FALSE, priv->cc_field,
HILDON_SIZE_AUTO_HEIGHT | HILDON_SIZE_AUTO_WIDTH);
priv->bcc_caption = modest_maemo_utils_create_captioned_with_size_type
(title_size_group, value_size_group,
- _("mail_va_hotfix1"), priv->bcc_field,
+ _("mail_va_hotfix1"), FALSE, priv->bcc_field,
HILDON_SIZE_AUTO_HEIGHT | HILDON_SIZE_AUTO_WIDTH);
subject_caption = modest_maemo_utils_create_captioned (title_size_group, value_size_group,
- _("mail_va_subject"), subject_box);
+ _("mail_va_subject"), FALSE, subject_box);
priv->attachments_caption = modest_maemo_utils_create_captioned_with_size_type (title_size_group, value_size_group,
_("mail_va_attachment"),
+ FALSE,
priv->attachments_view,
HILDON_SIZE_AUTO_WIDTH |
HILDON_SIZE_AUTO_HEIGHT);
g_object_unref (priv->outbox_msg);
priv->outbox_msg = NULL;
}
+ if (priv->correct_scroll_idle > 0) {
+ g_source_remove (priv->correct_scroll_idle);
+ priv->correct_scroll_idle = 0;
+ }
if (priv->scroll_drag_timeout_id > 0) {
g_source_remove (priv->scroll_drag_timeout_id);
priv->scroll_drag_timeout_id = 0;
gtk_box_pack_start (GTK_BOX (priority_hbox), high_toggle, TRUE, TRUE, 0);
gtk_widget_show_all (priority_hbox);
captioned = modest_maemo_utils_create_captioned (title_sizegroup, value_sizegroup,
- _("mcen_me_editor_message_priority"), priority_hbox);
+ _("mcen_me_editor_message_priority"), FALSE, priority_hbox);
gtk_widget_show (captioned);
gtk_box_pack_start (GTK_BOX (vbox), captioned, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (format_hbox), text_toggle, TRUE, TRUE, 0);
gtk_widget_show_all (format_hbox);
captioned = modest_maemo_utils_create_captioned (title_sizegroup, value_sizegroup,
- _("mcen_me_editor_format"), format_hbox);
+ _("mcen_me_editor_format"), FALSE, format_hbox);
gtk_widget_show (captioned);
gtk_box_pack_start (GTK_BOX (vbox), captioned, FALSE, FALSE, 0);