add Summary->Next/Prev labeled message
[claws.git] / ChangeLog
index 2cadad87fc5daa24c5b0c9452c075c5a0f244422..23cb8efde579d36fe735745fb890d2c5c06937e4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,628 @@
+2001-08-27
+
+       * merged the color label feature from the claws branch (thanks to
+         Satoshi Nagayasu and Alfons Hoogervoost).
+       * src/colorlabel.[ch]: new. Renamed from labelcolors.[ch].
+         Renamed labelcolors_*() to colorlabel_*().
+       * src/summaryview.[ch]: added color label support.
+       * src/procmsg.h: added color label flags to the permanent flags.
+       * updated to gettext 0.10.39.
+
+2001-08-27
+
+       * src/account.c: account_clist_set_row(): fixed a bug that failed
+         to compile if SSL was not enabled.
+
+2001-08-26
+
+       * merged the SSL support from the claws branch (thanks to Christoph
+         Hohmann).
+       * src/ssl.[ch]: new.
+       * src/socket.[ch]: added ssl_read(), ssl_write(), ssl_gets(), and
+         ssl_getline().
+         sock_close(): call ssl_done_socket() if SSL is active.
+       * src/md5.[ch]: removed MD5_CTX typedef and use MD5_CONTEXT to
+         prevent type confliction.
+       * src/prefs_account.[ch]: added SSL tab, and modified the expression.
+       * src/esmtp.[ch]: added esmtp_ehlo(), and esmtp_starttls().
+         Removed SSL initialization and HELO from esmtp_starttls().
+         esmtp_auth(): removed use_smtp_auth from its arguments.
+       * src/send.c: send_smtp_open(): added SSL support.
+       * src/smtp.c: smtp_helo(): call esmtp_ehlo() if esmtp is true.
+
+2001-08-25
+
+       * src/mimeview.c: mimeview_open_with(): braced '%s' with single
+         quote.
+
+2001-08-24
+
+       * src/main.c: open new account dialog if no account is set.
+       * src/utils.[ch]: log_verbosity_set(): new. It increase/decrease
+         the verbosity count.
+         log_print(): put to statusbar only if log_verbosity_count > 0.
+         log_message(): put to statusbar.
+       * src/inc.c: inc_pop3_session_do(): set log verbosity.
+       * src/mainwindow.c: main_window_set_menu_sensitive(): added the
+         "Compose new message" item.
+         main_window_show_cur_account(): removed "Current account: " string.
+       * src/summaryview.c: summary_show(): ignore the current marks if
+         main window is locked.
+       * src/compose.c: compose_attach_property(): fixed a bug that caused
+         segmentation fault.
+
+2001-08-23
+
+       * src/mainwindow.c: main_window_get_current_state(): new. It returns
+         the current state for the sensitivity of UI.
+         main_window_set_toolbar_sensitive(): use table like
+         main_window_set_menu_sensitive().
+
+2001-08-23
+
+       * src/mainwindow.[ch]: added progressbar and status label to the
+         statusbar.
+         main_window_close_cb(): don't exit if locked.
+       * src/inc.c: update the progressbar of main window, too.
+
+2001-08-22
+
+       * src/mainwindow.[ch]: main_window_set_toolbar_sensitive(): removed
+         the second argument, and determine the sensitivity with the
+         state of summary view.
+
+2001-08-21
+
+       * src/pop.c: pop3_getsize_list_recv(), pop3_retr_recv(),
+         pop3_delete_recv(): don't try to receive messages which are not
+         exist.
+
+2001-08-21
+
+       * src/mainwindow.c: main_window_lock(), main_window_unlock():
+         removed the whole menubar locking.
+         main_window_set_menu_sensitive(): process the sensitivity change
+         with a table, and deal with locking.
+
+2001-08-20
+
+       * src/summaryview.[ch]: summary_get_selection_type(): new.
+         It returns the current selection state of summary view.
+         summary_key_pressed(): abort on some commands if main window
+         is locked.
+       * src/mainwindow.[ch]: main_window_lock(), main_window_unlock():
+         increase/decrease the lock count.
+
+2001-08-19
+
+       * src/prefs_filter.c: prefs_filter_create(): added List-Id to the
+         default header list.
+       * src/prefs_common.[ch]: added the option for receive dialog mode
+         to the Interface tab.
+       * src/inc.[ch]: inc_progress_dialog_create(): don't make the dialog
+         transient, and show dialog only if the setting is
+         RECV_DIALOG_ALWAYS, or RECV_DIALOG_ACTIVE and a window is active.
+       * src/mainwindow.[ch]: main_window_lock(), main_window_unlock():
+         new. Lock / unlock the user-interface.
+       * src/progressdialog.c: progress_dialog_create(): don't make the
+         dialog modal.
+
+2001-08-18
+
+       * src/folderview.c: folderview_update_node(): suppressed unnecessary
+         recursive call.
+       * src/menu.[ch]: menu_button_position(): new. It calculates the
+         position of popup menu.
+       * src/mainwindow.c: toolbar_account_button_pressed(),
+         ac_label_button_pressed(): put the popup menu to the correct
+         position. Change the style of the button while opening the menu.
+         ac_menu_popup_closed(): new function called on selection_done
+         event.
+       * src/gtkutils.c: gtkut_ctree_node_next(): fixed a crash bug when
+         node == NULL.
+       * src/summaryview.c: applied the summary fix patch from Sergey Vlasov
+         (thanks!).
+         Fixed the bug that didn't select previous message in refresh mode
+         if threads were not expanded.
+         summary_select_node(): new.
+       * src/inc.c: applied the summary view update optimization patch from
+         Sergey Vlasov (thanks!).
+         If no new messages are received, don't perform summary refreshing.
+         In addition to the Vlasov's patch, POP3 receive information is
+         also used.
+       * src/inc.h: added a new member cur_total_num to Pop3State.
+       * src/pop.c: pop3_retr_recv(): increase state->cur_total_num.
+
+2001-08-14
+
+       * version 0.5.3
+
+2001-08-14
+
+       * src/summaryview.c: summary_set_row_marks(): got the color of
+         unread row set properly.
+       * src/folderview.c: foldreview_update_node(): don't use
+         gtk_style_copy(), and reuse previously allocated styles.
+       * README, README.jp: modified.
+
+2001-08-14
+
+       * src/pop.c: pop3_getsize_list_recv(): fixed a remotly exploitable
+         memory corruption bug (thanks to David Looney).
+       * src/inc.c: inc_all_account_mail(): call inc_finished() even if
+         there are no enabled accounts, or local spool only.
+       * src/summaryview.c: applied the summary update improvement patch
+         from Sergey Vlasov (thanks!). It keeps the position of the
+         message displayed. Selected and displayed message are also kept.
+         summary_get_msgnum(): new.
+         summary_get_current_msgnum(): removed.
+         summary_select_by_msgnum(): don't display the message.
+       * src/account.c: added "Get all" column.
+         account_clist_set_row(): show default and get-all flags with the
+         mark icon.
+       * src/utils.c: to_human_readable(): increased the number of decimals
+         of MB and GB to 2.
+
+2001-08-13
+
+       * implemented the long-awaited :) "Add sender to address book" feature.
+       * src/address.[ch]: added the argument for remarks to
+         address_item_new().
+         address_get_folder_list(): new. It traverses the address tree and
+         returns the folder list.
+         address_delete_object(): modified so that it removes the node
+         from the tree.
+       * src/addressbook.[ch]: addressbook_add_submenu(): new. It creates
+         a address folder menu and attaches it to the menu item.
+         addressbook_refresh(): reload the address book folder tree.
+       * src/summaryview.c: summary_set_add_sender_menu(): new. It attaches
+         the menu to add sender to address book.
+         summary_button_pressed(): call summary_set_add_sender_menu()
+         before popup the menu.
+
+2001-08-12
+
+       * src/summaryview.c: summary_thread_build(): fixed a bug that locked
+         up the process. Optimized the initial thread build.
+
+2001-08-12
+
+       * src/summaryview.c: made many code cleanups.
+         summary_show(): block/unblock the signal handlers instead of
+         disconnect/connect them.
+         summary_set_row_marks(): made the font of collapsed node bold if
+         it has cnildren marked as unread.
+         summary_thread_build(): block tree_expand signals while processing.
+         Use loop instead of the recursive function. Mark collapsed nodes
+         correctly.
+         summary_unthread(): block tree_collapse signals while processing.
+         Use loop instead of the recursive function.
+         summary_thread_func(), summary_unthread_func(): removed.
+         summary_tree_expanded(), summary_tree_collapsed(): new callback
+         functions.
+       * src/inc.[ch]: inc_pop3_session_do(): don't show alert panel when
+         failed to connect. Show more detailed status on the dialog.
+
+2001-08-10
+
+       * src/folderview.c: folderview_update_all_node(): new. It updates
+         all local folders.
+       * src/inc.c: update all local folders after incorporation if
+         scan_all_after_inc option is set.
+       * src/prefs_common.[ch]: added scan_all_after_inc option.
+       * src/folder.h: FOLDER_IS_LOCAL(): new macro.
+
+2001-08-09
+
+       * src/defs.h
+         src/headerview.c
+         src/headerwindow.c
+         src/textview.c
+         src/prefs_common.c
+         src/prefs_common.h: made bold and small font configurable.
+         src/summaryview.c: display unread messages with bold font.
+       * src/prefs_common.c
+         src/prefs_common.h
+         src/summaryview.c: added an option to enable/disable the
+         emphasis of unread messages.
+
+2001-08-08
+
+       * src/pixmaps/mark.xpm: modified.
+       * src/gtkutils.[ch]: gtkut_ctree_expand_parent_all(): new.
+       * src/summaryview.c: summary_set_ctree_from_list(): don't expand
+         the root messages of threads for performance improvement.
+         summary_show()
+         summary_select_next_unread()
+         summary_step(): expand threads when opening messages.
+         summary_thread_build(): expand threads if the option is turned on.
+       * src/prefs_common.[ch]: added "Expand threads" option.
+
+2001-08-08
+
+       * src/prefs_common.c: removed "Emulate the behavior of mouse
+         operation of Emacs-based mailer".
+       * src/prefs_common.c
+         src/prefs_account.c: changed the value of VSPACING_NARROW to 3.
+       * src/pixmaps/new.xpm
+         src/pixmaps/unread.xpm: reverted.
+
+2001-08-07
+
+       * src/address.[ch]:
+         address_folder_new()
+         address_group_new()
+         address_item_new(): changed the return value to AddressObject.
+         address_build_tree(): don't put assertion for file.
+       * src/pixmaps/new.xpm
+         src/pixmaps/unread.xpm: modified a bit.
+
+2001-08-06
+
+       * src/addressbook.c: fixed some bugs.
+
+2001-08-06
+
+       * separated the logic part of addressbook into another module
+         (still in progress).
+       * src/address.[ch]: new. It contains the logic part of addressbook.
+       * src/addressbook.[ch]: removed the logic part.
+
+2001-08-04
+
+       * src/textview.c: textview_show_header(): fixed a bug that a garbage
+         character was shown after header names.
+
+2001-08-02
+
+       * src/inc.c: inc_start(): don't abort with non-fatal error.
+
+2001-08-01
+
+       * version 0.5.2
+
+2001-08-01
+
+       * src/mimeview.c: mimeview_view_file(): added -x option to the
+         metamail to prevent the suspention of the main process.
+         mimeview_button_pressed(): deactivate `Open' menu item if
+         content-type is application/octet-stream.
+
+2001-07-31
+
+       * src/imap.c: imap_parse_atom(): parse escaped characters properly.
+         get_quoted(): new. It handles the escape character '\'.
+       * src/folder.c: folder_read_list(): don't output warning if
+         folderlist.xml doesn't exist.
+       * src/main.c: main(): write folder list after setup.
+       * src/textview.c: textview_create()
+         src/compose.c: compose_create(): set default tab width to 8.
+
+2001-07-29
+
+       * src/prefs_common.c: date_format_select_row(): fixed a bug that
+         caused segfault when selecting the list with key.
+
+2001-07-28
+
+       * src/mainwindow.c: main_window_popup(): deiconize the window
+         when popup (thanks to Henrik Carlqvist).
+       * src/procmime.c: procmime_scan_mime_type(): new.
+         procmime_scan_content_type(): use procmime_scan_mime_type().
+         procmime_scan_mime_header(): scan the extension of attached files
+         and add the correct MIME type if the Content-Type is
+         "application/octet-stream" (thanks to Don Quijote).
+       * src/compose.c: compose_toolbar_create(): added a new "Send later"
+         icon (thanks to Leandro Pereira).
+
+2001-07-27
+
+       * src/prefs_common.c: date_format_create(): modified the layout of
+         the dialog.
+
+2001-07-26
+
+       * src/account.c: account_find_from_address(): fixed a minor bug.
+       * src/prefs_common.c: incorporated the user-interface for setting
+         date format from the claws branch, and made some modification to
+         that.
+
+2001-07-25
+
+       * src/account.[ch]: account_edit_create(): modified the text of
+         default button.
+         account_find_from_address(): new.
+       * src/procmime.c:
+         procmime_scan_content_type(), procmime_scan_content_disposition():
+         fixed ESC code detection.
+       * src/compose.c: compose_reply(): automatically select account
+         according to the message header.
+       * src/prefs_common.[ch]: added member "reply_account_autosel".
+
+2001-07-25
+
+       * src/progressdialog.c: made the CList scrollable.
+       * src/inc.c: inc_start(): don't abort with non-fatal error.
+
+2001-07-24
+
+       * added English Sylpheed User's Manual by Paul Kater
+         (paul@nlpagan.net) (thanks!).
+       * configure.in
+         manual/Makefile.am
+         src/mainwindow.c: added support for English manual.
+       * manual/en/sylpheed*.html: added English documentation.
+       * AUTHORS: updated.
+
+2001-07-23
+
+       * src/nntp.c: nntp_ok(): fixed the bug that didn't handle a response
+         that didn't have any trailing messages.
+       * src/smtp.c: smtp_ok(): ditto.
+       * src/compose.c: compose_account_option_menu_create(): modified
+         the style of the account option menu.
+
+2001-07-22
+
+       * src/prefs_customheader.c: prefs_custom_header_clist_set_row():
+         remove return code from strings automatically.
+         prefs_custom_header_create(): added "X-Face" to the default
+         option.
+       * src/news.c: news_fetch_msg(), news_get_group_list()
+         src/imap.c: imap_fetch_msg(): create the cache directory before
+         writing.
+       * src/procmime.c:
+         procmime_scan_content_type()
+         procmime_scan_content_disposition(): convert JIS into EUC-JP
+         before parsing.
+       * src/codeconv.c: conv_unmime_header(): cleaned up a bit.
+       * src/compose.c: don't append attachment headers if the attach
+         pane is visible but the list is empty.
+       * src/recv.c: recv_bytes_write(): use g_malloc() instead of alloca().
+
+2001-07-18
+
+       * version 0.5.1
+
+2001-07-18
+
+       * src/compose.c: compose_quote_parse_fmt()
+         src/prefs_common.c: prefs_quote_description_create(): added the
+         symbol `%c' that allows to include Cc in reply format (thanks
+         to Cyril Bellot).
+       * src/base64.[ch]
+         src/procmime.c: procmime_decode_content(): applied the patch
+         from Sergey Vlasov that allows to decode base64 data with
+         unusual line length (not a multiple of 4) (thanks!).
+
+2001-07-17
+
+       * src/procmsg.[ch]: separated the permanent flags and temporary
+         flags into two variables, and made MsgFlags a structure that
+         includes them.
+         MSG_SET_PERM_FLAGS()
+         MSG_SET_TMP_FLAGS()
+         MSG_UNSET_PERM_FLAGS()
+         MSG_UNSET_TMP_FLAGS(): new macros.
+       * src/compose.c
+         src/imap.c
+         src/inc.c
+         src/messageview.c
+         src/mh.c
+         src/news.c
+         src/procheader.c
+         src/summaryview.c: modified for the new MsgFlags.
+       * src/utils.[ch]: hash_free_value_mem(): new. It frees the values
+         of hash table.
+
+2001-07-16
+
+       * src/inc.c: inc_pop3_recv_func(), inc_progress_update():
+         display current size with human-readable format.
+       * src/grouplistdialog.c: grouplist_recv_func(): ditto.
+       * TODO
+         TODO.jp: updated.
+
+2001-07-16
+
+       * src/codeconv.c:
+         conv_unmime_header(), conv_unmime_header_overwrite(): workaround
+         for raw-JIS code in header fields.
+       * src/folder.c:
+         folder_get_default_folder()
+         folder_get_default_inbox()
+         folder_get_default_outbox()
+         folder_get_default_draft()
+         folder_get_default_queue()
+         folder_get_default_trash(): fixed a bug that caused segfault
+         if folder_list is NULL.
+
+2001-07-15
+
+       * README
+         README.jp
+         INSTALL
+         INSTALL.jp
+         TODO
+         TODO.jp: updated.
+       * src/grouplistdialog.c: grouplist_dialog_set_list(): update UI
+         while retrieving newsgroup list.
+         grouplist_dialog_create(): added entry widget and status label.
+         grouplist_recv_func(): new.
+         refresh_clicked(): added exclusive lock variable.
+         clist_selected(): set text entry when the CList is selected.
+         renamed from group_clist_select().
+         entry_activated(): new.
+         grouplist_clear(): renamed from grouplist_free(). Also clears
+         list and entry widget.
+       * src/news.c: news_get_group_list(): sped up the list appending
+         (g_slist_append() becomes very slow if list size is large).
+       * src/defs.h: added UI_REFRESH_INTERVAL definition.
+         Changed the definition of NEWSGROUP_LIST.
+       * src/recv.c: recv_write()
+         src/send.c: send_message_smtp(): changed the UI refresh interval
+         to UI_REFRESH_INTERVAL (50msec).
+       * src/account.c: account_add(): fixed a bug that didn't update
+         folder tree when a news account was added.
+       * src/grouplistdialog.c: made exclusive lock variable global, and
+         lock at grouplist_dialog_set_list().
+       * src/textview.c: fixed a bug that disabled clickable URI if
+         message color was disabled.
+
+2001-07-15
+
+       * src/grouplistdialog.c: ok_clicked(), cancel_clicked(): don't
+         quit main loop if gtk_main_level() is 1.
+         grouplist_dialog_set_list(): freeze CList while appending the list.
+         grouplist_dialog(): show dialog before updating the list.
+
+2001-07-14
+
+       * src/folder.c: folder_write_list_recursive(): add the attribute
+         `collapsed' if a node have some children.
+       * src/grouplistdialog.[ch]: new. Newsgroups can be selected from
+         the list.
+       * src/news.[ch]:
+         news_get_group_list(): new. It returns newsgroup list.
+         news_remove_group_list(): new. It removes newsgroup list cache.
+       * src/folderview.c: folderview_new_news_group_cb(): call
+         grouplist_dialog() instead of input_dialog().
+
+2001-07-12
+
+       * autogen.sh: modified.
+       * src/folder.[ch]
+         src/folderview.c: made expand/collapse state of folders persistent
+         (thanks to Alfons).
+
+2001-07-06
+
+       * version 0.5.0
+
+2001-07-06
+
+       * src/imap.c: imap_remove_folder(): select INBOX with EXAMINE before
+         DELETE.
+         imap_cmd_do_select(): new. It toggles between SELECT and EXAMINE
+         according to the argument.
+         imap_cmd_select(): use imap_cmd_do_select().
+         imap_cmd_examine(): new.
+       * src/folderview.c: folderview_rm_imap_folder_cb(): select current
+         folder again when removing failed.
+
+2001-07-05
+
+       * version 0.5.0pre4
+
+       * manual/ja/sylpheed.sgml
+         manual/ja/*.html: updated the Japanese manual (thanks to Imai).
+       * src/summaryview.c: summary_set_row_marks(): fixed a bug that
+         didn't set foreground correctly.
+       * src/folderview.h
+         src/summaryview.h: removed the member color_normal from FolderView
+         and SummaryView.
+       * src/mainwindow.c: main_window_create(): removed color_normal.
+
+2001-07-04
+
+       * src/prefs_account.[ch]: the port numbers of IMAP4 and NNTP
+         became specifiable.
+       * src/imap.c: imap_session_get()
+         src/news.c: news_session_new_for_folder(), news_session_get():
+         use user-defined port number if specified.
+
+2001-07-03
+
+       * src/imap.c: imap_scan_tree_recursive(): get mailbox status when
+         scanning.
+         imap_scan_folder(): implemented. It updates the numbers of new,
+         unread and total messages.
+         imap_status(): new. It parses the response of STATUS command.
+         imap_status_uidnext(): removed.
+         imap_cmd_status(): removed.
+       * src/textview.c: textview_show_part(): fixed potential memory leaks.
+
+2001-07-03
+
+       * src/alertpanel.c: alertpanel_create(): fixed truncated message.
+       * src/rfc2015.c: rfc2015_decrypt_message(): fixed the case problem
+         of content-type (thanks to RenĂ© Rebe for the patch).
+       * src/codeconv.c: code_get_code_conv_func(): fixed the ISO-8859-1
+         detection.
+       * src/prefs_common.c: prefs_send_create(): made some more character
+         sets specifiable when not using libjconv.
+       * configure.in: disabled --enable-threads option temporarily.
+       * INSTALL
+         INSTALL.jp: deleted the description about --enable-threads option.
+
+2001-07-02
+
+       * updated gettext to 0.10.38.
+
+2001-07-01
+
+       * version 0.5.0pre3
+
+       * src/folderview.[ch]: folderview_set_all(): new.
+       * src/account.c: account_add(): call folderview_set_all() after
+         creating IMAP4 tree.
+         account_edit_create(): account preferences dialog can be opened
+         with double clicking of the list.
+         account_selected(): new.
+         account_clist_set(): made the CList focus set correctly.
+
+2001-06-30
+
+       * src/imap.c: imap_scan_tree(): call imap_create_trash() if trash
+         is not found.
+         imap_scan_tree_recursive(): search the sub folders of INBOX.
+         recognize Trash folder.
+         imap_create_tree(): separated the part of creating trash.
+         imap_create_trash(): new.
+       * src/folder.c: folder_build_tree(), folder_write_list_recursive():
+         preserve no_sub and no_select.
+       * src/summaryview.c: summary_show(): don't proceed if item->no_select
+         is TRUE.
+
+2001-06-29
+
+       * src/imap.c: imap_scan_tree(): fixed a bug that didn't set the
+         root folder correctly.
+
+2001-06-28
+
+       * src/folderview.[ch]:
+         folderview_update_tree(): new. It updates one folder tree.
+         folderview_update_tree_cb(): new.
+         Added "Update folder tree" to the popup menu, and modified some
+         expressions.
+
+2001-06-27
+
+       * src/imap.c: implemented the autoscan of IMAP4 folder list.
+         imap_scan_tree(): new. It scans the whole IMAP4 folder.
+         imap_scan_tree_recursive(): new. It traverses the IMAP4 folder tree.
+         imap_parse_list(): new. It parses the LIST response.
+         imap_get_real_path(): new. It converts local path into IMAP4 path.
+       * src/folder.h: added no_sub and no_select to FolderItem.
+       * src/folder.c: folder_tree_destroy(): reset some variables.
+       * src/folderview.c: folderview_scan_tree_func(): supported IMAP4.
+
 2001-06-26
 
        * src/imap.c: imap_parse_envelope(): fixed a bug that didn't
          parse the FETCH response that continues to the next line.
          imap_parse_fetch_element(): removed.
+         imap_parse_atom(), imap_parse_one_address(), imap_parse_address(),
+         imap_parse_envelope(), imap_get_uncached_messages(): use GString
+         and sock_getline() to parse the FETCH response.
+         imap_remove_all_msg(): fixed a bug that didn't delete messages
+         correctly.
+         imap_parse_address(): fixed a bug that didn't concaternate
+         addresses correctly, using GString.
+       * src/socket.[ch]: sock_getline(), fd_getline(): new. They read
+         the whole line and return the newly allocated string.
+       * src/prefs_account.[ch]: added `IMAP server directory' entry.
 
 2001-06-25