X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmaemo%2Fmodest-account-view-window.c;h=0307e4e70e96690414d095f368ac3bd1273d137c;hp=eba9ad35080ba89892725dd8bb81c2ea053e27ea;hb=6ebf456ad9d34d07c36667fa1e05118076d5dc38;hpb=ba09155280406da286e8384ae7fff91a37fe3db0 diff --git a/src/maemo/modest-account-view-window.c b/src/maemo/modest-account-view-window.c index eba9ad3..0307e4e 100644 --- a/src/maemo/modest-account-view-window.c +++ b/src/maemo/modest-account-view-window.c @@ -167,6 +167,10 @@ on_delete_button_clicked (GtkWidget *button, ModestAccountViewWindow *self) GtkWidget *dialog; gchar *txt; + /* Freeze updates, so we can do just one update afterwards, + * instead of responding to every conf key change: */ + modest_account_view_block_conf_updates (priv->account_view); + dialog = gtk_dialog_new_with_buttons (_("Confirmation dialog"), GTK_WINDOW (self), GTK_DIALOG_MODAL, @@ -213,6 +217,9 @@ on_delete_button_clicked (GtkWidget *button, ModestAccountViewWindow *self) gtk_widget_destroy (dialog); g_free (account_title); g_free (account_name); + + /* Update the view: */ + modest_account_view_unblock_conf_updates (priv->account_view); } } @@ -225,6 +232,10 @@ on_edit_button_clicked (GtkWidget *button, ModestAccountViewWindow *self) if (!account_name) return; + /* Freeze updates, so we can do just one update afterwards, + * instead of responding to every conf key change: */ + modest_account_view_block_conf_updates (priv->account_view); + /* Show the Account Settings window: */ ModestAccountSettingsDialog *dialog = modest_account_settings_dialog_new (); modest_account_settings_dialog_set_account_name (dialog, account_name); @@ -234,16 +245,28 @@ on_edit_button_clicked (GtkWidget *button, ModestAccountViewWindow *self) gtk_widget_destroy (GTK_WIDGET (dialog)); g_free (account_name); + + /* Update the view: */ + modest_account_view_unblock_conf_updates (priv->account_view); } static void on_new_button_clicked (GtkWidget *button, ModestAccountViewWindow *self) { + ModestAccountViewWindowPrivate *priv = MODEST_ACCOUNT_VIEW_WINDOW_GET_PRIVATE(self); + + /* Freeze updates, so we can do just one update afterwards, + * instead of responding to every conf key change: */ + modest_account_view_block_conf_updates (priv->account_view); + /* Show the easy-setup wizard: */ ModestEasysetupWizardDialog *wizard = modest_easysetup_wizard_dialog_new (); gtk_window_set_transient_for (GTK_WINDOW (wizard), GTK_WINDOW (self)); gtk_dialog_run (GTK_DIALOG (wizard)); gtk_widget_destroy (GTK_WIDGET (wizard)); + + /* Allow updates: */ + modest_account_view_unblock_conf_updates (priv->account_view); }