aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/empathy-account-assistant.c30
1 files changed, 27 insertions, 3 deletions
diff --git a/src/empathy-account-assistant.c b/src/empathy-account-assistant.c
index f341fa5d0..964b69154 100644
--- a/src/empathy-account-assistant.c
+++ b/src/empathy-account-assistant.c
@@ -228,6 +228,22 @@ account_assistant_present_error_page (EmpathyAccountAssistant *self,
}
static void
+update_create_page_buttons (EmpathyAccountAssistant *self)
+{
+ EmpathyAccountAssistantPriv *priv = GET_PRIV (self);
+ GtkAssistantPageType type;
+
+ if (priv->display_salut_page ||
+ priv->create_enter_resp == RESPONSE_CREATE_AGAIN)
+ type = GTK_ASSISTANT_PAGE_CONTENT;
+ else
+ type = GTK_ASSISTANT_PAGE_CONFIRM;
+
+ gtk_assistant_set_page_type (GTK_ASSISTANT (self), priv->enter_or_create_page,
+ type);
+}
+
+static void
account_assistant_reset_enter_create_page (EmpathyAccountAssistant *self)
{
EmpathyAccountAssistantPriv *priv = GET_PRIV (self);
@@ -236,9 +252,8 @@ account_assistant_reset_enter_create_page (EmpathyAccountAssistant *self)
page = account_assistant_build_enter_or_create_page (self);
idx = gtk_assistant_append_page (GTK_ASSISTANT (self), page);
- gtk_assistant_set_page_type (GTK_ASSISTANT (self), page,
- GTK_ASSISTANT_PAGE_INTRO);
priv->enter_or_create_page = page;
+ update_create_page_buttons (self);
gtk_assistant_set_current_page (GTK_ASSISTANT (self), idx);
@@ -526,10 +541,15 @@ account_assistant_page_forward_func (gint current_page,
priv->enter_create_forward = TRUE;
retval = current_page;
}
- else
+ else if (priv->display_salut_page)
{
retval = PAGE_SALUT;
}
+ else
+ {
+ /* Don't go forward */
+ retval = -1;
+ }
}
return retval;
@@ -734,6 +754,8 @@ account_assistant_radio_create_again_clicked_cb (GtkButton *button,
"response"));
priv->create_enter_resp = response;
+
+ update_create_page_buttons (self);
}
static GtkWidget *
@@ -1109,6 +1131,8 @@ account_mgr_prepare_cb (GObject *source_object,
gtk_assistant_set_page_type (GTK_ASSISTANT (self), priv->import_page,
GTK_ASSISTANT_PAGE_CONFIRM);
+
+ update_create_page_buttons (self);
}
}