From 31939ff3475dfb6a29a0eff08298ecfc674d7e9c Mon Sep 17 00:00:00 2001 From: 0 Date: Tue, 30 Oct 2001 11:11:22 +0000 Subject: If we're not at the end of the druid list, tell the druid we're going to 2001-10-30 * e-shell-startup-wizard.c (next_func): If we're not at the end of the druid list, tell the druid we're going to change the page. (back_func): Same for going back a page. This way we can properly synchronise with the druid object and not race with the wizard object to set the right page. Part of fix for #12127. svn path=/trunk/; revision=14450 --- shell/ChangeLog | 8 ++++++++ shell/e-shell-startup-wizard.c | 14 ++++++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/shell/ChangeLog b/shell/ChangeLog index 6cddf700ad..54a5e691b4 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,11 @@ +2001-10-30 + + * e-shell-startup-wizard.c (next_func): If we're not at the end of + the druid list, tell the druid we're going to change the page. + (back_func): Same for going back a page. This way we can properly + synchronise with the druid object and not race with the wizard + object to set the right page. Part of fix for #12127. + 2001-10-29 Ettore Perazzoli * evolution-shell-component.c (owner_ping_callback): Slightly diff --git a/shell/e-shell-startup-wizard.c b/shell/e-shell-startup-wizard.c index b7452e2367..0176257478 100644 --- a/shell/e-shell-startup-wizard.c +++ b/shell/e-shell-startup-wizard.c @@ -200,7 +200,12 @@ next_func (GnomeDruidPage *page, pagenum = page_to_num (page); GNOME_Evolution_Wizard_notifyAction (data->mailer, pagenum, GNOME_Evolution_Wizard_NEXT, &ev); CORBA_exception_free (&ev); - return FALSE; + + /* If on last page we own, let druid goto next page */ + if (pagenum == g_list_length(page_list)-1) + return FALSE; + + return TRUE; } static gboolean @@ -230,7 +235,12 @@ back_func (GnomeDruidPage *page, pagenum = page_to_num (page); GNOME_Evolution_Wizard_notifyAction (data->mailer, pagenum, GNOME_Evolution_Wizard_BACK, &ev); CORBA_exception_free (&ev); - return FALSE; + + /* if we're on page 0, let the druid go back to the start page, if we have one */ + if (pagenum == 0) + return FALSE; + + return TRUE; } static void -- cgit v1.2.3