diff --git a/modules/mail/e-mail-shell-view-private.c b/modules/mail/e-mail-shell-view-private.c
index 1d25ac8..d0d35ad 100644
--- a/modules/mail/e-mail-shell-view-private.c
+++ b/modules/mail/e-mail-shell-view-private.c
@@ -207,13 +207,20 @@ static void
 mail_shell_view_reader_changed_cb (EMailShellView *mail_shell_view,
                                    EMailReader *reader)
 {
+	e_shell_view_update_actions (E_SHELL_VIEW (mail_shell_view));
+	e_mail_shell_view_update_sidebar (mail_shell_view);
+}
+
+static void
+mail_shell_view_reader_folder_loaded_cb (EMailShellView *mail_shell_view, EMailReader *reader)
+{
 	EMailShellContent *mail_shell_content;
 
 	mail_shell_content = mail_shell_view->priv->mail_shell_content;
 
 	e_mail_shell_content_update_view_instance (mail_shell_content);
-	e_shell_view_update_actions (E_SHELL_VIEW (mail_shell_view));
-	e_mail_shell_view_update_sidebar (mail_shell_view);
+	
+	mail_shell_view_reader_changed_cb (mail_shell_view, reader);
 }
 
 static void
@@ -434,10 +441,9 @@ e_mail_shell_view_private_constructed (EMailShellView *mail_shell_view)
 		G_CALLBACK (mail_shell_view_reader_changed_cb),
 		mail_shell_view);
 
-	/* Use the same callback as "changed". */
 	g_signal_connect_swapped (
 		reader, "folder-loaded",
-		G_CALLBACK (mail_shell_view_reader_changed_cb),
+		G_CALLBACK (mail_shell_view_reader_folder_loaded_cb),
 		mail_shell_view);
 
 	g_signal_connect_swapped (
