fix bug 3973, ''select all' in summaryview does not automatically focus the summaryview'
authorPaul <paul@claws-mail.org>
Sun, 25 Feb 2018 13:18:40 +0000 (13:18 +0000)
committerPaul <paul@claws-mail.org>
Sun, 25 Feb 2018 13:18:40 +0000 (13:18 +0000)
The problem is apparent when 'default selection on entering a folder' is
set to 'none' and the first user action on entering the folder is
'select all'. This visually selected all the messages but summaryview
did not have the focus, so any actions performed on that list would
fail.

Removed summary_select_all(), which didn't quite do as advertised and
instead use gtk_cmclist_select_all() which selects and focuses.

src/mainwindow.c
src/summaryview.c
src/summaryview.h

index 74dbc4b0fa26b323470b4d082ad6eb328a4cc61c..13008397196a1536c13be4b394c0da81d0286114 100644 (file)
@@ -4983,7 +4983,7 @@ static void allsel_cb(GtkAction *action, gpointer data)
                 (gtk_widget_has_focus(msgview->mimeview->textview->text)))
                messageview_select_all(mainwin->messageview);
        else
                 (gtk_widget_has_focus(msgview->mimeview->textview->text)))
                messageview_select_all(mainwin->messageview);
        else
-               summary_select_all(mainwin->summaryview);
+               gtk_cmclist_select_all(GTK_CMCLIST(mainwin->summaryview->ctree));
 }
 
 static void select_thread_cb(GtkAction *action, gpointer data)
 }
 
 static void select_thread_cb(GtkAction *action, gpointer data)
index 60938efc35f43a81e695304b7e1176605c7773f6..257e850283ca17008ebac8321da1e9760c25feff 100644 (file)
@@ -4817,16 +4817,6 @@ void summary_add_address(SummaryView *summaryview)
        avatars_avatarrender_free(avatarr);
 }
 
        avatars_avatarrender_free(avatarr);
 }
 
-void summary_select_all(SummaryView *summaryview)
-{
-       if (!summaryview->folder_item) return;
-
-       summary_lock(summaryview);
-       gtk_cmclist_select_all(GTK_CMCLIST(summaryview->ctree));
-       summary_unlock(summaryview);
-       summary_status_show(summaryview);
-}
-
 void summary_unselect_all(SummaryView *summaryview)
 {
        summary_lock(summaryview);
 void summary_unselect_all(SummaryView *summaryview)
 {
        summary_lock(summaryview);
index 77ac05b1cbb87083179fd87e718674c7ccd86f7c..9d1d943de4e0b0e20efa8750325a771906a0f09e 100644 (file)
@@ -287,7 +287,6 @@ void summary_watch_thread     (SummaryView          *summaryview);
 void summary_unwatch_thread      (SummaryView          *summaryview);
 
 void summary_add_address         (SummaryView          *summaryview);
 void summary_unwatch_thread      (SummaryView          *summaryview);
 
 void summary_add_address         (SummaryView          *summaryview);
-void summary_select_all                  (SummaryView          *summaryview);
 void summary_unselect_all        (SummaryView          *summaryview);
 void summary_select_thread       (SummaryView          *summaryview,
                                   gboolean              delete_thread,
 void summary_unselect_all        (SummaryView          *summaryview);
 void summary_select_thread       (SummaryView          *summaryview,
                                   gboolean              delete_thread,