{
printf ("DEBUG: %s\n", __FUNCTION__);
gboolean folder_empty = FALSE;
- TnyFolderChangeChanged changed;
+ TnyFolderChangeChanged changed;
+ ModestMainWindowPrivate *priv;
g_return_if_fail (MODEST_IS_MAIN_WINDOW (main_window));
g_return_if_fail (TNY_IS_FOLDER(folder));
g_return_if_fail (TNY_IS_FOLDER_CHANGE(change));
+ priv = MODEST_MAIN_WINDOW_GET_PRIVATE (main_window);
changed = tny_folder_change_get_changed (change);
if (folder_empty) {
modest_main_window_set_contents_style (main_window,
MODEST_MAIN_WINDOW_CONTENTS_STYLE_EMPTY);
+ gtk_widget_grab_focus (GTK_WIDGET (priv->folder_view));
}
else {
modest_main_window_set_contents_style (main_window,
g_return_if_fail (MODEST_IS_MAIN_WINDOW(main_window));
g_return_if_fail (MODEST_IS_HEADER_VIEW (header_view));
+ /* in the case the folder is empty, show the empty folder message and focus
+ * folder view */
+ if (!header && gtk_widget_is_focus (GTK_WIDGET (header_view))) {
+ if (modest_header_view_is_empty (header_view)) {
+ TnyFolder *folder = modest_header_view_get_folder (header_view);
+ GtkWidget *folder_view =
+ modest_main_window_get_child_widget (main_window,
+ MODEST_WIDGET_TYPE_FOLDER_VIEW);
+ if (folder != NULL)
+ modest_folder_view_select_folder (MODEST_FOLDER_VIEW (folder_view), folder, FALSE);
+ gtk_widget_grab_focus (GTK_WIDGET (folder_view));
+ return;
+ }
+ }
/* If no header has been selected then exit */
if (!header)
return;