talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 8f8a8ce89c778e1eeafcf2765825e1e21bce2db0
parent 1f1d80e6608d4130aa53c3106ceb5a148cc6b402
Author: Colin Leroy <colin@colino.net>
Date:   Thu,  6 Mar 2008 17:38:45 +0000

2008-03-06 [colin]	3.3.1cvs16

	* src/mainwindow.c
	* src/mainwindow.h
	* src/summaryview.c
	* src/summaryview.h
	* src/toolbar.c
		Integrate things better wrt the new
		summaryview extensibility.

Diffstat:
MChangeLog | 10++++++++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/mainwindow.c | 35+++++++++++++++++++----------------
Msrc/mainwindow.h | 3++-
Msrc/summaryview.c | 13+++++++++++--
Msrc/summaryview.h | 1+
Msrc/toolbar.c | 20++++++++------------
8 files changed, 53 insertions(+), 32 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,13 @@ +2008-03-06 [colin] 3.3.1cvs16 + + * src/mainwindow.c + * src/mainwindow.h + * src/summaryview.c + * src/summaryview.h + * src/toolbar.c + Integrate things better wrt the new + summaryview extensibility. + 2008-03-06 [wwp] 3.3.1cvs15 * src/quote_fmt.c diff --git a/PATCHSETS b/PATCHSETS @@ -3250,3 +3250,4 @@ ( cvs diff -u -r 1.2.2.29 -r 1.2.2.30 src/folder_item_prefs.c; cvs diff -u -r 1.12.2.59 -r 1.12.2.60 src/prefs_template.c; cvs diff -u -r 1.1.16.8 -r 1.1.16.9 src/prefs_template.h; cvs diff -u -r 1.8.2.30 -r 1.8.2.31 src/quote_fmt.c; cvs diff -u -r 1.2.4.26 -r 1.2.4.27 src/common/template.c; ) > 3.3.1cvs13.patchset ( cvs diff -u -r 1.105.2.127 -r 1.105.2.128 src/prefs_account.c; cvs diff -u -r 1.52.2.60 -r 1.52.2.61 src/prefs_folder_item.c; cvs diff -u -r 1.10.2.36 -r 1.10.2.37 src/prefs_gtk.c; cvs diff -u -r 1.12.2.60 -r 1.12.2.61 src/prefs_template.c; cvs diff -u -r 1.12.2.44 -r 1.12.2.45 src/gtk/prefswindow.c; cvs diff -u -r 1.7.2.11 -r 1.7.2.12 src/gtk/prefswindow.h; ) > 3.3.1cvs14.patchset ( cvs diff -u -r 1.8.2.31 -r 1.8.2.32 src/quote_fmt.c; ) > 3.3.1cvs15.patchset +( cvs diff -u -r 1.274.2.233 -r 1.274.2.234 src/mainwindow.c; cvs diff -u -r 1.39.2.43 -r 1.39.2.44 src/mainwindow.h; cvs diff -u -r 1.395.2.357 -r 1.395.2.358 src/summaryview.c; cvs diff -u -r 1.68.2.44 -r 1.68.2.45 src/summaryview.h; cvs diff -u -r 1.43.2.95 -r 1.43.2.96 src/toolbar.c; ) > 3.3.1cvs16.patchset diff --git a/configure.ac b/configure.ac @@ -11,7 +11,7 @@ MINOR_VERSION=3 MICRO_VERSION=1 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=15 +EXTRA_VERSION=16 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/mainwindow.c b/src/mainwindow.c @@ -2719,6 +2719,9 @@ SensitiveCond main_window_get_current_state(MainWindow *mainwin) mainwin->summaryview->copied > 0) state |= M_DELAY_EXEC; + if (summary_is_list(mainwin->summaryview)) + state |= M_SUMMARY_ISLIST; + return state; } @@ -2745,17 +2748,17 @@ void main_window_set_menu_sensitive(MainWindow *mainwin) {"/File/Synchronise folders", M_WANT_SYNC}, {"/File/Exit" , M_UNLOCKED}, - {"/Edit/Select thread" , M_TARGET_EXIST}, - {"/Edit/Delete thread" , M_TARGET_EXIST}, + {"/Edit/Select thread" , M_TARGET_EXIST|M_SUMMARY_ISLIST}, + {"/Edit/Delete thread" , M_TARGET_EXIST|M_SUMMARY_ISLIST}, {"/Edit/Find in current message...", M_SINGLE_TARGET_EXIST}, {"/View/Set displayed columns/in Folder list..." - , M_UNLOCKED}, - {"/View/Sort" , M_EXEC}, - {"/View/Thread view" , M_EXEC}, - {"/View/Expand all threads" , M_MSG_EXIST}, - {"/View/Collapse all threads" , M_MSG_EXIST}, - {"/View/Hide read messages" , M_HIDE_READ_MSG}, + , M_UNLOCKED|M_SUMMARY_ISLIST}, + {"/View/Sort" , M_EXEC|M_SUMMARY_ISLIST}, + {"/View/Thread view" , M_EXEC|M_SUMMARY_ISLIST}, + {"/View/Expand all threads" , M_MSG_EXIST|M_SUMMARY_ISLIST}, + {"/View/Collapse all threads" , M_MSG_EXIST|M_SUMMARY_ISLIST}, + {"/View/Hide read messages" , M_HIDE_READ_MSG|M_SUMMARY_ISLIST}, {"/View/Go to/Previous message" , M_MSG_EXIST}, {"/View/Go to/Next message" , M_MSG_EXIST}, {"/View/Go to/Previous unread message" , M_MSG_EXIST}, @@ -2779,18 +2782,18 @@ void main_window_set_menu_sensitive(MainWindow *mainwin) {"/Message/Send queued messages" , M_HAVE_ACCOUNT|M_HAVE_QUEUED_MAILS}, {"/Message/Compose an email message", M_HAVE_ACCOUNT}, {"/Message/Compose a news message", M_HAVE_NEWS_ACCOUNT}, - {"/Message/Reply" , M_HAVE_ACCOUNT|M_TARGET_EXIST}, - {"/Message/Reply to" , M_HAVE_ACCOUNT|M_TARGET_EXIST}, - {"/Message/Follow-up and reply to", M_HAVE_ACCOUNT|M_TARGET_EXIST|M_NEWS}, - {"/Message/Forward" , M_HAVE_ACCOUNT|M_TARGET_EXIST}, - {"/Message/Forward as attachment" , M_HAVE_ACCOUNT|M_TARGET_EXIST}, - {"/Message/Redirect" , M_HAVE_ACCOUNT|M_TARGET_EXIST}, + {"/Message/Reply" , M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST}, + {"/Message/Reply to" , M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST}, + {"/Message/Follow-up and reply to", M_HAVE_ACCOUNT|M_TARGET_EXIST|M_NEWS|M_SUMMARY_ISLIST}, + {"/Message/Forward" , M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST}, + {"/Message/Forward as attachment" , M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST}, + {"/Message/Redirect" , M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST}, {"/Message/Move..." , M_TARGET_EXIST|M_ALLOW_DELETE}, {"/Message/Copy..." , M_TARGET_EXIST|M_EXEC}, {"/Message/Move to trash" , M_TARGET_EXIST|M_ALLOW_DELETE|M_NOT_NEWS}, {"/Message/Delete..." , M_TARGET_EXIST|M_ALLOW_DELETE}, {"/Message/Cancel a news message" , M_TARGET_EXIST|M_ALLOW_DELETE|M_NEWS}, - {"/Message/Mark" , M_TARGET_EXIST}, + {"/Message/Mark" , M_TARGET_EXIST|M_SUMMARY_ISLIST}, {"/Message/Mark/Mark as spam" , M_TARGET_EXIST|M_CAN_LEARN_SPAM}, {"/Message/Mark/Mark as ham" , M_TARGET_EXIST|M_CAN_LEARN_SPAM}, {"/Message/Mark/Ignore thread" , M_TARGET_EXIST}, @@ -2802,7 +2805,7 @@ void main_window_set_menu_sensitive(MainWindow *mainwin) {"/Message/Re-edit" , M_HAVE_ACCOUNT|M_ALLOW_REEDIT}, {"/Tools/Add sender to address book" , M_SINGLE_TARGET_EXIST}, - {"/Tools/Harvest addresses" , M_MSG_EXIST}, + {"/Tools/Harvest addresses" , M_MSG_EXIST|M_SUMMARY_ISLIST}, {"/Tools/Harvest addresses/from Messages..." , M_TARGET_EXIST}, {"/Tools/Filter all messages in folder", M_MSG_EXIST|M_EXEC}, diff --git a/src/mainwindow.h b/src/mainwindow.h @@ -59,7 +59,8 @@ typedef enum M_HAVE_QUEUED_MAILS = 1 << 18, M_WANT_SYNC = 1 << 19, M_TAGS_EXIST = 1 << 20, - M_HAVE_PROCESSING = 1 << 21 + M_HAVE_PROCESSING = 1 << 21, + M_SUMMARY_ISLIST = 1 << 22 } SensitiveCond; typedef enum diff --git a/src/summaryview.c b/src/summaryview.c @@ -3485,12 +3485,18 @@ gboolean summary_step(SummaryView *summaryview, GtkScrollType type) return TRUE; } +gboolean summary_is_list(SummaryView *summaryview) +{ + return (gtk_notebook_get_current_page( + GTK_NOTEBOOK(summaryview->mainwidget_book)) == 0); +} + void summary_toggle_view(SummaryView *summaryview) { if (prefs_common.layout_mode == SMALL_LAYOUT) return; if (!messageview_is_visible(summaryview->messageview) && - summaryview->selected) + summaryview->selected && summary_is_list(summaryview)) summary_display_msg(summaryview, summaryview->selected); else @@ -6147,7 +6153,10 @@ static gboolean summary_button_released(GtkWidget *ctree, GdkEventButton *event, gboolean summary_pass_key_press_event(SummaryView *summaryview, GdkEventKey *event) { - return summary_key_pressed(summaryview->ctree, event, summaryview); + if (summary_is_list(summaryview)) + return summary_key_pressed(summaryview->ctree, event, summaryview); + else + return FALSE; } #define BREAK_ON_MODIFIER_KEY() \ diff --git a/src/summaryview.h b/src/summaryview.h @@ -322,4 +322,5 @@ void summaryview_activate_quicksearch(SummaryView *summaryview, gboolean show); void summary_set_menu_sensitive (SummaryView *summaryview); void summary_relayout(SummaryView *summaryview); void summary_update_unread(SummaryView *summaryview, FolderItem *removed_item); +gboolean summary_is_list(SummaryView *summaryview); #endif /* __SUMMARY_H__ */ diff --git a/src/toolbar.c b/src/toolbar.c @@ -2294,31 +2294,31 @@ void toolbar_main_set_sensitive(gpointer data) } if (toolbar->open_mail_btn) { SET_WIDGET_COND(toolbar->open_mail_btn, - M_TARGET_EXIST); + M_TARGET_EXIST|M_SUMMARY_ISLIST); } if (toolbar->reply_btn) { SET_WIDGET_COND(toolbar->reply_btn, - M_HAVE_ACCOUNT|M_TARGET_EXIST); + M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST); } if (toolbar->replyall_btn) { SET_WIDGET_COND(toolbar->replyall_btn, - M_HAVE_ACCOUNT|M_TARGET_EXIST); + M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST); } if (toolbar->replylist_btn) { SET_WIDGET_COND(toolbar->replylist_btn, - M_HAVE_ACCOUNT|M_TARGET_EXIST); + M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST); } if (toolbar->replysender_btn) { SET_WIDGET_COND(toolbar->replysender_btn, - M_HAVE_ACCOUNT|M_TARGET_EXIST); + M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST); } if (toolbar->fwd_btn) { SET_WIDGET_COND(toolbar->fwd_btn, - M_HAVE_ACCOUNT|M_TARGET_EXIST); + M_HAVE_ACCOUNT|M_TARGET_EXIST|M_SUMMARY_ISLIST); } if (prefs_common.next_unread_msg_dialog == NEXTUNREADMSGDIALOG_ASSUME_NO) { - SET_WIDGET_COND(toolbar->next_btn, M_MSG_EXIST); + SET_WIDGET_COND(toolbar->next_btn, M_MSG_EXIST|M_SUMMARY_ISLIST); } else { SET_WIDGET_COND(toolbar->next_btn, 0); } @@ -2335,13 +2335,9 @@ void toolbar_main_set_sensitive(gpointer data) SET_WIDGET_COND(toolbar->exec_btn, M_DELAY_EXEC); -/* if (toolbar->learn_ham_btn) - SET_WIDGET_COND(toolbar->learn_ham_btn, - M_TARGET_EXIST|M_CAN_LEARN_SPAM); -*/ if (toolbar->learn_spam_btn) SET_WIDGET_COND(toolbar->learn_spam_btn, - M_TARGET_EXIST|M_CAN_LEARN_SPAM); + M_TARGET_EXIST|M_CAN_LEARN_SPAM|M_SUMMARY_ISLIST); if (toolbar->cancel_inc_btn) SET_WIDGET_COND(toolbar->cancel_inc_btn,