5 src/inputdialog.c: use gtk_main_iteration() instead of gtk_main()
6 to prevent abort when a button is double-clicked.
10 * src/addr_compl.c: invalidate_address_completion(): check if
11 g_completion_list is NULL (thanks to Kazuhiro NISHIYAMA).
15 * src/pop.c: pop3_session_recv_data_finished(): fixed a bug that
16 deleted messages that is to be kept on server (thanks to Tristan
26 sock_set_io_timeout(): new. It sets the timeout interval.
27 sock_gdk_input_add(): removed since it's not used anymore.
28 * src/prefs_common.[ch]: added an option to set the timeout parameter.
32 * src/action.c: fixed a bug that didn't hide user string in
33 create_io_dialog() (thanks to Markus Amersdorfer).
34 Removed ChildInfo::type and added Children::action_type.
38 * src/inc.c: inc_start(): ask every password before retrieving.
39 Don't popup the redundant error dialog.
41 inc_all_account_mail()
42 inc_progress_dialog_set_list(): separated account list display
44 inc_progress_dialog_set_label()
45 inc_recv_data_finished()
46 inc_recv_message(): properly update the dialog when RETR finished.
51 imap_modified_utf7_to_locale()
52 imap_locale_to_modified_utf7(): fixed compilation failure when not
57 * src/procmime.c: procmime_scan_multipart_message(): fixed parsing
58 of message/rfc822 parts.
62 * src/pop.c: pop3_ok(): detect timeout error.
66 * src/imap.c: imap_locale_to_modified_utf7(): fixed the encoding bug
67 when locale strings include '+'.
68 imap_modified_utf7_to_locale()
69 imap_locale_to_modified_utf7(): at least escape/unescape '&' even
70 if iconv() is not supported.
76 compose_get_signature_str(): include separator in signature string.
77 Don't insert separator if signature file is not found.
78 Disabled use of implicit default signature path (~/.signature) when
89 src/smtp.c: suppress warnings that gcc-3.3 issues.
90 src/stringtable.c: use string_entry_free().
94 * src/compose.c: compose_insert_sig(): fixed the bug that always
95 appended signature separator if signature file was not found.
96 compose_get_signature_str(): fixed the bug that caused crash if
97 signature file cannot be opened.
105 * src/session.c: session_recv_msg(): removed debug print.
112 imap_cmd_fetch(): check for data size that servers return (fixes
113 vulnerability found in BugTraq).
117 * src/addr_compl.c: get_complete_address()
118 src/addressbook.c: addressbook_format_address()
119 src/compose.c: QUOTE_IF_REQUIRED(): quote if name contains
120 characters that is not defined in atext (RFC 2822, 3.2.4. Atom).
121 * src/main.c: main(): set colormap and visual to solve color problem
122 in Solaris (thanks to Markus Schwarzenberg).
130 * src/prefs_account.c: temporarily removed POP before SMTP option.
134 * src/prefs_common.[ch]: changed the description of "Open message when
135 cursor keys are pressed on summary".
136 * src/summaryview.c: summary_show(): open message when always_show_msg
141 * src/logwindow.[ch]: restrict the maximum lines of the log messages
142 to reduce the memory usage.
146 * src/compose.c: compose_insert_sig(): fixed a crash when signature
147 string contains illegal sequence.
148 * src/utils.[ch]: changed get_wcs_len() to get_mbs_len() for accuracy.
152 * major refactoring of MIME structure.
153 * src/procmime.c: procmime_scan_message(): decrypt message if
154 gpgme is enabled. Create multipart tree only if content-type is
155 multipart/* or message/rfc822.
156 procmime_scan_multipart_message(): fixed the scanning of
158 * src/action.c: parse_append_msgpart()
159 src/messageview.c: messageview_show()
160 src/mimeview.c: mimeview_show_message(): use procmime_scan_message()
161 instead of procmsg_open_message() and procmime_scan_mime_header().
162 mimeview_set_multipart_tree(): conform to the new MIME structure.
163 * src/textview.c: textview_show_part(): removed unnecessary check.
164 * src/procmsg.c: procmsg_open_message_decrypted(): fixed the file
165 pointer when decryption failed.
169 * src/ssl.c: ssl_init_socket_with_method(): replaced log_warning()
170 by g_warning(), and log_print() by debug_print().
171 * src/pop.[ch]: added an error code PS_NOTSUPPORTED, and retry with
172 LAST if UIDL is not supported.
176 * src/codeconv.c: conv_get_code_conv_func(): convert to EUC-JP only
177 if it is the current locale encoding when dest_charset_str is NULL.
181 * src/action.c: execute_actions(): fixed crash when no text widget
182 is selected (thanks to Paul and Melvin).
184 src/prefs_actions.c: added missing reference to Claws team in the
191 session_send_data(): fixed a memory leak and data sending bug.
192 * src/send_message.c:
193 send_message_smtp(): fixed focus management.
197 * src/smtp.[ch]: set the response string to SMTPSession::error_msg
199 * src/send_message.c: show error dialog if error occurred.
200 * src/main.c: send_queue()
201 src/mainwindow.c: send_queue_cb(): don't show error dialog here.
205 * src/session.c: session_close(): kill child process only if
206 state is not SESSION_DISCONNECTED.
207 * src/send_message.c: send_cancel_button_cb()
208 src/inc.c: inc_cancel(): don't set Session::state to
209 SESSION_DISCONNECTED.
210 * src/prefs.[ch]: modified the names of prefs_write_*().
211 * src/address.[ch]: removed.
215 * src/compose.c: compose_template_apply(): overwrite recipients.
219 * src/procheader.c: procheader_date_parse(): removed debug print.
220 * src/session.c: changed every g_print to debug_print.
221 session_child_input(): removed unrequired session_close() (it'll
222 be closed anyway after returning FALSE).
223 * src/send_message.c: send_message_smtp(): changed g_print to
228 * src/procheader.c: procheader_procheader_date_parse(): don't add
229 local timezone offset if timezone is unknown.
230 Made the Y2K workaround code to follow RFC 2822.
231 procheader_scan_date_string(): workaround for date strings which
232 don't have timezone specification.
233 * src/utils.c: remote_tzoffset_sec(): return -1 if timezone is
238 * src/action.[ch]: refactored. Also fixed a bug on MIME mode, and
239 some memory leaks on error.
240 action_update_msgview_menu(): new.
241 * src/messageview.[ch]: added "Tools/Actions" menu. Keep window list.
242 messageview_get_selected_mime_part(): returns MimeInfo of selected
243 part when MessageView is in MIME mode.
244 * src/mimeview.[ch]: mimeview_get_selected_part(): returns MimeInfo
246 * src/summaryview.[ch]: summary_get_selected_msg_list(): returns
247 MsgInfo list of selected messages.
251 * src/prefs_filter.[ch]: include original message's headers as
252 the preset keywords. Modified the sizes of the widgets.
253 * src/utils.[ch]: added str_case_equal() and str_case_hash() for
254 case-insensitive hash.
258 * src/procmsg.c: procmsg_get_filter_keyword(): added X-Sequence to
259 auto-detected headers.
263 src/mainwindow.c: modified function names.
264 get_user_string(): Use input_dialog() instead of its own
269 * src/codeconv.[ch]: conv_encode_header(): don't include '(' and ')'
270 in encoded strings if addr_field is TRUE.
271 * src/compose.c: compose_convert_header(): added a flag 'addr_field'.
275 * src/prefs_actions.[ch]: separated action execution routine into
280 * src/prefs_actions.c: minor code cleanup.
284 * src/codeconv.[ch]: conv_iconv_strdup(): fixed the handling of
290 inc_recv_data_progressive()
291 inc_recv_data_finished()
294 send_send_data_progressive()
295 send_send_data_finished(): added assertion.
299 * src/codeconv.[ch]: conv_iconv_strdup(): fixed potential memory
304 * src/codeconv.[ch]: conv_iconv_strdup(): don't include nul character
305 in source buffer since it messed up some encoding conversion (like
310 * src/procmsg.c: procmsg_get_filter_keyword(): unfold headers and
311 extract ID from List-Id header.
312 * src/utils.[ch]: extract_one_parenthesis_with_skip_quote(): removed.
313 extract_list_id_str(): extract ID string from List-Id header.
317 * src/prefs_actions.c: merged from the claws branch. Fixes several
318 bugs and adds some features.
322 * src/compose.c: compose_parse_header(): fixed a bug that unnecessary
323 linebreaks were included on reediting.
325 src/pop.c: fixed typos: 'occured'.
329 * src/compose.[ch]: implemented auto signature replacement on
331 compose_insert_sig(): added a flag to replace current signature.
332 compose_get_signature_str(): new. It returns signature string.
333 compose_insert_command_output(): removed.
334 compose_select_account(): call compose_insert_sig() on account
336 compose_destroy(): fixed a memory leak of UndoMain object.
337 Compose::sig_str: new. It stores current signature string.
338 * src/gtkutils.[ch]: gtkut_stext_find(): new.
339 Renamed gtk_stext_clear() to gtkut_stext_clear().
340 * src/utils.[ch]: get_wcs_len(): returns wide-character length of
342 normalize_newlines(): converts CR+LF and CR into LF.
343 get_command_output(): returns command output.
347 * src/procmsg.[ch]: procmsg_get_filter_keyword(): new. It returns
348 filter keyword for messages.
349 * src/summaryview.c: summary_filter_open(): use
350 procmsg_get_filter_keyword().
351 * src/messageview.c: create_filter_cb(): implemented.
357 inc_put_error(): display server responses on error.
358 * src/pop.[ch]: added Pop3Session::error_msg, and set server responses
363 * src/messageview.[ch]: separated the forced charset of message view
364 in separate window from the main window.
366 textview_show_message()
368 textview_add_part(): use MessageView::forced_charset if specified.
372 * src/mainwindow.c: modified File menu a bit.
373 * src/menu.[ch]: added functions to handle item factory rc strings.
374 * src/messageview.[ch]: added a menu, and made it take over main
375 window's menu shortcuts.
376 added msginfo which is duplicated on display to MessageView.
377 * src/prefs_common.c: prefs_keybind_apply_clicked(): use
378 menu_factory_clear_rc().
382 * send_message.c: send_message_smtp():
383 re-enabled forcing of SMTP AUTH method.
384 Clear temporary password if authentication failed.
385 * smtp.c: output warning to log and set SMTPSession::error_val
387 * smtp.h: changed error value to enum. Added SMTPSession::error_val.
388 * src/mbox.c: proc_mbox(): force updating of folder.
392 * src/pop.h: changed error value to enum.
393 * src/pop.c: pop3_retr_recv(): return PS_IOERR when inc_drop_message()
395 pop3_ok(): return appropriate error value based on current state.
396 Output warning to log if error occurs.
401 src/news.[ch]: refactored. Remove NNTPSockInfo and use NNTPSession
406 * src/inc.c: inc_pop3_session_do(): retrun appropriate error if
407 Session::state == SESSION_ERROR.
408 * po/POTFILES.in: removed src/automaton.c and src/send.c.
409 Added src/send_message.c.
414 src/session.c: fixed breakage of POP3 retrieval.
415 session_recv_data_from_sock_unescape(): read until terminator
416 appears and also return the actual size.
420 * src/automaton.[ch]: removed.
421 * src/session.c: removed some of the debug output.
422 * src/smtp.c: smtp_session_recv_msg(): workaround in case server
423 returns EHLO-style response to HELO command.
424 Ignore all multiline responses except for EHLO since they are
425 allowed for any command.
430 src/pop.c: fixed retrieval of messages which contain dot-escaped
432 session_recv_data(): added a flag for unescape.
433 session_recv_data_from_sock_unescape(): new. It receives message
434 for each line and unescapes dot-escaped lines.
435 Removed the previous workaround.
436 * src/defs.h: decreased UI_REFRESH_INTERVAL to 40 msec.
440 * src/pop.[ch]: workaround for brekage of retrieval when given size
441 and actual one is different.
445 * src/pop.c: pop3_retr_eom_recv(): ignore invalid end of message
446 since some servers sometimes return incorrect message size.
447 * src/news.c: news_session_new(): zero clear NNTPSession object.
448 Don't initialize Session::sock with nntp_sock->sock to prevent
449 double-free of SockInfo.
450 * src/imap.c: zero clear IMAPSession object.
451 imap_cmd_append(): don't close SockInfo.
455 * src/pop.c: pop3_session_recv_msg(): fixed STLS.
460 src/pop.[ch]: reimplemented using new I/O system.
461 * src/session.[ch]: session_recv_data(): new.
462 session_send_data_to_sock()
463 session_recv_data_from_sock(): decreased the frequency of progress
468 * src/smtp.c: smtp_auth_recv(): fixed CRAM-MD5 authentication.
472 * src/session.[ch]: session_start_tls(): new.
473 session_recv_msg(): made it static.
477 * implemented asynchronous network I/O.
478 * src/session.[ch]: the interface to communicate with servers through
481 src/send_message.[ch]: rewrote using new I/O system.
482 * src/socket.[ch]: renamed *_write() to *_write_all(), and made
483 *_write() as just a simple wrapper for write().
484 * src/utils.c: get_outgoing_rfc2822_str(): new. It modifies the
485 message to send with SMTP or NNTP.
486 file_read_stream_to_str(): new.
490 * src/textview.c: textview_button_pressed(): corrected the range of
492 * src/compose.c: compose_wrap_line_all_full(): treat UTF-8 characters
493 represented with more than 2 bytes as 2 character width and 2 bytes
494 one as a single character width as a workaround for wrapping problem.
498 * src/utils.c: subject_compare_for_sort(): allow null strings (fixes
503 * implemented HTML link correctly.
504 * src/html.[ch]: HTMLAttr, HTMLTag: new structure for attributes /
506 html_get_tag(): new. It parses tag and returns HTMLTag object.
507 html_parse_tag(): also parses <a> tags and 'href' attributes.
508 * src/textview.c: textview_write_link(): new. It creates link string.
512 * src/compose.c: compose_wrap_line_all_full(): fixed an infinite
513 loop / crash bug (thanks to Darko Koruga).
514 compose_write_to_file(): put correct charset element when
515 conversion failed but want to send anyway.
519 * src/headerview.c: headerview_show()
520 src/textview.c: textview_write_line(): remove unreadable characters
521 from displayed strings to prevent crashes on multi-byte
523 * src/codeconv.[ch]: conv_unreadable_locale(): new. It was separated
524 from conv_localetodisp().
528 * src/procmsg.c: procmsg_cmp_by_subject()
529 src/summaryview.c: summary_cmp_by_subject(): ignore Re: when
532 subject_compare_for_sort()
533 trim_subject_for_sort(): new.
541 * src/defs.h: added -i option to the default sendmail command.
545 * src/codeconv.[ch]: added missing character encodings and locales.
550 procmsg_get_mark_sum()
551 procmsg_open_mark_file()
552 procmsg_read_mark_file(): take FolderItem instead of directory
557 * src/codeconv.c: conv_encode_header(): fixed a bug that spaces
558 which is on the wrap boundary would be lost when encoding long
559 non-ascii strings (thanks to Sergey Vlasov).
560 Don't force wrapping within a long word until it reaches hard line
561 length limit (998 characters) (workaround for the breakage of
562 long address list with no spaces).
566 * src/prefs_account.c: fixed compile failure when using neither
571 * src/codeconv.c: fixed UTF-8 locale support.
572 conv_get_code_conv_func(): return conv_noconv if locale encoding
573 is UTF-8. Return conv_latintodisp on ISO-8859-* to locale encoding
575 conv_convert(): call conv_iconv_strdup() instead of
576 conv_codeset_strdup().
577 conv_codeset_strdup(): moved some codes into conv_iconv_strdup().
581 * src/prefs_account.[ch]: added an option to use command output for
583 * src/compose.c: compose_insert_sig(): use command output if
585 compose_insert_command_output(): new.
589 * src/main.c: main(): remove lock socket if sylpheed is not running
590 when --status command is executed.
591 lock_socket_remove(): new.
595 * src/codeconv.c: conv_codeset_strdup(): don't convert if current
596 codeset is US-ASCII (or POSIX).
600 * src/codeconv.c: conv_iconv_strdup(): try to skip invalid characters
601 and continue conversion.
605 * src/summaryview.c: summary_selected(): always update widget
610 * src/utils.c: tzoffset_sec(): fixed a bug that displayed wrong
611 date in timezones more than GMT+12 or less than GMT-12.
615 * src/prefs_common.[ch]
616 src/sourcewindow.c: remember the size of source window.
617 * src/md5.c: fixed a compile problem with gcc 3.3.
621 * src/about.c: about_create(): modified the copyright notice.
625 * src/colorlabel.c: don't use pixmaps for label color rect but draw
626 rectangles so we can respect the color map of palette based visuals
627 (fixes the long time crashes on Solaris - thanks to Alfons
632 * src/procheader.c: procheader_date_parse(): made month string case
634 * src/prefs_filter.c: prefs_filter_close(): fixed the crash when the
635 selection list is empty.
639 * src/quote_fmt_parse.y: removed gettext translatable strings.
640 * src/unmime.c: unmime_header(): remove broken characters when
641 code conversion failed.
642 * src/codeconv.c: conv_encode_header(): fixed a bug that broken
643 headers if long words more than 75 characters are entered.
647 * src/prefs_account.c: prefs_account_receive_create()
648 src/utils.c: to_human_readable(): made units translatable.
652 * src/codeconv.c: isprintableeuckanji(): don't allow more than 0xf4
653 at first byte (fixes abort() problem of glibc).
654 * src/html.c: html_read_line(): remove characters which can't be
655 displayed on the current locale.
660 trim_subject_for_compare(): renamed from trim_subject().
661 trim_subject(): new. It removes [...] or (...) at the beginning
663 * src/prefs_folder_item.c
665 added options for trimming summary / compose subject.
666 * src/summaryview.c: summary_set_header(): trim subject if the folder
668 * src/compose.c: compose_reply_set_entry(): trim subject if the folder
674 LBREAK_IF_REQUIRED(): don't break lines before first word (fixes
675 X-Face header problem).
676 conv_encode_header(): allow up to 97 characters for one word.
680 * src/filter.c: filter_match_condition(): fixed the bug that
681 second condition ignored regex.
682 * src/news.h: NewsGroupInfo: use guint for message numbers
683 (fix count in grouplist dialog) (thanks to Thorsten Maerz).
687 * src/codeconv.c: conv_encode_header(): fixed a segfault bug
688 on code conversion failure.
689 conv_get_charset_str()
690 conv_get_charset_from_str(): optimized using hash table.
694 * src/quote_fmt_parse.y:
695 SHOW_MESSAGE_NO_SIGNATURE, SHOW_QUOTED_MESSAGE_NO_SIGNATURE:
696 treat only "\n-- \n" as a signature separator.
700 * src/gtkutils.[ch]: gtkut_ctree_node_prev(): new.
701 * src/summary_search.c: summary_search_execute(): search collapsed
707 conv_unreadable_latin(): include 0x7f as an unreadable character.
708 conv_localetodisp(): don't remove 8bit characters by default.
709 conv_get_current_charset()
710 conv_get_outgoing_charset(): return ISO-8859-15 if "@euro" is
711 appended at the last of locale name.
712 * src/compose.c: compose_write_to_file(): show from and to encoding
713 when code conversion failed.
721 * src/procmsg.h: WRITE_CACHE_DATA(): little speed improvement
722 (thanks to Colin Leroy).
723 * src/mh.c: mh_get_msginfo(): added NULL check (thanks to Thorsten
728 * src/textview.c: textview_write_line(): don't convert if conv is
734 renamed conv_guess_encoding() to conv_guess_ja_encoding().
735 conv_localetodisp(): new. It removes unreadable characters from
736 (assumed) current locale string.
737 conv_codeset_strdup(): convert into ISO-8859-1 if dest_code is
738 NULL and current locale encoding is US-ASCII.
739 conv_get_code_conv_func(): return conv_ustodisp if US-ASCII is
740 specified for destination charset.
741 * src/textview.c: textview_write_line(): use conv_localetodisp()
742 instead of strncpy2() if conversion failed.
746 * src/codeconv.c: conv_iconv_strdup()
748 imap_modified_utf7_to_locale()
749 imap_locale_to_modified_utf7(): use ICONV_CONST macro to remove
750 a warning on some systems.
751 * src/codeconv.c: conv_iconv_strdup(): flush iconv() output and
753 Return NULL instead of incomplete string if conversion failed.
757 * src/summaryview.c: summary_execute(): select appropriate node
758 if currently selected node is to be deleted.
759 * src/gtkutils.[ch]: gtkut_ctree_node_is_selected(): new. Returns
760 TRUE if the specified node is selected.
764 * src/summaryview.c: summary_status_show(): fixed a occasional crash
765 on deleting or moving.
769 * src/codeconv.c: conv_unreadable_eucjp(): made the validity check
770 of EUC-JP more accurate.
771 isprintableeuckanji(): new. Use table for validity check of EUC-JP.
783 * src/quoted-printable.c: qp_encode_line(): fixed linebreak
784 duplication bug if the source string has CRLF.
786 canonicalize_str(): new. Returns newly allocated canonicalized
788 uncanonicalize_file(): new. Uncanonicalize (CRLF -> LF) text.
789 uncanonicalize_file_replace(): new.
790 * src/compose.c: always canonicalize body before processing, and
791 uncanonicalize before returning.
795 * src/procmime.c: procmime_get_encoding_for_charset(): prefer
796 ENC_8BIT for Russian charsets.
797 * src/compose.c: compose_write_to_file(): use base64 when signing
802 * src/prefs_common.c: prefs_send_create(): added a description for
803 the setting of Content-Transfer-Encoding.
807 * src/codeconv.c: fixed locale_table for Russian locales (thanks to
809 * src/procmime.c: procmime_get_encoding_for_charset(): return
810 ENC_BASE64 for ISO-8859-5, KOI8-* and Windows-1251.
811 * src/compose.c: compose_attach_append(): set correct Content-
812 Transfer-Encoding for message/rfc822.
813 compose_write_to_file(): enabled user-definable Content-Transfer-
815 * src/prefs_common.[ch]: added an option for user-defined Content-
820 * src/quoted-printable.[ch]: qp_encode_line(): fixed a bug if the
821 line doesn't end with linebreak.
825 * implemented quoted-printable encoding.
826 * src/quoted-printable.[ch]: qp_encode_line(): new.
828 compose_write_to_file()
829 compose_write_attach(): implemented quoted-printable encoding.
830 compose_attach_property_create(): enabled quoted-printable menu
832 * src/procmime.c: procmime_get_encoding_for_charset(): return
833 ENC_QUOTED_PRINTABLE for ISO-8859-* and CP125* charset.
834 * src/Makefile.am: added $(LIBICONV) to sylpheed_LDADD for libiconv
841 src/utils.[ch]: get_abbrev_newsgroup_name(): improved the way
842 of abbreviation of newsgroup name.
846 * configure.in: show the result of iconv detection.
850 * src/codeconv.[ch]: made the transition from libjconv to iconv().
851 conv_iconv_strdup(): new.
855 src/prefs_common.c: replaced HAVE_LIBJCONV to HAVE_ICONV.
861 src/prefs_folder_item.c: English fix (property -> properties).
862 * src/prefs_filter.c: alert if entry is not saved.
863 prefs_filter_dialog_to_filter(): new.
867 * src/codeconv.c: conv_encode_header(): fixed a bug which output raw
868 strings after linefeed.
873 * src/codeconv.[ch]: code cleanup and optimization.
874 conv_code_converter_new()
875 conv_convert(): use functions obtained by conv_get_code_conv_func()
877 conv_codeset_strdup(): code cleanup.
878 conv_get_code_conv_func(): added an argument for destination
879 character set, and generalized.
883 * src/codeconv.c: LBREAK_IF_REQUIRED(): break line only if some
885 * src/compose.c: compose_convert_header(): remove trailing spaces.
886 * src/customheader.c: custom_header_read_str(): strip the spaces
888 * src/prefs_customheader.c: prefs_custom_header_clist_set_row():
889 strip the spaces of name and value.
897 * src/codeconv.c: conv_encode_header(): fixed a bug which will run
898 into infinite loop when encountering invalid characters.
902 * src/procmsg.[ch]: procmsg_sort_msg_list(): new. It sorts message
904 * src/summaryview.c: summary_show(): removed summary_sort() because
905 it is done inside folder_item_get_msg_list(). This will improve
906 the performance of summary display.
907 Sorted out the summary sort functions using macros.
911 src/folder.[ch]: folder_item_get_msg_list(): return pre-sorted
912 list if FolderItem::sort_key is set.
913 Added SORT_BY_TO to FolderSortKey enum.
914 * src/mainwindow.c: added "View/Sort/by recipient".
922 * src/codeconv.c: conv_encode_header(): fix for redundant space on
924 * src/compose.c: compose_convert_header(): always pass string to
925 conv_encode_header() for line-breaking.
929 * src/textview.c: textview_make_clickable_parts(): fixed incorrect
930 parsing of email addresses.
934 * src/defs.h: added DEFAULT_BROWSER_CMD.
935 * src/mimeview.c: mimeview_view_file()
936 src/prefs_common.c: prefs_other_create()
937 src/utils.c: open_uri(): changed the default web browser to
938 mozilla, and changed 'raise' command (which is undocumented)
939 to 'new-window' in 'netscape -remote'.
943 * src/compose.c: compose_send_control_enter(): fixed crash on
944 Ctrl-Enter when Message/Send has no accelerator key (thanks to
952 sort_summary_type_cb(): prevent unwanted processing on unchecking
957 * src/main.c: process command line option before gtk_init() to
958 enable remote operation without X (thanks to Ruslan N. Balkin).
959 * src/codeconv.c: conv_encode_header(): fixed a potential buffer
964 * src/Makefile.am: changed $(target_alias) to $(target_triplet)
965 (the spec of autotools seems to be changed).
969 * src/imap.c: get path separator using LIST command if server
970 doesn't support NAMESPACE (based on the patch by Brian Sammon).
971 imap_parse_list(): added an argument to return path separator.
972 imap_get_namespace_by_list(): new.
976 * src/addr_compl.c: add_address(): removed the debug print.
977 * src/gtkutils.[ch]: gtkut_window_popup()
978 src/mainwindow.c: main_window_popup(): applied the patch to fix
979 the behavior of window popup from Sergey Vlasov (thanks!)
980 * src/account.c: account_edit_create(): use signal_connect_after
981 for row_move signal to fix the row position bug.
982 account_row_moved(): scroll the CList half page.
983 * src/prefs_filter.c: prefs_filter_row_move(): scroll the CList
985 * src/summaryview.c: summary_reply(): use selection text only if
986 the displayed message is selected (thanks to Sergey Vlasov).
990 * src/codeconv.c: conv_encode_header(): reimplemented the routine
991 of MIME header encoding. And use Q-encoding method if the current
992 locale is single-byte one.
993 * src/utils.[ch]: is_next_nonascii(): take multi-byte string instead
994 of wide-character string. Consider control codes as non-ASCII.
995 get_next_word_len(): new. It returns the length of next word.
996 is_next_mbs(), find_wspace(): removed.
997 * src/quoted-printable.[ch]: new.
998 qp_decode_line(): decodes one QP line.
999 qp_decode_q_encoding(): decodes Q-encoded string in MIME header.
1000 qp_get_q_encoding_len(): returns the length when a string is
1002 qp_q_encode(): Q-encode a string (RFC 2047).
1003 * src/unmime.c: moved the functions for quoted-printable to
1008 * src/send.c: send_message_local(): escape line that only have one
1009 dot character (postfix's sendmail command will stop there).
1013 * src/send.c: send_message_local(): don't escape first-dot line
1014 (thanks to Sergey Vlasov).
1018 * autogen.sh: added 'libtoolize --force --copy' to override the
1020 * acconfig.h: removed.
1021 * configure.in: increased minimal version of GPGME to 0.3.10.
1022 Fixed checking of XIM.
1024 ac/gnupg-check-typedef.m4: added an argument for comment.
1028 * src/imageview.[ch]: fixed conflicting declarations of
1029 imageview_show_image() (thanks to Thorsten Maerz).
1033 * src/compose.c: compose_entry_append(): don't add ", " on subject
1035 * src/codeconv.c: conv_get_outgoing_charset(): obtain outgoing
1036 charset from the table (currently disabled for non-Japanese locales).
1037 conv_get_current_locale(): also refer to LC_CTYPE.
1041 * README: added a description about hidden settings.
1045 * src/prefs_common.[ch]: reorganized the common prefs dialog.
1046 Made enable_hscrollbar and bold_unread hidden options.
1050 * src/quote_fmt_parse.y: fixed a parse error (thanks to Andreas Hinz).
1055 account_find_from_message_file()
1056 account_find_from_msginfo(): new. They find an account from the
1057 headers like 'From:', 'X-Sylpheed-Account-Id:', and 'AID:' in the
1060 compose_reedit(): restore messages' previous account on composition.
1061 compose_write_headers(): add 'X-Sylpheed-Account-Id:' header
1066 * src/compose.c: cleaned up the code using compose_entry_set()
1067 (don't use gtk_entry_set_text() directly).
1071 * src/imap.c: imap_parse_namespace(): fixed a memory leak.
1075 * updated autotools and libtool to the latest version.
1076 * configure.in: added AC_PREREQ(2.50).
1080 * src/textview.c: textview_set_font(): fix for message display in
1081 UTF-8 locales (thanks to Sergey Vlasov).
1085 * src/imageview.[ch]: imageview_show_image(): resize images to fit
1086 the window size if specified.
1087 * src/prefs_common.[ch]: added an option 'Resize attached images'.
1091 * refactoring for SMTP implementation.
1092 * src/session.h: added ui_func to Session.
1093 * src/smtp.[ch]: separated the connection routine from
1094 smtp_session_new() to smtp_connect().
1095 Changed the argument of every function other than smtp_ok() from
1096 SockInfo to SMTPSession.
1097 Call UI callback from each functions.
1098 * src/send.c: send_message_smtp(): separated the code for UI update
1099 into send_progress_dialog_update().
1103 * src/smtp.[ch]: separated smtp_auth() from smtp_from().
1104 * src/send.c: send_message_smtp(): call smtp_auth() and display
1105 the state to the dialog.
1109 * src/filter.c: strmatch_regex(): use extended regex (thanks to
1111 * src/main.c: main(): removed the code for assortrc -> filterrc
1113 * src/gtkutils.c: gtkut_font_load(): only use gdk_font_load() if
1114 current locale is C or POSIX.
1115 gtkut_stext_is_uri_string(): include "www." for URI string.
1116 * src/textview.c: textview_make_clickable_parts(): include "www."
1125 * src/textview.c: textview_add_part(): indicate signature status
1126 using different colors.
1130 * src/folder.c: folder_write_list_recursive(): escape
1131 To/Cc/Bcc/Reply-To strings.
1135 * src/codeconv.c: conv_encode_header(): enabled B-encoding of
1136 headers on locales other than Japanese when not using libjconv.
1140 * src/inc.[ch]: added INC_IO_ERROR to IncState. Also added its
1141 corresponding error message.
1142 inc_pop3_session_do(): set INC_IO_ERROR instead of INC_NOSPACE
1147 * src/prefs_account.[ch]: removed prefs_account_save_config() since
1149 * src/procmime.[ch]: removed procmime_mimeinfo_free() since
1150 procmime_mimeinfo_free_all() can be used in every case.
1154 * src/account.c: account_get_special_folder(): support F_INBOX, and
1159 * src/compose.[ch]: ComposeEntryType: changed COMPOSE_* to
1160 COMPOSE_ENTRY_*, and added
1161 COMPOSE_ENTRY_{REPLY_TO,SUBJECT,FOLLOWUP_TO}.
1164 compose_redirect(): added FolderItem to the arguments, and reflect
1165 settings in the item.
1166 compose_entry_set(): new.
1167 compose_entry_append(): code cleanup.
1168 compose_entries_set_from_item(): take ComposeMode in its arguments,
1169 and enabled FolderItem::use_auto_to_on_reply.
1170 * src/summaryview.c: summary_reply(): pass folder_item to
1171 compose_{reply,forward,redirect}().
1175 * src/gtkutils.[ch]:
1176 gtkut_font_load(): new. It automatically choose font or fontset
1178 gtkut_font_load_from_fontset(): new. It tries to load single font
1179 instead of fontset from a fontset string.
1183 src/summaryview.c: workaround for the problem that couldn't display
1184 8-bit characters in C or POSIX locale (use font instead of fontset).
1187 src/textview.c: made code cleanup using gtkut_font_load*().
1191 * src/mh.c: mh_get_msginfo(): set correct message number.
1195 * src/folder.[ch]: added a new virtual method Folder::get_msginfo().
1196 It returns a new MsgInfo associated to a message number.
1197 folder_item_get_msginfo(): new.
1198 * src/imap.[ch]: imap_get_msginfo(): new.
1199 * src/mh.[ch]: mh_get_msginfo(): new.
1200 * src/news.[ch]: news_get_msginfo(): new.
1204 * src/codeconv.c: conv_euctojis(): fixed a bug which will cause
1205 infinite loop if an invalid code appeared.
1209 * src/codeconv.c: conv_codeset_strdup()
1210 src/html.[ch]: html_read_line(): don't output conversion failure
1212 Added HTML_CONV_FAILED to the enum HTMLState.
1216 * implemented per-folder auto-set address (still in progress).
1217 * src/compose.[ch]: compose_new(): added FolderItem to its arguments,
1218 and set entries from it (if mailto is empty).
1219 compose_entry_append(): activate menu if required.
1220 compose_entries_set_from_item(): new.
1221 * src/folder.[ch]: added auto_to, use_auto_to_on_reply, auto_cc,
1222 auto_bcc, and auto_replyto to FolderItem, and renamed apply_sub to
1224 folder_build_tree(), folder_read_folder_func(),
1225 folder_write_list_recursive(): added the above members.
1226 * src/prefs_folder_item.[ch]: added auto-set addresses.
1227 * src/pop.[ch]: removed Pop3State::prev_folder.
1231 * src/compose.c: allow dropping files by also "moving" files from a
1232 file manager (thanks to Alfons).
1236 * compose_reply_set_entry(): made Reply-To have priority over
1237 List-Post on ML reply.
1241 * src/gtksctree.[ch]: gtk_sctree_set_anchor_row(): new.
1242 * src/summaryview.c: summary_step(): fixed a bug that lost the
1243 correct selection anchor.
1244 summary_key_pressed(): use gtk_sctree_select() instead of
1248 src/recv.c: differentiate disk full and socket errors
1249 (thanks to Colin Leroy).
1253 * src/account.c: account_edit_prefs(): removed unused variables.
1254 * src/compose.[ch]: separated WITH_QUOTE/WITHOUT_QUOTE flags in
1257 compose_reply_set_entry(): receive reply type with one argument.
1258 * src/summaryview.c: summary_reply(): reduced conditional branches.
1262 * src/compose.c: compose_redirect(), compose_reedit(): strip CR
1263 from line ends (thanks to Sergey Vlasov).
1264 * src/folderview.c: renamed 'Rescan folder tree' to 'Rebuild
1269 * src/folder.[ch]: added a virtual method Folder::remove_msgs().
1270 * src/imap.[ch]: implemented imap_remove_msgs() which expunges
1271 messages all at once.
1275 * src/account.[ch]: account_open(): new. It opens account prefs
1276 dialog and reflects to UI when finished.
1278 folderview_button_pressed()
1279 folderview_property_cb(): open account prefs dialog when the
1280 property of the root folder of remote account is requested.
1284 * src/account.c: account_destroy(): unref account information in
1286 * src/folder.[ch]: folder_unref_account_all(): new. It unref the
1287 specified account information in all folders.
1289 folderview_rm_imap_server_cb()
1290 folderview_rm_news_server_cb(): destroy Folder first because
1291 folder_destroy() refers to account information.
1295 * src/account.c: account_find_from_item(): fixed a bug which didn't
1296 select the correct account.
1297 * inc_pop3_session_do():
1298 fixed the resource leak when SSL initialization failed.
1299 Immediately break from temporary event loop if cancelled.
1303 * src/account.[ch]: account_find_from_item(): new.
1305 compose_reply(), compose_forward(), compose_redirect()
1306 src/mainwindow.c: compose_cb(): select optimal account when
1308 * src/folder.[ch]: added FolderItem::apply_sub.
1309 * src/menu.[ch]: menu_find_option_menu_index(): new. It finds the
1310 index of option menu which contains the specified data.
1311 * src/prefs_folder_item(): added Compose tab, and the setting of
1316 * configure.in: added $LDAP_LIBS for lber library detection.
1324 * src/procmsg.c: procmsg_msginfo_get_full_info(): fixed a memory
1325 leak, and added error checking.
1329 * src/compose.[ch]: added a flag Compose::use_newsgroups, and
1330 removed Compose::orig_account.
1331 compose_check_for_valid_recipient(): check only enabled entries.
1332 compose_write_headers()
1333 compose_redirect_write_headers(): add Newsgroups header only
1334 when the entry is enabled.
1335 compose_send(): modified the method of finding a mail account
1336 from a news account so that it tries to match the From address.
1337 * src/send.c: send_message_queue(): enabled the queueing of news
1339 * src/news.[ch]: news_post_stream(): new.
1343 * configure.in: check lber first and use $LDAP_LIBS on the check
1348 * po/*.po: fixed many typos of format strings which will lead to
1349 crash (thanks to Sergey Vlasov).
1353 * src/procheader.c: procheader_parse_stream(): added Cc header
1354 to the target for full parsing.
1355 * src/procmsg.[ch]: procmsg_msginfo_get_full_info(): new. It
1356 returns the full message information from the given information.
1357 * src/compose.c: compose_reply(), compose_forward(): get full
1358 message information for Cc header.
1362 * src/inc.c: inc_account_mail(), inc_all_account_mail(): update
1363 IMAP4 and NNTP folder summary after checking those accounts.
1371 * src/prefs_common.c: prefs_compose_create(): modified the label
1372 of the option for Reply button.
1373 * configure.in: add -lldap and -llber to the 5th argument of
1374 AC_CHECK_LIB() for LDAP library detection.
1379 INSTALL.jp: updated.
1383 * src/mainwindow.c: toggle the behavior of Reply button between
1384 normal reply and reply-to-list.
1385 * src/prefs_common.[ch]: added an option to switch the function
1390 * src/compose.c: compose_new(): removed the workaround for XIM
1391 because it doesn't have any effect and only seems to cause
1396 * src/compose.[ch]: compose_reply(): added a flag for reply-to-ML.
1397 compose_parse_header(): parse also List-Post header.
1398 compose_reply_set_entry(): support reply-to-ML (fall back to
1399 normal reply if ML address is not found).
1402 src/summaryview.c: reorganized Reply menu and added 'Reply to
1404 * src/utils.[ch]: scan_mailto_url(): new. It scans mailto URL and
1405 returns newly allocated parameters.
1409 * src/account.c: account_read_config_all(): set account information
1410 to default before initializing with configuration file.
1411 * src/prefs_account.[ch]: prefs_account_new(): new. It returns a
1412 newly created account information structure initialized by
1413 the default settings.
1418 replace_address_in_edit(): check if newtext is NULL.
1419 completion_window_button_press(): fixed a memory leak.
1420 * src/pop.c: LOOKUP_NEXT_MSG(): don't expire messages whose
1421 recv_time is RECV_TIME_KEEP.
1422 pop3_getrange_uidl_recv(): only set get_all flag if
1423 ac_prefs->getall is set.
1424 pop3_retr_recv(): don't delete messages which are not received
1425 by filter, and set recv_time to RECV_TIME_KEEP in the case.
1426 * src/pop.h: added an enum RecvTime.
1427 * src/inc.c: inc_drop_message(): unlink temporary message file if
1428 not received by filter.
1432 * src/mainwindow.c: added 'Edit/Select thread' menu.
1433 * src/summaryview.[ch]: added 'Select thread' to the context menu.
1434 summary_select_thread(): new. It selects all messages of current
1439 * src/rfc2015.c: check_signature(): corrected error handling and
1444 * src/rfc2015.c: check_signature(): correctly remove the last empty
1445 line, and canonicalize the file part before verifying (this should
1446 fix incompatibility with Evolution or some other MUAs).
1447 * src/utils.[ch]: copy_file_part(): new. It copies the specified
1448 range of file stream to another file.
1452 * src/compose.c: compose_write_to_file(): force BASE64 encoding for
1453 8-bit text when signing (thanks to Colin Leroy).
1457 * src/prefs_common.c: prefs_send_create(): fixed the charset string
1458 for Cyrillic (Windows-1251).
1466 * src/codeconv.c: changed the charset for ru_RU.CP1251 to
1467 Windows-1251. Added bg_BG locale.
1471 * src/compose.c: account_activated(): change the state of menu items
1472 and entries according to the selected account.
1473 compose_select_account(): new. It changes the state of title bar,
1474 menu items and entries.
1478 * src/inc.c: inc_mail(): correct new_msgs when inc_spool() returned
1480 Don't refresh summary view on fetching when open_inbox_on_inc is
1485 * src/summaryview.c: summary_show(): refresh even if open_inbox_on_inc
1486 is set (to avoid summary refresh problem).
1487 * src/imap.c: removed warnings by checking the existence of directory
1488 before calling remove*_numbered_files().
1492 * src/prefs_common.c: corrected English.
1496 * src/prefs_common.[ch]: added an option: "Mark messages as read
1497 only when opened in new window".
1502 folder_tree_destroy()
1503 folder_write_list_recursive(): added sanity check.
1504 * src/imap.c: imap_scan_tree(): if folder->node is NULL and
1505 can't get session, create empty folder node (based on the
1506 Alfons' suggestion).
1510 * src/textview.c: textview_key_pressed(): pass GDK_Delete event to
1512 * src/summaryview.c: summary_key_pressed(): scroll correct TextView
1517 * src/news.c: news_scan_group(): fixed wrong message number
1522 * major refactoring for POP3.
1523 * src/inc.[ch]: moved Pop3State, inc_pop3_state_new(),
1524 inc_pop3_state_destroy(), inc_get_uidl_table(), and
1525 inc_write_uidl_list() into pop.c.
1526 Moved Pop3State::folder_table and Pop3State::inc_state into
1529 inc_put_error(): added lockbusy state.
1530 inc_pop3_session_do(): obtain inc_state from Pop3State::error_val.
1531 inc_cancel(): don't terminate the automaton here but just set
1532 the flags to prevent crash.
1534 pop3_getauth_pass_recv()
1535 pop3_getauth_apop_recv(): check lockbusy state.
1536 pop3_retr_recv(): check Pop3State::cancelled flag.
1537 * src/automaton.[ch]: added 'cancelled' flag to Automaton.
1538 automaton_input_cb(): terminate if cancelled flag is true.
1539 * sylpheed.desktop: changed Type=Internet to Type=Application.
1540 Added Categories=Application;Network;.
1546 src/progressdialog.c: show detailed information to the status
1548 Added cur_total_recv_bytes to Pop3State.
1549 * src/prefs_common.[ch]: added an option to specify whether to
1550 close receive dialog when finished.
1554 * src/folder.[ch]: folder_get_path(): new. It returns the root path
1558 imap_folder_destroy()
1560 imap_remove_all_msg()
1561 news_folder_destroy(): remove cache directories / files when
1562 deleting Folder / messages.
1566 is_file_entry_exist(): check if the argument is NULL.
1568 remove_numbered_files()
1569 remove_expired_files(): fixed memory leaks on error.
1578 src/smtp.[ch]: made Folder and Session destructor virtual method.
1582 * src/compose.c: do joining of normal lines only when auto-wrapping.
1583 * src/main.c: modified the warning message for GnuPG.
1584 * src/about.c: about_create(): modified the compiled-in features
1586 * configure.in: improved LDAP library checking (thanks to Alfons).
1596 compose_wrap_line_all(): backed out the change to join lines that
1601 * configure.in: require at least gpgme-0.3.5.
1605 * src/alertpanel.c: alertpanel_create(): minor modification.
1614 * src/alertpanel.c: alertpanel_create(): modified the layout.
1615 * src/rfc2015.c: check_signature(): don't abort on error.
1619 * src/compose.c: compose_wrap_line_all(): freeze widget only if
1620 required to repress flickers.
1624 * src/compose.c: improved line wrapping.
1626 compose_wrap_line_all(): also join lines that are not indented.
1627 dump_text(): handle multi-byte strings correctly.
1631 * src/compose.c: compose_wrap_line_all(): fix for auto-wrapping
1632 (go to next line when space is entered at line limit).
1636 * src/inc.c: inc_get_uidl_table(): fixed a memory leak reported by
1641 * src/mh.c: mh_scan_tree_recursive(): disabled Maildir folder
1642 checking to prevent confusion.
1646 * src/folder.[ch]: folder_item_get_msg_list(): added a wrapper for
1647 method Folder::get_msg_list().
1648 * src/account.c: account_edit_prefs(), account_delete(): use
1649 folderview_set_all() instead of folderview_rescan_all().
1650 * src/folderview.[ch]:
1651 folderview_check_new_all(): new. Updates all folders.
1652 folderview_rescan_tree(): confirm before executing.
1653 folderview_rescan_all(): commented out since it's not used anymore.
1654 folderview_update_item_foreach(): added a flag for summary update.
1655 * src/inc.c: inc_finished(): update summary only when
1656 prefs_common.scan_all_after_inc is set.
1657 inc_drop_message(): set mtime of target folder to 0 to force
1658 the updating of summary.
1659 inc_start(), get_spool(): update also summary when updating
1661 * src/mainwindow.c: changed 'File - Rescan folder tree' to
1662 'File - Check for new messages in all folders'.
1666 * src/compose.c: compose_write_to_file(): clearsign message body
1668 compose_clearsign_text(): new. Replaces the string with clearsigned
1670 * src/prefs_account.c: added an option for clearsign.
1671 * src/rfc2015.c: rfc2015_clearsign(): new.
1672 pgp_sign(): added a flag for clearsign.
1673 * src/utils.[ch]: get_tmp_file(): return newly allocated unique file
1674 name (needs to be freed by caller).
1675 str_write_to_file(), file_read_to_str(): new.
1679 * src/procmsg.c: procmsg_read_mark_file(): check key duplication
1680 to avoid memory leak.
1684 * src/base64.c: include string.h for memcpy().
1685 * src/gtksctree.c: use macro ABS() instead of function abs().
1686 * src/prefs_account.c
1687 src/prefs_common.c: renamed 'send' to 'p_send' so as not to
1688 conflict with the function send() in sys/socket.h.
1689 * src/mainwindow.c: commented out the unnecessary functions.
1690 * src/utils.c: canonicalize_file_replace(): correct warning message.
1694 * src/utils.[ch]: get_tmp_file(): new. Returns the directory for
1695 temporary files in ~/.sylpheed/.
1696 * src/main.c: create temporary directory in ~/.sylpheed/.
1698 src/inc.c: create temporary files in ~/.sylpheed/, and modified
1700 compose_exec_ext_editor(): fixed a bug that failed to create the
1701 temporary file if g_get_tmp_dir() returned directory other than
1706 * src/utils.c: copy_file(): check if dest_bak != NULL when unlinking.
1710 * src/utils.[ch]: canonicalize_file_replace(): fixed a bug that fails
1711 to replace the file when the given file and temporary file are not
1712 on the same filesystem.
1713 copy_file(): added a flag whether to keep backup.
1714 move_file(): added a flag whether to overwrite the destination file.
1718 * src/socket.[ch]: fixed the linking failure when IPv6 is enabled.
1719 * src/select-keys.c: modified key selection dialog.
1723 * src/socket.[ch]: my_gethostbyname(): new.
1724 * src/utils.c: get_domain_name(): return FQDN instead of short
1725 hostname (thanks to Bob Woodside).
1726 * src/template.c: made the debug messages less verbose.
1730 * src/prefs_common.[ch]: removed obsolete default sign key setting.
1731 * src/utils.c: canonicalize_file(): correct the error check of
1736 * src/compose.c: compose_write_to_file():
1737 canonicalize line endings before encrypting/signing (this will fix
1738 interoperability with other MUAs).
1739 Removed unnecessary strdup.
1740 Don't encrypt/sign draft message.
1742 canonicalize_file(), canonicalize_file_replace(): new.
1744 src/select-keys.c: changed g_message() to debug_print() and
1746 * src/mimeview.c: mimeview_check_signature(): removed unnecessary
1747 MIME structure scanning.
1748 * src/textview.c: textview_add_part(): show signature status in
1751 src/sigstatus.c: modified translatable strings and some MIME
1756 * src/procmsg.c: procmsg_save_to_outbox(): don't forget to remove
1757 the temporary file when saving from queue.
1763 src/prefs_account.[ch]
1764 src/prefs_common.[ch]: merged GnuPG stuff from the claws branch.
1765 Modified some messages.
1769 * src/textview.c: textview_scan_header(): fixed a memory leak
1774 * src/prefs_actions.c: execute_actions(): put create_io_dialog()
1775 in right conditional block.
1779 * src/compose.c: compose_wrap_line_all(): fixed character buffer
1785 log_error(): add time stamp to log messages.
1790 corrected a typo (HAVE_SYS_SELECT -> HAVE_SYS_SELECT_H)
1794 * src/socket.c: implemented socket I/O timeout.
1796 * src/pop.c: check errors and return error value correctly.
1800 * src/prefs_actions.c: made the action's input/output dialog display
1801 without delay. Made the dialog modal instead of making window
1802 insensitive. Also cleaned up its UI.
1806 * implemented --attach command line option.
1808 Cmd::attach_files: new member to store file paths.
1809 parse_cmd_opt(): added --attach option. --compose option is implied.
1810 prohibit_duplicate_launch()
1811 lock_socket_input_cb(): added "compose_attach" message.
1814 src/textview.c: renamed compose_new_with_recipient() to
1815 compose_new(), and added an argument for attachment files.
1819 * src/logwindow.c: freeze GtkText widget while hidden.
1820 log_window_append(): changed the header for message and warning.
1824 * src/news.c: implement automatic cache expiration.
1825 news_delete_expired_caches(): new.
1826 news_get_article_list(): fixed a bug that nonexistent messages
1827 were not removed from list.
1828 * src/procmsg.[ch]: procmsg_get_last_num_in_msg_list(): renamed
1829 procmsg_get_last_num_in_cache().
1830 * src/utils.[ch]: remove_expired_files(): new.
1835 inc_mail(): force summary refresh when using external command for
1837 inc_all_account_mail(): fixed a bug on spool checking failure.
1848 src/editldap_basedn.c
1850 src/prefs_common.c: fixed memory leaks which didn't free strings
1851 gtk_editable_get_chars() returned. And minor code cleanups.
1853 src/vcard.h: removed C++-style comments.
1857 * src/codeconv.c: conv_encode_header(): fixed a problem in encoding
1858 strings which include both multi-byte and us-ascii characters.
1862 * src/utils.c: remove_numbered_files(): don't try to unlink()
1865 conv_get_code_conv_func(): return conv_anytodisp() if charset is
1867 conv_unmime_header_overwrite()
1868 conv_unmime_header(): do conv_anytodisp() before decoding header.
1876 * src/compose.c: added 'Tools/Actions' menu.
1880 * src/base64.c: a minor fix for BASE64VAL() macro.
1884 * src/base64.c: base64_decode(): fixed a buffer overrun bug.
1892 src/base64.[ch]: rewrote the BASE64 encode / decode routines.
1893 base64_encode(), base64_decode(): new.
1894 * src/rfc822.[ch]: removed.
1896 src/about.c: removed the copyright notice for fetchmail.
1902 src/unmime.[ch]: rewrote the MIME decode routines.
1904 unmime_quoted_printable_line(): new.
1906 procheader_get_one_field()
1907 procheader_get_unfolded_line(): remove also CR.
1911 * libkcc: removed from the source tree.
1913 src/about.c: removed the copyright notice for libkcc.
1914 * src/codeconv.c: conv_guess_encoding(): check for ASCII code first
1916 * src/prefs_actions.c: removed unnecessary spaces/tabs.
1920 * src/prefs_actions.c: comply with the coding style.
1921 Modified the UI design.
1922 * src/mainwindow.c: main_window_set_menu_sensitive(): enable Actions
1923 menu when multiple messages are selected.
1927 * src/prefs_actions.[ch]: merged the 'Actions' feature from claws.
1928 update_actions_menu(): simplified the menu deletion.
1929 * src/mainwindow.c: added 'Actions' menu to Tools and Configuration.
1933 * src/codeconv.[ch]: implemented conv_jistoeuc(), conv_euctojis(),
1934 conv_sjistoeuc(), and conv_guess_encoding(). Removed the dependency
1939 * configure.in: added check for strchr.
1943 * src/prefs_common.[ch]
1944 src/inc.c: added an option to inhibit receive error dialog.
1948 * src/account.c: account_find_from_address(): support multiple
1949 addresses in header.
1953 * src/gtksctree.[ch]: changed GtkSCTree::anchor_row from gint to
1954 GtkCTreeNode* so that it won't become invalid after the row move.
1955 Removed dependency to gtkutils.c.
1956 * src/prefs_common.[ch]
1957 src/summaryview.c: summary_selected(): added an option to show
1958 message when cursor keys are pressed on summary view.
1964 src/compose.c: changed "host_alias" to "target_alias" so that it
1965 shows the correct system name on cross-compiling (thanks to
1970 * src/prefs_account.[ch]: added the option menu to force an
1971 authentication method for SMTP AUTH.
1973 src/smtp.[ch]: smtp_from(), smtp_auth(): added an argument to
1974 specify the authentication method for SMTP AUTH.
1975 smtp_ehlo(): allow AUTH responses that don't comply with the RFC.
1979 * src/prefs_common.[ch]
1980 src/compose.c: enabled "Wrap on input".
1984 * src/summaryview.[ch]
1985 src/mainwindow.c: added "Go to/{Prev,Next} new message" menu.
1986 Made some code cleanups.
1991 src/prefs_common.[ch]: added the hidden option to specify the
1992 policy of the vertical scrollbar on folder view.
1996 * src/messageview.[ch]:
1997 messageview_copy_clipboard(): fixed a bug that couldn't copy text
1999 messageview_get_current_textview(): new.
2000 messageview_get_text_widget(): removed.
2001 * src/quote_fmt_parse.y: quote message even if msginfo is empty.
2002 * src/compose.[ch]: implemented the "Paste as quotation" feature.
2003 text_inserted(): new callback for "insert_text" signal.
2004 Add quote mark to the pasted text if Compose::paste_as_quotation
2009 * src/compose.c: if the Content-Type of a file is text/*, check
2010 its content and set the optimal Content-Transfer-Encoding (thanks
2015 * src/textview.c: textview_key_pressed(): pass key press event to
2016 main window to activate menu shortcuts (thanks to Alfons).
2020 * src/folder.c: folder_build_tree(): use strtoul() instead of atoi()
2021 for mtime to prevent flooring.
2024 imap_move_msgs_with_dest()
2025 imap_copy_msgs_with_dest(): fixed a bug that prevented multiple
2027 imap_parse_envelope()
2028 imap_cmd_envelope(): use RFC822.HEADER instead of ENVELOPE to get
2029 full information of messages and simplify the parser. Also fixed
2030 the bug that References header was ignored on threading.
2031 imap_parse_one_address()
2032 imap_parse_address(): removed.
2033 imap_get_header(): new. It reads the RFC822 header and returns
2034 a newly allocated string.
2035 * src/procheader.[ch]: changed procheader_parse() to
2036 procheader_parse_stream() and added different interfaces for it.
2040 * po/zh_TW.Big5.po: fixed a mistake that caused a crash.
2048 * src/inc.c: inc_get_uidl_table(): fixed a bug that garbage time
2049 could be inserted into the hash table.
2050 inc_write_uidl_list(): a minor code cleanup.
2051 * src/mainwindow.c: main_window_get_current_state():
2052 make the state unexecutable on an empty folder.
2053 * src/summaryview.c: summary_sort(): don't sort on an empty folder.
2054 * src/pop.c: minor code cleanups.
2058 * src/prefs_account.c: CREATE_RADIO_BUTTONS(): fixed a typo and
2059 corrected the behavior of the radio buttons.
2063 * implemented 'Delete messages after N days' feature for POP3.
2065 inc_get_uidl_table()
2066 inc_write_uidl_list(): moved the location of UIDL list file from
2067 RC_DIR/uidl-* to RC_DIR/uidl/*.
2068 Added received time for each UIDLs.
2069 src/main.c: main(): create RC_DIR/uidl/ directory.
2070 src/pop.[ch]: LOOKUP_NEXT_MSG(): delete expired messages here.
2071 Added recv_time to Pop3MsgInfo.
2072 src/prefs_account.[ch]: added an option for the number of days for
2081 * src/folder.c: folder_set_missing_folders(): fixed a bug that
2082 caused multiplication of special folders on startup if their
2084 * src/folderview.c: folderview_remove_mailbox_cb(): modified the
2089 * src/compose.c: compose_reply(), compose_forward(): reverted the
2090 last change since it causes lockup problem.
2094 * src/compose.c: compose_reply(), compose_forward(): don't autowrap
2096 compose_new_with_recipient(): workaround for initial XIM problem.
2100 * src/mainwindow.c: sort ascending / descending order can be
2101 specified with separated menu items.
2102 Added "View/Sort/Don't sort" menu item.
2103 * src/summaryview.[ch]: summary_sort(): added an argument for
2108 * implemented persistent sort order.
2110 folder_build_tree(): read 'sort_key' and 'sort_type' attributes.
2111 folder_write_list_recursive(): write sorting state.
2113 src/summaryview.[ch]: summary_show(): sort if required.
2114 select the top node on descending sort.
2115 Removed SummarySortType and sorting state variables from
2123 src/prefs_account.[ch]: enabled NNTP over SSL.
2124 * src/nntp.c: nntp_group(): issue MODE READER command and retry
2125 when GROUP command once failed (this seems to avoid problems on
2126 some broken news servers).
2130 * faq/it/*.html: corrected DOS linebreaks.
2131 * faq/*/*.html: changed ">" to ".
2135 * src/prefs_account.c: prefs_account_protocol_activated(): hide
2136 unnecessary frames in SSL tab.
2142 src/prefs_account.[ch]: enabled STLS command in POP3.
2143 * src/account.c: account_clist_set_row(): display TLS setting.
2147 * src/compose.c: compose_send_later_cb(): support redirect function.
2150 src/prefs_account.[ch]: enabled STARTTLS command in IMAP4.
2152 src/smtp.[ch]: use SSLType instead of SSLSMTPType.
2156 * src/utils.[ch]: make_dir(): wrapper for mkdir() and chmod().
2157 * src/compose.c: compose_create(): removed unrequired lines.
2161 * src/news.c: news_scan_group(): fixed a bug that set the wrong
2162 values in some cases.
2163 * src/prefs_account.c: corrected English in Advanced - Folder
2168 * src/textview.c: textview_show_message(), textview_show_part():
2169 fixed a bug that GtkSText *text pointed the incorrect object.
2170 textview_add_part(): freeze GtkSText while adding RFC822 headers.
2171 textview_show_part(): fixed a bug that couldn't display single
2172 part MIME message as text.
2176 * src/compose.c: compose_redirect_write_to_file(): correct the target
2177 for change_file_mode_rw(). Check if fclose() succeeded. Unlink
2178 incomplete file when an error occured.
2183 compose_create(): disable menus for draft on redirection mode.
2184 compose_redirect_write_to_file(): correct the error handling of
2186 * src/prefs_common.c: turned off the "Display recipient on `From'
2187 column if sender is yourself" option by default.
2191 * src/compose.[ch]: implemented 'Redirect' (aka Bounce) feature.
2192 Based on the implementation of the claws branch.
2193 compose_redirect(): create a new window and make it uneditable.
2194 compose_redirect_write_to_file(): copy headers and body of
2195 original message except for some.
2196 compose_redirect_write_headers(): add extra "Resent-*" headers.
2197 compose_create(): set menu sensitivity for redirection mode.
2201 * src/codeconv.c: conv_encode_header(): fixed a bug that unnecessary
2202 space is inserted between encoded string and the following folded
2203 one (thanks to Masahiro Tomita).
2207 * src/mainwindow.[ch]: some refactoring has been made.
2208 main_window_toggle_message_view(): moved summary_toggle_view_real()
2210 * src/messageview.[ch]: messageview_is_visible(): new.
2211 * src/summary_search.c
2212 src/summaryview.[ch]: SummaryView::msg_is_toggled_on: removed.
2213 Instead use messageview_is_visible().
2217 * src/mainwindow.c: added 'Expand/Collapse all threads' menu.
2218 * src/summaryview.[ch]:
2219 summary_expand_threads(), summary_collapse_threads(): new.
2223 * src/mainwindow.c: Fixed the behavior of
2224 '/View/Show or hide/Folder tree' and
2225 '/View/Show or hide/Message view' toggle menu.
2226 Removed '/View/Toggle summary view' menu and integrated the
2227 function into '/View/Show or hide/Message view'.
2228 main_window_set_widgets(): change the state of toggle menu items.
2229 * src/prefs_common.c: prefs_keybind_apply_clicked(): updated menurc
2234 * src/mimeview.c: mimeview_set_multipart_tree(): show single part
2235 MIME contents other than text as children of message/rfc822 part.
2237 procmime_mimeinfo_next(): modified for message/rfc822 part which
2238 content-type is single part MIME.
2239 procmime_scan_multipart_message(): fix for nested message/rfc822
2240 part. Corrected the size of the contents of message/rfc822.
2241 * src/textview.c: textview_show_part(): extract the contents of
2242 multipart/* and message/rfc822. Some code cleanups.
2243 textview_add_parts(): new. It adds the all parts under a part to
2245 textview_clear(): reset body_pos and cur_pos.
2249 * src/addr_compl.c: modified so that it behaves better.
2250 get_address_from_edit(): ignore comma inside of brackets.
2251 completion_window_apply_selection(): new. Only apply the current
2253 completion_window_accept_selection(): removed.
2254 address_completion_complete_address_in_entry(): minor code cleanup.
2255 don't replace address in entry here.
2256 completion_window_select_row(): always apply clist selection to
2258 completion_window_key_press(): don't apply selection here.
2262 * src/imap.c: imap_create_folder(): keep trailing directory separator
2263 to create a folder that contains sub folder.
2267 * src/foldersel.c: sort tree with case insensitive.
2268 * src/mainwindow.c: allsel_cb()
2269 src/messageview.c: messageview_select_all(): fixed 'Select all'
2271 * src/mainwindow.c: removed common and account prefs button from
2276 * src/compose.c: compose_account_option_menu_create(): check if
2285 * manual/ja/*: updated the Japanese manual (thanks to Yoichi Imai).
2286 manual/en/*: updated the English manual.
2288 faq/it/*: added German and Italian FAQ.
2291 faq/fr/*: updated FAQs.
2293 src/mainwindow.c: added German and Italian language.
2297 * src/prefs_account.c: turn off "receive at get all" option by default
2298 when creating an IMAP or News account.
2302 * src/imap.c: imap_scan_tree(): don't use namespace for prefix.
2303 * src/prefs_folder_item.c: show also identifier path.
2304 Made layout using table. Show uneditable entry using background
2306 * src/procmime.c: procmime_get_tmp_file_name(): generate safe
2311 * src/automaton.[ch]: added UI callback to Automaton.
2313 src/pop.c: use callback instead of calling inc_progress_update()
2315 pop3_getrange_uidl_recv(): don't fall back to LAST when 'get all'
2320 * src/folderview.c: properly sort abbreviated newsgroups.
2325 src/prefs_common.[ch]
2326 src/summaryview.c: added an option to specify the minimum length
2327 for abbreviated newsgroups name.
2331 * src/folderview.c: folderview_check_new(): skip unselectable folders.
2332 * src/summaryview.c: added 'Create filter rule' to the context menu.
2333 * src/imap.c: some code cleanups.
2334 imap_scan_tree_recursive(): get path separator for each calls.
2335 imap_get_path_separator(): new.
2339 * src/imap.[ch]: supported namespace for others/shared folders
2341 imap_parse_namespace(): parse also others/shared namespace.
2342 imap_find_namespace(): search also others/shared namespace.
2344 strchr_parenthesis_close(): return pointer to closing parenthesis.
2345 strsplit_parenthesis(): split parenthetic list into array of
2350 * src/procheader.c: procheader_date_parse(): fixed a bug that didn't
2351 parse date string like "Mon,6 May 2002 20:31:12 +0800".
2352 procheader_scan_date_string(): new. Separated string scanning
2353 part from procheader_date_parse().
2357 * src/summary_search.c: summary_search_execute(): unlock while
2358 selecting summary row (thanks to Martin Schaaf).
2359 * src/summaryview.c: summary_set_column_titles(): reversed the
2360 direction of the arrow so that it matches with Win/Mac style.
2364 * src/compose.c: compose_write_headers(): quote self address name
2365 if required. Some code cleanups. Don't override Newsgroups and
2366 Cc with custom headers.
2367 * src/imap.c: imap_add_msg(): return UID for appended message.
2368 * src/compose.c: compose_queue(): check if queue folder exists.
2369 * src/imap.c: QUOTE_IF_REQUIRED(): quote also other IMAP special
2371 imap_open(): removed an unrequired argument.
2375 * src/utils.[ch]: trim_string(): new. It trim characters longer than
2376 the specified length and adds "...".
2377 * src/folderview.c: trim folder name when displaying dialog.
2381 * src/imap.c: imap_create_folder(): don't add prefix for root INBOX
2383 * src/folderview.c: folderview_select()
2384 src/summary_search.c: summary_search_execute(): lock summary view
2385 while searching (thanks to Martin Schaaf).
2393 * sylpheed*.png: added new app icons by WAKAI Kazunao (thanks!).
2397 * src/summaryview.c: summary_show(): fixed a bug that didn't process
2399 * src/account.c: account_edit_prefs(): fixed a crash bug when account
2401 * src/prefs_account.c: prefs_account_apply(): display error dialog
2402 if account name is empty.
2403 * src/imap.c: changed some log_print() to debug_print() to reduce
2408 * src/mh.c: mh_get_new_msg_filename(): new. It returns the filename
2412 mh_do_move_msgs_with_dest()
2414 mh_copy_msgs_with_dest(): use mh_get_new_msg_filename().
2415 * src/utils.[ch]: added is_file_entry_exist() which returns TRUE
2416 if stat() succeeded.
2418 imap_fetch_msg(): SELECT mailbox before FETCH if required.
2419 imap_scan_folder(): set last_num using the value of UIDNEXT.
2420 imap_select(): return immediately if there is no need for SELECT.
2421 preserve the path of currently selected mailbox.
2422 imap_status(): added UIDNEXT.
2426 * src/folder.c: folder_item_scan(): removed the warning.
2427 * src/inputdialog.[ch]: input_dialog_combo(): added an argument for
2428 setting case sensitivity.
2432 * src/mainwindow.c: main_window_create(): restrict the minimum size.
2436 * src/compose.c: merged the new line-wrapping routine.
2437 join_next_line(): fixed a bug that didn't join multibyte
2439 get_indent_length(): modified enums and variable names.
2440 INDENT_CHARS: don't indent ':'.
2442 folderview_rename_folder_cb()
2443 folderview_delete_folder_cb(): support folder identifier.
2444 folderview_rm_imap_folder_cb(): integrated with
2445 folderview_delete_folder_cb().
2449 * src/folder.[ch]: folder_item_scan(): return -1 if scanning failed.
2450 * src/folderview.c: folderview_check_new(): abort checking if
2451 folder_item_scan() failed.
2455 * src/imap.c: imap_create_missing_folders(): create only INBOX and
2457 * src/prefs_folder_item.c: prefs_folder_item_set_dialog(): made the
2458 type of news folders unchangeable.
2459 prefs_folder_item_destroy(): use prefs_dialog_destroy().
2460 * src/prefs.[ch]: prefs_dialog_destroy(): new.
2464 * src/prefs_account.[ch]: added special folder setting to Advanced
2465 tab. Also moved "IMAP server directory" setting to there.
2466 * src/account.[ch]: account_get_special_folder(): new. It returns
2467 the optimal special folder for accounts.
2468 * src/compose.c: use account_get_special_folder().
2469 * src/prefs_folder_item.[ch]: new. Implemented folder property
2470 dialog, and the special folder settings (most of the functions in
2471 claws are not integrated yet, and the structure is slightly
2473 * src/folderview.c: enabled Property menu.
2477 * src/textview.c: IS_RFC822_CHAR(): make email parser also stop
2478 scanning when encountering separators ',' and ';'.
2482 * src/mainwindow.c: reorderd the menu a bit.
2483 * src/compose.c: made 'Ctrl-Enter' ignore some modifiers.
2484 compose_reply_set_entry(): made 'Reply to sender' work for
2489 * src/compose.c: compose_create(): set geometry hints to restrict
2490 the maximum size of window.
2491 * src/imap.c: imap_parse_list(): don't mark INBOX as \Noselect.
2492 imap_get_uncached_messages()
2493 imap_cmd_fetch(): ignore responses which don't include FETCH.
2497 * COPYING: re-licensed (removal of "NO-VIRUS CLAUSE" and addition of
2498 the clause for OpenSSL).
2502 * src/prefs_account.c
2503 src/smtp.[ch]: fixed a bug that didn't complie with OpenSSL enabled.
2509 src/session.[ch]: first reorganization of SMTP protocol handling.
2510 SMTPSession: new class which is a sub class of Session.
2511 smtp_session_new(): moved send_smtp_open() into this function.
2512 smtp_from(): moved SMTP AUTH calls into smtp_auth().
2513 smtp_auth(): use server response for SMTP AUTH method.
2514 smtp_ehlo(): read server response and set auth type flags.
2515 smtp_helo(): separated EHLO command.
2516 smtp_ok(): return the last server response if the buffer is
2518 * src/esmtp.[ch]: merged into smtp.[ch].
2519 * src/imap.c: imap_session_destroy_all(): use session_destroy().
2523 * src/imap.c: imap_open(): show warning message if IMAP4 session
2524 can't be established.
2528 * src/compose.c: made template able to be inserted into the current
2530 * src/mainwindow.c: moved some menu items under the submenu
2531 '/View/Show or hide'.
2536 src/inc.c: changed folder_find_item_from_path() to
2537 folder_find_item_from_identifier().
2539 src/prefs_filter.c: use folder_item_get_identifier() to specify
2544 * src/folder.[ch]: implemented "folder identifier" (and fixed a bug
2545 existed in claws' implementation).
2546 folder_find_from_name(): find Folder from name and type.
2547 folder_get_identifier(): return Folder id.
2548 folder_item_get_identifier(): return FolderItem id.
2549 folder_find_item_from_identifier(): find FolderItem from id.
2550 folder_get_type_string(): return folder type string.
2551 folder_get_type_from_string(): return FolderType from string
2552 (and fixed the wrong g_strcasecmp() usage).
2554 src/import.c: use folder_item_get_identifier() and
2555 folder_find_item_from_identifier().
2559 * src/imap.c: imap_parse_atom(): fixed a bug that cur_pos didn't
2560 point the correct address after reading the continuous line.
2561 imap_scan_folder(): set new number to 0 if unseen number is 0.
2562 imap_parse_flags(): don't add new and unread flag if \Seen flag
2564 * ac/Makefile.am: removed gpgme.m4 from MACROS.
2568 * fixed the old problem that couldn't add flags to currently opened
2571 compose_send(): update outbox after saving.
2573 compose_draft_cb(): use procmsg_add_flags().
2574 * src/folder.[ch]: added "opened" flag and "mark_queue" list to
2576 * src/main.c: send_queue(): send from all queue folders.
2577 * src/mainwindow.c: send_queue_cb(): send from all queue folders.
2579 procmsg_flush_mark_queue(): new. Write all queued flags into file.
2580 procmsg_add_flags(): new. Add specified flags to the folder.
2581 procmsg_send_queue(): added an argument to specify queue folder.
2582 procmsg_save_to_outbox(): use procmsg_add_flags().
2583 * src/summaryview.c:
2584 summary_show(): up the opened flag of FolderItem.
2585 summary_clear_list(): down the opened flag of FolderItem.
2586 summary_write_cache(): call procmsg_flush_mark_queue().
2590 * src/summaryview.[ch]: trim the tail of folder name and selected
2591 number on the status label if the space is not enough.
2595 * src/imap.c: imap_create_special_folder(): fixed a bug that didn't
2596 set SpecialFolderItemType when creating special folders under
2598 * ac/gpgme.m4: removed.
2600 * ac/missing/gdk-pixbuf.m4
2601 ac/missing/gettext.m4
2603 ac/missing/imlib.m4: added for convenience.
2607 * src/esmtp.c: esmtp_auth(): fixed a bug that some garbages are
2608 shown after the decoded challenge string. Fixed a memory leak.
2610 * src/compose.c: compose_draft_cb(): mark draft messages as read.
2611 * src/folderview.c: folderview_update_node(): disable emphasis
2612 for Outbox and Draft folders.
2616 * src/messageview.c: messageview_show(): fixed a memory leak.
2617 * src/summaryview.c: summary_save_as(): show error dialog if copy
2619 * src/about.c: about_show(): make the window active if it is already
2624 * src/compose.c: show confirmation dialog before sending if Subject
2626 compose_check_entries(): new.
2628 compose_send_later_cb(): use compose_check_entries().
2629 * src/imap.c: imap_parse_atom(): more fix for parsing responses.
2633 * src/imap.c: imap_parse_atom(): fixed a bug that didn't parse the
2634 responses with continuous line correctly, and fixed a memory leak.
2638 * src/undo.c: undo_insert_text_cb(): fixed a crash bug if the text
2640 * src/gtkstext.c: gtk_stext_button_press(): cancel current selection
2641 after pasting with middle button to prevent the selection growth.
2646 folderview_rename_folder_cb()
2647 folderview_delete_folder_cb(): modify filter rules only if the
2648 target folder is in the default mailbox.
2649 * src/utils.c: get_abbrev_newsgroup_name(): removed a redundant
2656 src/prefs_common.c: changed 'Tool' menu to 'Tools'.
2657 Moved 'Delete duplicated messages' under 'Tools'.
2661 * src/folderview.c: SET_SPECIAL_FOLDER(): keep the same parent
2663 * src/imap.c: imap_create_special_folder(): fixed a crash bug
2664 when folder creation failed, and re-try to create folders under
2666 imap_scan_tree_recursive(): don't automatically add namespace
2667 prefix if it's INBOX. Search also under the INBOX for special
2669 * src/foldersel.c: SET_SPECIAL_FOLDER(): keep the same parent
2674 * src/utils.[ch]: get_abbrev_newsgroup_name(): new. It returns the
2675 abbreviated newsgroup name.
2676 * src/folderview.c: folderview_update_node(): display newsgroups
2677 with abbreviated name if name and path is the same.
2678 * src/summaryview.c: summary_status_show(): show the newsgroup with
2684 src/folderview.c: changed the label 'Draft' to 'Drafts'.
2685 * src/imap.c: changed the directory name 'Draft' to 'Drafts'.
2686 imap_create_missing_folders(): fixed the wrong assignment of
2687 Queue folder to draft.
2691 * enabled Sent / Draft / Queue folders on IMAP server.
2692 * src/compose.c: compose_queue(), compose_draft_cb(): use account's
2693 queue and draft folder if they exist.
2695 imap_create_trash(): removed.
2696 imap_create_special_folder(): new. Generalized imap_create_trash().
2697 imap_create_missing_folders(): automatically create missing folders.
2698 imap_is_msg_changed(): added the dummy method.
2699 imap_scan_tree_recursive(): search also Sent, Draft and Queue
2700 folders. Minor code cleanups.
2701 imap_parse_envelope(): check for null strings.
2702 src/procmsg.c: procmsg_read_cache(): add F_QUEUE or F_DRAFT flag
2703 for messages on IMAP folder.
2707 * src/compose.c: compose_send(): use account's outbox folder
2709 * src/procmsg.[ch]: procmsg_save_to_outbox(): changed the API so
2710 that the outbox can be specified.
2714 * src/compose.c: don't save to outbox when messages are queued.
2715 compose_save_to_outbox(): moved to procmsg.c.
2716 * src/procmsg.[ch]: procmsg_send_queue(): save to outbox when
2718 procmsg_save_to_outbox(): new. Removes the queueing headers if
2719 needed, and adds the given file to the outbox.
2723 * src/compose.c: compose_wrap_line(): treat '|' also as quote char.
2724 get_indent_length(): treat ':' and '#' also as quote char, and
2725 cleaned up using strchr().
2729 * src/mainwindow.c: modified some menu items.
2733 * src/defs.h: changed OUTBOX_DIR from "outbox" to "sent"
2734 (current "outbox" will be kept until rescan).
2735 * src/folder.c: folder_set_missing_folders(): create the missing
2738 src/folderview.c: changed 'Outbox' to 'Sent'.
2739 * src/main.c: call folder_set_missing_folders().
2740 * src/mh.c: mh_scan_tree(): create missing folders.
2741 * src/summaryview.c: summary_set_menu_sensitive(): fixed a bug that
2742 didn't set the menu sensitivity correctly.
2747 src/imap.[ch]: implemented folder renaming on IMAP (thanks to Mio).
2748 folderview_rename_folder_cb(): reopen the current folder when
2749 the ancestor is renamed.
2750 imap_rename_folder(): new method implementation.
2752 imap_rename_folder_func(): new.
2753 imap_remove_folder(): remove also the cache directory.
2757 * src/imap.c: implemented locale encoding <-> modified utf-7
2758 conversion, and supported i18n of folder name (thanks to Suzuki
2760 imap_path_separator_subst(): handle the escape characters of
2762 imap_modified_utf7_to_locale()
2763 imap_locale_to_modified_utf7(): new.
2764 imap_create_trash(): modified so that it create the Trash folder
2765 to the correct location when imap directory is specified.
2766 imap_get_real_path(): removed debug print.
2770 * src/socket.c: implemented timeout for DNS lookup and connect().
2771 sock_connect_by_hostname(): timeout support and code cleanup.
2772 sock_connect_with_timeout(): new.
2773 sock_peek(): implemented SSL peek.
2777 * src/messageview.c: messageview_show(): display single-part
2778 text/html messages with the normal text view.
2792 src/prefs_customheader.c
2793 src/prefs_display_header.c
2808 src/xml.c: added 'b' to the option of all fopen().
2816 * src/ssl.[ch]: match its coding style.
2817 * src/compose.c: compose_send_later_cb(): fixed a bug that failed
2821 faq/en/sylpheed-faq*.html
2823 faq/es/sylpheed-faq*.html
2825 faq/fr/sylpheed-faq*.html
2831 src/manual.[ch]: added FAQs in English, Spanish and French.
2835 * manual/en/sylpheed*.html: updated to the latest version.
2840 src/mgutils.c: include string.h to remove warning about strlen()
2854 src/summaryview.c: added break to the last label of switch to
2855 prevent the 'deprecated use of label at end of compound statement'
2857 * src/rfc2015.c: passphrase_cb(): fixed the type of r_hd.
2861 * src/inc.[ch]: preserve the pointer to IncProgressDialog to the
2863 inc_cancel_all(): new. It cancels the all current incorporation.
2864 * src/mainwindow.c: added 'Cancel receiving' menu.
2865 * src/textview.c: a minor fix for single-part MIME messages, and
2866 a bit of cleanup for textview_write_body().
2870 * src/inc.c: inc_write_uidl_list(): fixed a bug that lost UIDL
2871 information if any errors occured before issuing UIDL command.
2872 src/inc.h: added uidl_is_valid to Pop3State.
2873 src/pop.c: set uidl_is_valid to TRUE if UIDL becomes valid.
2881 * src/mimeview.c: mimeview_create(): set the initial notebook page
2883 * src/folderview.c: folderview_selected(): scroll the view if the
2884 selected row is hidden.
2885 * src/prefs_filter.c: prefs_filter_register_cb(): scroll the view
2886 and select the added row.
2887 * src/summaryview.c: fix threading for null message ids.
2891 * src/textview.c: textview_show_message(): follow message/rfc822
2893 textview_add_part(): add a caption before the attached text files.
2894 textview_show_header(): don't add the newline.
2895 * src/messageview.c: enabled message search also in MIME mode.
2899 * src/messageview.c: messageview_show(): set header state of
2900 MimeView's TextView, too.
2901 * src/mimeview.c: mimeview_show_message(): call
2902 textview_show_message() to display message.
2903 * src/textview.c: textview_add_part(): new. It adds the content
2904 of message part without clearing the view.
2905 textview_show_message(): display all parts with appropriate
2907 textview_write_body(): separated from textview_show_part().
2912 src/prefs_common.c: added ISO-8859-15 to the codesets for
2913 displaying and sending.
2914 * src/codeconv.c: conv_codeset_strdup(): return NULL if code
2915 conversion failed, and made caller deal with it.
2916 * src/compose.c: compose_write_to_file(): show error dialog when
2917 code conversion failed, and let user select whether to send it
2919 * src/textview.c: textview_write_line(): show the original string
2920 if code conversion failed.
2924 * src/inc.c: get_spool(): fixed a bug that failed to unlock mbox
2925 if copy_mbox() failed (thanks to Alexander Kabaev).
2926 * src/prefs_account.[ch]: added separate user ID / password setting
2928 * src/send.c: send_message_smtp(): use separate user ID / password
2929 for SMTP AUTH if it is specified.
2934 src/pop.[ch]: refactored the UIDL management.
2935 store the information of messages into the array of Pop3MsgInfo
2936 structure, and do full scanning of not retrieved messages.
2942 src/mainwindow.c: set WMCLASS for window/dialog.
2943 * src/codeconv.c: conv_codeset_strdup(): return source string
2944 when jconv_alloc_conv() failed.
2948 * src/mh.c: mh_scan_tree_recursive(): changed the hardcoded directory
2955 src/summaryview.c: implemented the new notebook tab interface for
2957 * src/textview.[ch]: fixed line space related glitches.
2961 * src/prefs_filter.c:
2962 prefs_filter_rename_path()
2963 prefs_filter_delete_path(): fixed a crash when flt->dest was NULL.
2967 * src/recv.[ch]: cancel data receiving if RecvUIFunc returns FALSE.
2968 * src/pop.c: pop3_retr_recv(): fixed false 'No space' when cancelled
2970 * src/inc.c: inc_pop3_recv_func(): abort data receiving when
2971 cancelled, and fixed potential crash bug.
2972 * src/grouplistdialog.c: enabled cancelling of data receiving.
2973 * src/news.c: news_get_group_list(): destroy current session if
2978 * src/manage_window.[ch]: fixed a bug that caused crash when
2979 the main window was hidden.
2980 MANAGE_WINDOW_SIGNALS_CONNECT(): new macro.
2981 Monitor "unmap_event", "destroy" events.
2988 src/grouplistdialog.c
2992 src/message_search.c
2996 src/prefs_customheader.c
2997 src/prefs_display_header.c
2999 src/prefs_template.c
3000 src/summary_search.c
3001 src/summaryview.c: use MANAGE_WINDOW_SIGNALS_CONNECT() macro to
3002 connect signals for window management.
3006 * src/prefs_account.[ch]: added receive size limit option.
3007 * src/pop.c: skip messages larger than the limit size.
3008 LOOKUP_NEXT_MSG(): new macro.
3009 * src/compose.c: compose_attach_append(): check whether the file
3014 * src/rfc2015.c: commented out dump_mimeinfo() and dump_part().
3015 changed g_message()'s to debug_print() and g_warning().
3016 rfc2015_decrypt_message(): fixed a bug that duplicated message
3017 parts when decryption was failed/cancelled. And made some code
3019 * src/passphrase.c: made the dialog transient.
3020 * src/prefs.c: prefs_config_parse_one_line(): removed debug_print().
3025 src/procmsg.[ch]: fixed a bug that failed to parse multipart
3026 messages if GPGME was enabled.
3027 * src/rfc2015.c: commented out copy_gpgmedata_to_temp() which
3029 * src/prefs_account.c: prefs_account_privacy_create(): modified
3030 the vertical spacing.
3034 * src/menu.[ch]: menu_set_sensitive_all(): new.
3035 menu_set_insensitive_all(): made it a wrapper for
3036 menu_set_sensitive_all().
3037 * src/prefs_account.c:
3038 prefs_account_open()
3039 prefs_account_protocol_set_optmenu(): made the protocol type
3040 unchangeable after creating an account.
3041 * src/compose.c: compose_attach_parts(): traverse MIME tree to
3042 extract all attathed files from nested multipart MIME message.
3046 * src/procmsg.[ch]: procmsg_get_mark_sum(): added arguments to
3047 obtain minimum/maximum number, and to specify first number
3050 src/inc.c: enabled new message checking on news folder.
3051 * src/news.c: news_scan_group(): implemented. Guess new/unread
3052 message number from the response of GROUP command and the mark
3054 news_select_group(): return the total/first/last number.
3055 * src/prefs_account.c: prefs_account_receive_create(): modified
3056 the text of the 'Get all' check button.
3060 * src/account.c: made 'Get all' checkbox available for IMAP4 and
3062 * src/inc.c: corrected the argument of folderview_check_new().
3063 * src/prefs_account.c: modification for the "`Get all' checks for
3064 new mail on this account" checkbox.
3068 * src/folderview.[ch]:
3069 folderview_rescan_tree(), folderview_rescan_all(): renamed from
3070 folderview_update_tree() and folderview_update_all().
3071 folderview_update_all_node(): removed.
3072 folderview_check_new(): new. If the argument is NULL, it checks
3073 all local folders. If the arguments is specified, it checks
3074 the (local and remote) folder.
3077 inc_all_account_mail(): check also IMAP4 account.
3082 folderview_rename_folder_cb()
3083 folderview_delete_folder_cb(): modify the filter rules when folder
3085 * src/prefs_filter.[ch]:
3086 prefs_filter_rename_path(): new. It renames the destination paths
3088 prefs_filter_delete_path(): new. It deletes the filter rules if
3089 the destination paths matched.
3090 * thanks to Neill Miller for above.
3094 * src/compose.c: inherit attached files when forwarding or reediting
3095 (rewrote the code in claws branch).
3096 compose_attach_parts(): new. It extracts and attaches the files
3097 in the given message.
3098 compose_attach_append(): chnaged the types of arguments.
3099 * src/messageview.c: messageview_show(): moved the GPG decryption
3101 * src/procmsg.[ch]: procmsg_open_message_decrypted(): new.
3109 * src/summary_search(): summary_search_execute(): scroll the view
3110 when message view is hidden.
3114 * src/foldersel.c: foldersel_set_tree(): made different type of
3115 folders selectable in moving mode.
3116 * src/folderview.[ch]: folderview_update_msg_num(): compare the
3117 numbers with the CTree's labels, and don't update folder_item here.
3118 * src/imap.c: imap_move_msg(), imap_move_msgs_with_dest():
3119 implemented moving between different type of folders.
3120 * src/mh.c: SET_DEST_MSG_FLAGS(): new macro.
3121 mh_do_move(), mh_do_move_msgs_with_dest(): new (renamed previous
3122 mh_move_msg() and mh_move_msgs_with_dest()).
3123 mh_move_msg(), mh_move_msgs_with_dest(): implemented message
3124 moving between different type of folders.
3125 mh_copy_msg(), mh_copy_msgs_with_dest(): some code cleanups.
3126 * src/summaryview.c: summary_status_show(): update folder_item
3128 * po/POTFILES.in: removed reference to headerwindow.c.
3129 * src/summaryview.c: summary_step(): fixed the behavior on the
3130 head and tail of the list.
3134 * src/mainwindow.c: main_window_set_menu_sensitive(): set 'Show
3135 all header' toggle state from the property of the TextView.
3136 * src/summaryview.[ch]: made 'All header' toggle switch.
3137 Prohibited unnecessary menu update.
3138 summary_select_node(): added the argument 'do_refresh'.
3143 * src/utils.c: strsplit_with_quote(): remove quotation characters
3144 in the function (fix composer's external editor problem) (thanks
3145 to Stefaan A Eeckels).
3146 * src/mainwindow.[ch]: made 'Show all header' toggle switch.
3147 main_window_menu_callback_block()
3148 main_window_menu_callback_unblock(): new.
3149 main_window_set_menu_sensitive(): set the toggle status of
3151 show_all_header_cb(): read the status of toggle menu item.
3152 * src/mainwindow.[ch]: made 'Thread view' toggle switch.
3153 * src/prefs_common.c: prefs_keybind_apply_clicked(): removed
3158 * src/imap.c: imap_add_msg(): fixed a bug that didn't replace
3159 the path separator (thanks to Sergey Vlasov).
3160 * src/gtkutils.c: gtkut_editable_get_selection(): return NULL
3161 if the length of selection is zero.
3162 Fixed the assertion.
3163 * src/utils.c: str_open_as_stream(): return immediately if
3164 the length of str is zero.
3165 * src/headerwindow.[ch]: removed.
3167 src/inc.c: removed stale thread support codes.
3171 * src/procmsg.c: procmsg_open_message(): modified so that it
3172 returns the stream of decrypted message file if it exists
3173 (this fixes the failure of gpg decryption in messageview.c).
3183 src/prefs_template.c
3185 src/quote_fmt_parse.y
3187 src/utils.[ch]: if the part of the message text is selected, use
3188 it for quoted text instead of the entire message body (thanks to
3190 src/utils.[ch]: str_open_as_stream(): new. It returns an
3191 temporary stream for the given string.
3192 * src/main.c: added "--send" command line option.
3193 * src/compose.c: compose_reply_set_entry(): add From address to
3194 Cc if Reply-To and to_all are both specified.
3195 * Makefile.am: correct the Source: line in the RPM spec file in
3200 * src/procmsg.c: procmsg_open_message(): fetch message if the cache
3202 * src/foldersel.[ch]: foldersel_folder_sel(): added an argument
3203 that specifies the folder selection type.
3214 src/prefs_customheader.c
3216 src/summaryview.c: made it compile with C compilers other than gcc
3217 (thanks to Shawn Houston).
3221 * src/imap.c: imap_copy_msgs_with_dest(): fixed a bug on traversing
3223 * src/prefs_common.c: made the key binding setting separate dialog.
3224 * src/addressbook.c: addressbook_format_address(): add "" around
3225 the display name if it contains comma (thanks to Satoshi Watanabe).
3226 * src/addr_compl.c: get_complete_address(): add "" around the
3227 display name if it contains comma.
3228 get_address_from_edit(): handle the quotation character correctly.
3229 * src/addr_compl.c: get_complete_address()
3230 src/addressbook.c: addressbook_format_address(): fixed a bug that
3231 caused wrong text processing if the display name is empty.
3236 * src/compose.c: compose_exec_ext_editor_real(): replaced
3237 g_strsplit() with strsplit_with_quote().
3239 src/folderview.c: folderview_drag_motion_cb(): minor code cleanups.
3241 folderview_drag_motion_cb()
3242 folderview_drag_received_cb(): allow dropping into IMAP4 folder.
3243 * src/utils.c: get_file_size_as_crlf(): use fgets() instead of
3247 imap_copy_msgs_with_dest(): use imap_add_msg() if the source
3248 of the message is different from the current mailbox.
3249 Return the correct value.
3250 imap_cmd_append(): properly implemented the APPEND command.
3255 src/messageview.[ch]
3256 src/summaryview.[ch]
3257 src/textview.[ch]: show all headers in the message view, and don't
3258 use the header window anymore.
3260 src/prefs_common.c: changed the default shortcut of 'compose new
3263 src/summaryview.[ch]: summary_display_msg_selected(): new.
3264 Show the selected message if 'Show all header' is selected.
3266 src/sourcewindow.c: changed some procmsg_get_message_file_path()
3267 to procmsg_get_message_file() to be sure the message is
3269 * src/folderview.c: folderview_drag_motion_cb(): allow DnD from
3270 any folder to MH folder.
3271 folderview_drag_received_cb(): copy messages instead of moving
3272 if the source folder is news or IMAP.
3274 src/summaryview.c: allow copy from news folder.
3278 * src/prefs_common.c: prefs_other_create(): modified the design
3279 of the external command settings.
3280 prefs_keybind_apply_clicked(): made the Mew / Wanderlust keybind
3281 preset closer to the original.
3282 Added Mutt keybind preset.
3283 Also change the compose keybinds.
3284 * src/compose.c: modified some menu shortcuts.
3285 * src/codeconv.c: modified the locale_table for Thai encoding.
3289 * src/Makefile.am: added $(GPGME_CFLAGS) to INCLUDES.
3290 * src/prefs_common.c: prefs_interface_create(): modified the
3291 description for menu shortcut.
3295 * src/gtkutils.[ch]: added gtk_stext_clear().
3298 src/summaryview.[ch]: enabled multiple forwarding.
3299 * src/summaryview.c:
3300 summary_set_marks_selected(): set marks for all selected row.
3301 summary_reply(): moved from summary_reply_cb().
3302 * compose.[ch]: compose_forward(): modified so that it receives
3304 * src/mainwindow.c: cleanup for reply processing.
3305 * src/summaryview.c: summary_reply(): fixed a memory leak.
3306 summary_key_pressed(): removed hardcoded mark / mark as unread
3309 src/prefs_common.c: added mark / mark as unread shortcuts to
3314 * src/compose.c: compose_wrap_line_all(): wrap quoted part even
3315 if prefs_common.linewrap_quote is not set (it is only for
3316 auto-wrapping on reply).
3317 * src/prefs_account.c: prefs_account_open(): initialize tmp_ac_prefs
3318 when creating a new account.
3319 * src/mh.c: mh_get_msg_list(): use also st_ctime to detect
3321 * src/prefs_common.c: prefs_interface_create(): modified the
3322 description of key binds selector.
3326 * src/mimeview.c: fixed multiple dialog / moving by correcting
3327 button / key event processing.
3329 src/textview.c: pass some key press events to MimeView in MIME
3331 * src/prefs_filter.c: fixed a bug that didn't set the order of
3333 * src/prefs_common.c: prefs_keybind_apply_clicked(): fixed
3334 empty_menurc string.
3339 src/prefs_common.c: reorganized the menu shortcuts.
3340 Added 'View - Toggle summary view'.
3341 * src/summaryview.[ch]: summary_toggle_view(): made it public
3343 * src/prefs_common.[ch]: swapped the position of 'Shortcut key'
3345 * src/importldif.c: imp_ldif_delete_event(): fixed segfault when
3346 closing the dialog with window manager (in more appropriate way).
3347 * src/imageview.[ch]
3349 src/mimeview.c: fixed wrong scrolling position when switching
3350 between text and image parts. Also free the unrequired image
3351 (thanks to Sergey Vlasov).
3352 * src/prefs_common.c: disabled 'Go to inbox after receiving new mail'
3357 * src/prefs_common.c: implemented shortcut quick changer.
3358 * src/folderview.c: folderview_key_pressed()
3359 src/summaryview.c: summary_key_pressed(): removed some hardcoded
3365 procmime_get_mime_type()
3366 procmime_get_mime_type_table(): made the MIME type search case
3369 gtk_stext_delete_line(): delete newline on empty line.
3370 gtk_stext_delete_to_line_end(): delete newline if cursor is on
3372 (thanks to Yasuzaki Masayoshi.)
3377 src/gtkstext.[ch]: removed the hardcoded shortcuts in GtkSText,
3378 and made them customizable.
3379 * src/utils.[ch]: added get_file_size_as_crlf() which returns
3380 the file size when converting LF to CR+LF.
3384 * src/compose.c: enabled 'Ctrl-Enter' or
3385 'Ctrl-(other modifier keys)-Enter' shortcut that didn't work
3387 * src/gtkstext.c: disabled some Emacs key bindings.
3388 gtk_stext_key_press(): don't extend selection when Shift-Enter
3389 is pressed to prevent the disapperance of cursor.
3390 * src/summaryview.c: summary_select_next_unread(): added the button
3391 to search unread message again from the beginning to the dialog.
3392 * src/folderview.c: folderview_key_pressed(): go to next unread
3393 folder if space key is pressed on the empty folder.
3394 Move CTree focus before selecting row.
3398 * src/defs.h: modified the XLFD of default fonts.
3399 * src/textview.c: textview_create(): fixed a bug that caused
3400 segfault if font couldn't be loaded.
3402 src/grouplistdialog.c: compare subscribed groups with path.
3403 * src/prefs_filter.c: changed 'Operator' to 'Condition'.
3407 * src/compose.c: compose_wrap_line_all(): fixed wrapping crash
3408 when URL is wider than wrapping margin.
3410 src/prefs_filter.[ch]
3411 src/summaryview.[ch]: added "Create filter rule" function based
3412 on the patch from Luca Rosellini.
3413 * src/summaryview.c: summary_filter_open(): added X-List and
3414 X-Mailing-list to the automatically detected headers.
3418 * configure.in: support Mac OS X (Darwin).
3422 * src/prefs_filter.c: use inc_(un)lock() instead of
3423 inc_autocheck_timer_{remove|set}().
3424 * src/summaryview.c: summary_sort(): use gtk_ctree_sort_recursive()
3425 instead of gtk_ctree_sort_node() so that messages within threads
3427 * src/procmsg.c: procmsg_read_mark_file(): fixed a bug that the
3428 target of sizeof was wrong and caused crash on Alpha architecture
3429 (thanks to Motonobu Ichimura).
3434 foldersel_gnode_func(): made the names of special folders
3436 foldersel_set_tree(): move the special folder to the top.
3437 * src/inputdialog.[ch]: input_dialog_query_password(): new.
3441 src/send.c: use input_dialog_query_password() instead of their
3442 own query functions.
3446 * src/defs.h: modified the default font.
3450 src/news.[ch]: moved the class definition and some methods to
3451 the proper location.
3455 * src/mimeview.c: mimeview_save_as()
3456 src/summaryview.c: summary_save_as(): put the default filename
3457 based on the subject.
3458 * src/utils.[ch]: added subst_chars() and subst_for_filename()
3459 which substitute some special characters with underscore.
3460 * src/filesel.c: filesel_select_file(): select the default filename.
3465 INSTALL.jp: added the description and the URL for libjconv.
3466 * src/mainwindow.c: menu entries cleanup.
3472 src/about.c: modified the copyright year.
3473 * src/gtkstext.h: added the notice for modification by the Sylpheed
3479 INSTALL.jp: added the URL for compface.
3487 * src/headerwindow.c
3490 src/sourcewindow.c: set wmclass when creating windows.
3494 * src/compose.c: compose_wrap_line_all(): fixed the bug that
3495 caused infinite loop when wrapping certain patterns of quoted text.
3499 * src/imap.c: imap_parse_envelope(): put the assertion after
3500 imap_parse_address() to prevent segmentation fault.
3505 src/mainwindow.c: modified some labels of menu items.
3506 * src/ldif.c: put the return value of fgetc() in a gint.
3507 * src/importldif.c: don't brace null strings with _().
3508 * src/compose.c: moved the position of Subject entry to the last.
3509 Reorganized the menu.
3510 compose_draft_cb(): added 'keep editing after saving to draft'
3515 * src/mainwindow.c: reorganization of main menu. Removed 'Summary'
3516 menu. Moved 'Help' menu to just the right of 'Configuration'.
3517 Removed 'File - Close' menu item.
3521 * src/mainwindow.c: some menu reorganization.
3522 * AUTHORS: updated. Added more contributors.
3523 * src/account.c: account_row_moved(): new. Moves displayed row to
3524 the appropriate position when up / down button are pressed.
3525 account_clist_set(): move displayed row to the appropriate position.
3527 src/mainwindow.c: set title and wmclass when creating windows.
3531 * src/gtkstext.c: fixed a bug that didn't show block cursor
3532 correctly. Removed unnecessary GdkGC copy. Fixed cursor
3537 src/undo.c: modified to use GtkSText.
3538 * src/menu.h: added #include <gtk/gtkmenu.h>.
3543 configure.in: added XIM checking for GTK+.
3544 * src/gtkstext.[ch]: new. Copied GtkText in GTK+ and renamed.
3548 * src/filter.c: added #include <sys/types.h>.
3552 * src/template.c: template_write_config(): fixed a typo.
3553 * src/compose.c: toolbar_linewrap_cb(): call compose_wrap_line_all().
3555 src/prefs_filter.c: supported regular expression (thanks to
3557 * src/undo.c: undo_paste_clipboard_cb(): fixed a bug that broke
3558 undo state when pasted clipboard was empty.
3559 undo_check_size(): use g_list_last().
3561 undo_redo(): fixed NULL checking and made a bit of optimization.
3563 * src/prefs_common.c: changed the default value of linewrap length
3568 * reorganization of pixmap management.
3569 * src/stock_pixmap.[ch]: new. This module manages all static pixmaps.
3570 * modified every files which directly use pixmaps data to use
3572 * src/undo.[ch]: renamed undo_set_undo_change_funct() to
3573 undo_set_change_state_func(), and changed its argument from
3574 GtkWidget* to gpointer.
3575 undo_merge(): code cleanup.
3576 * src/compose.c: renamed compose_set_undo() to
3577 compose_undo_state_changed().
3581 * src/account.c: account_find_from_address(): made it case
3583 * src/addressbook.c: addressbook_create(): set wmclass.
3584 * src/compose.c: compose_insert_file(): supported DOS/Win/Mac line
3587 src/ldif.[ch]: merged from the claws branch.
3588 * src/importldif.c: removed some warnings.
3589 imp_ldif_field_list_toggle(): fixed button checking.
3590 imp_ldif_dialog_create(): minor layout fix.
3591 * src/ldif.c: removed some warnings.
3593 INSTALL.jp: updated confirmation list.
3596 vcard_test_read_file(): fixed a memory leak of tagtemp.
3597 Some code cleanups (decreasing the indent level).
3600 src/syldap.[ch]: disabled runtime library checking because JPilot
3601 and LDAP libraries are linked on the build time, and the program
3602 doesn't execute without them anyway.
3604 src/addrindex.c: changed "J-Pilot" to "JPilot".
3605 Removed warning for atoi().
3609 * src/procmsg.c: procmsg_empty_trash()
3610 src/mainwindow.c: main_window_empty_trash(): empty trash only if
3611 it contains some messages.
3612 * src/imap.c: search_array_str(): new.
3613 imap_status(): fixed a bug that didn't parse the command response
3618 * merged undo function (by Jens Oberender).
3619 * src/undo.[ch]: new.
3620 undo_insert_text_cb(): fix for multibyte characters (obtain the
3621 number of letters instead of bytes).
3622 * src/compose.[ch]: added the code for undo.
3623 * src/prefs_common.[ch]: added the interface for setting undo level.
3627 * src/compose.c: compose_template_apply()
3628 src/prefs_template.c: prefs_template_clist_set_row()
3629 src/template.c: template_write_config(): don't replace To: and
3630 Subject: entry in composition window if they are empty.
3638 * src/folderview.c: folderview_drag_motion_cb(): fixed a DnD bug.
3639 * src/ldif.c: ldif_get_line(): ignore CR.
3640 * src/mimeview.c: mimeview_show_message(): search also text/html
3641 for first text part.
3645 * src/prefs_account.c: prefs_account_save_config_all(): fixed a bug
3646 that didn't update accountrc if account_list == NULL (thanks to
3651 * src/utils.h: added the macro Xstrcat_a() that concatenates
3652 two strings and return alloca'd string.
3653 * src/imap.c: imap_scan_tree_recursive(): fixed a bug that didn't
3654 handle folder name which includes some spaces correctly
3655 (based on the patch from Willem van Engen (thanks!)).
3656 * src/compose.c: compose_wrap_line_all(): fixed the crash when
3657 wrapping long lines if linewrap quotation is disabled and
3658 a word spanning more than one line.
3662 * applied the Tobias' patch with modification (thanks!).
3664 imap_msg_set_perm_flags()
3665 imap_msg_unset_perm_flags(): new. They set permanent flags to
3668 src/summaryview.c: set flags on IMAP server when flags are changed.
3672 * src/gtkutils.[ch]: gtkut_container_remove(): new. It's a wrapper
3673 of gtk_container_remove() for workaround of a bug in
3674 Gtk{Text,Entry} (thanks to Sergey Vlasov).
3680 src/textview.c: replaced gtk_container_remove() with
3681 gtkut_container_remove(), and removed previous partial fix.
3685 * src/prefs_account.c: prefs_account_apply(): fixed a bug that
3686 checked user ID on "local", but didn't on IMAP4.
3687 * src/imap.c: imap_session_get(): fixed a crash bug when
3688 rfolder->session == NULL.
3689 * Makefile.am: changed the arguments of tar from 'chojf' to
3691 * src/summaryview.c: summary_toggle_view(): disclaim the selection
3692 of textview before removing vpaned.
3696 * src/messageview.c: messageview_change_view_type(): disclaim the
3697 selection before removing textview. This solves the mysterious
3698 copy-paste disability (thanks to Melvin Hadasht).
3699 * src/textview.c: textview_set_font(): use
3700 gtk_editable_claim_selection() instead of
3701 gtk_editable_select_region().
3705 * src/prefs_template.c: prefs_template_window_create(): supported
3706 address completion on the To: entry.
3711 folder_count_total_msgs()
3712 folder_count_total_msgs_func(): use g_node_traverse() to traverse
3717 * src/compose.c: fixed a bug that empty body was refused.
3718 * src/prefs_template.c: fixed a bug that didn't set To: entry
3719 correctly. Display error dialog if format is illegal.
3720 * src/prefs_common.c
3722 src/quote_fmt_parse.y: changed parenthesis "( )" to curly braces
3723 "{ }" to prevent confusion on using parenthesis.
3724 * src/html.c: html_get_parenthesis(): ignore CSS / script stuff.
3728 * src/prefs_template.c: added colon to the header labels.
3733 src/prefs_template.c
3734 src/template.[ch]: added To field to the template.
3738 * src/textview.c: textview_show_part(): use first found
3739 message/rfc822 header.
3740 * src/folderview.c: added "Search messages..." to the context menu.
3741 * src/prefs_common.c: prefs_quote_description_create(): added
3742 description for characters which need to be escaped.
3746 * src/compose.c: compose_wrap_line_all(): more merging from claws.
3747 GET_CHAR(): renamed GET_TEXT() and made it more generic.
3748 Modified compose_wrap_line() and compose_wrap_line_all() to use
3750 * src/textview.c: textview_show_part(): show the header of nested
3751 RFC822 attachment correctly.
3756 src/main.c: added --status option to get new, unread and total
3757 message count from a running Sylpheed (merged from claws).
3758 prohibit_duplicate_launch(): output '\n' only once.
3763 src/gtkutils.[ch]: merged the new wrapping function.
3764 gtkut_text_str_compare_n()
3765 gtkut_text_str_compare()
3766 gtkut_text_is_uri_string(): backport from the GtkSText in the
3767 claws branch, and made modification.
3768 * src/prefs_template.c
3769 src/template.[ch]: added Subject to the template.
3773 * src/compose.c: compose_write_headers(): added missing parenthesis
3774 that generated invalid custom header (thanks to Masaaki Noro).
3775 Allow Sender: custom header.
3779 * src/procheader.c: procheader_date_parse(): workaround for
3780 RFC-incompliant Date header.
3784 * src/addrbook.c: removed redundant functions, and fixed generation
3785 of spurious address book file names.
3786 * src/addrindex.c: V-Card -> vCard.
3790 * src/textview.c: get_email_part(): replaced isalnum() with
3791 the macro IS_ASCII_ALNUM() which restricts the range of
3792 characters to 7bit ASCII (thanks to Shimamoto).
3793 * src/utils.c: remote_tzoffset_sec(): workaround for malformed
3798 * src/textview.c: textview_show_part(): show headers on nested
3803 * src/imap.c: imap_session_get()
3804 src/news.c: news_session_get(): fixed segfault when reconnection
3806 * src/grouplistdialog.c: removed redundant code, and expand nodes
3807 that doesn't match the pattern.
3811 * src/compose.c: modified so that it sends message when any of
3812 To:, Cc:, Bcc:, or Newsgroups: fields have valid recipient.
3813 compose_check_for_valid_recipient(): new.
3814 * src/grouplistdialog.c: improved the UI.
3815 Added appropriate description and search button.
3816 Search doesn't get group list again.
3820 * src/news.[ch]: news_session_get(): update the last access time
3822 news_group_list_free(): new.
3823 * src/grouplistdialog.c: free resources correctly.
3828 src/grouplistdialog.[ch]: more merging of new newsgroup
3829 subscription dialog.
3830 * src/news.[ch]: renamed news_remove_group_list() to
3831 news_remove_group_list_cache().
3835 * src/defs.h: added MAX_ENTRY_LENGTH definition.
3836 * src/compose.c: compose_add_entry_field(): create new entry with
3841 * src/grouplistdialog.c: made non-leaf node selectable.
3842 Give the complete newsgroup name for each nodes.
3846 * src/grouplistdialog.c
3847 src/news.[ch]: merging of new newsgroup subscription dialog
3848 (still in progress. Don't use it yet!).
3852 * src/utils.[ch]: decode_uri(): new. It decodes URL-encoded strings.
3853 * src/compose.[ch]: compose_new_with_recipient(): accept mailto
3855 compose_entries_set(): new. It parses mailto URL and put each
3856 values into the entries.
3860 * src/compose.c: compose_forward(): fixed a bug that forward
3861 quote mark wasn't used (thanks to Hironori IWANE).
3864 src/prefs_common.c: added Thai encodings (thanks to Manrat
3869 * src/socket.c: sock_connect_by_hostname(): removed h_errno.
3873 src/news.c: added last_access_time to Session.
3874 imap_session_get(): check connection only when access interval
3883 * src/socket.c: ssl_gets(): use SSL_peek.
3884 * updated NEWS and AUTHORS.
3885 * Makefile.am: fixed release target.
3889 * src/template.c: changed the format of template file to
3891 * src/compose.c: compose_template_apply(): freeze the text widget
3892 while inserting strings.
3896 * po/POTFILES.in: removed src/template_select.c.
3897 * src/summaryview.c: summary_set_header()
3898 src/address.c: address_parse_str()
3899 src/filter.c: filter_read_str()
3900 src/news.c: news_parse_xover()
3901 src/procheader.c: procheader_get_fromname()
3902 src/utils.c: subject_compare():
3903 replaced Xalloca() + strcpy() with Xstrdup_a().
3904 * src/inputdialog.[ch]: added combo mode.
3905 input_dialog_combo(): new.
3906 * src/prefs_common.[ch]: added MIME open command setting.
3907 prefs_common_{read, save}_config(): read / write command history.
3908 * src/mimeview.c: mimeview_open_with(): use combo input dialog.
3909 * src/utils.[ch]: add_history(): history list management function.
3913 * src/compose.c: select templates from the menu.
3914 compose_set_template_menu(): new.
3915 compose_reflect_prefs_all(): new.
3916 compose_template_apply(): new. Use dummy MsgInfo for parsing.
3917 * src/template.[ch]: store template list to the static heap.
3918 template_get_config(): new.
3919 template_set_config(): new.
3920 * src/prefs_template.c: don't store template list to the global area.
3921 * src/template_select.[ch]: removed.
3922 * src/quote_fmt_parse.y: check folderitem when quoting messages.
3923 * src/mh.c: mh_add_msg(): try to copy file whenever link() failed
3924 (thanks to OSHIRO Naoki).
3928 * src/utils.[ch]: get_template_dir(): new.
3929 * src/template.c: use get_template_dir().
3933 * src/prefs_template.c: modified the dialog layout.
3934 Added symbol description button.
3935 * src/summaryview.c: show an arrow mark to the column of the sort
3937 summary_set_column_titles(): new.
3943 TODO.jp: updated the documents.
3947 * src/Makefile.am: add missing checkbox_{on, off}.xpm.
3948 * src/textview.c: textview_key_pressed()
3949 src/mimeview.c: mimeview_key_pressed()
3950 src/summaryview.c: summary_key_pressed(): delete messages with
3955 * src/socket.c: ssl_gets(): fixed a bug that caused infinite loop
3956 when SSL_read() returned 0.
3957 * src/utils.[ch]: strcrchomp(): new. It removes CR from the tail
3959 * src/quote_fmt_parse.y: convert CRLF to LF when inserting messages.
3960 Add prototype of yylex() to suppress the warning.
3961 * merged the template function.
3962 * src/prefs_template.[ch]
3964 src/template_select.[ch]: new.
3965 Renamed prefs_templates_* -> prefs_template_*.
3966 * src/compose.c: added template menu. Added replyinfo to Compose.
3967 * src/mainwindow.c: added template setting menu.
3968 * src/quote_fmt_lex.l: output literal tab and return as is.
3969 * src/prefs_common.c: changed the pref. name of quote format to
3970 'reply_quote_{mark, format}' and 'fw_quote_{mark, format}'.
3974 * src/prefs_common.[ch]: added Quote tab, and moved the quote
3975 setting from Compose tab.
3976 * merged the new quote format parser.
3977 * src/quote_fmt_lex.h
3980 src/quote_fmt_parse.y: new files for quote format parser.
3981 * configure.in: added checks for lex and yacc.
3982 * src/compose.c: compose_quote_file(), compose_quote_parse_fmt():
3984 compose_quote_fmt(): new.
3985 * src/prefs_common.[ch]: added forward format setting to the
3986 Quote tab. Updated the quote description dialog.
3987 * src/quote_fmt_parse.y: fixed bugs that tried to read file even
3988 if they couldn't get text part.
3992 * src/pixmaps/checkbox_off.xpm
3993 src/pixmaps/checkbox_on.xpm: new.
3994 * src/account.c: display `get all' status with the checkbox pixmaps.
3998 * src/send.c: code cleanup. Pass account prefs structure instead
4000 Query password for SMTP AUTH if not specified (thanks to Mio).
4004 * src/procheader.c: procheader_parse(): fixed a bug that didn't
4005 parse multiple message-id in In-Reply-To: header correctly
4006 (thanks to KAJIWARA).
4010 * src/account.c: enabled 'Get all' setting by clicking the 'G'
4011 column of account list, and added some description.
4012 * src/prefs_common.c: prefs_send_create(): added a description
4013 for outgoing codeset.
4017 * src/prefs_account.[ch]: moved inbox entry to the receive tab,
4018 and added select button and short description.
4019 * src/Makefile.am: added SYSCONFDIR to CPPFLAGS.
4021 procmime_get_mime_type_table()
4022 procmime_get_mime_type_list(): modified so that
4023 $(SYSCONFDIR)/mime.types (or /etc/mime.types if not found) and
4024 $(HOME)/.sylpheed/mime.types are read.
4028 * src/prefs_account.c: moved the address auto-setting to the compose
4030 prefs_account_create(): removed gtk_widget_show_all() for proper
4032 * src/prefs_common.c: changed "Program path" to "Command".
4036 * src/textview.c: textview_set_font(): support Russian charset
4038 * src/summaryview.c: summary_delete(): (hopefully) fixed the crash
4042 prefs_summary_column.c: minor improvements to the English.
4043 * src/main.c: get_queued_message_num(): don't output the warning
4044 when queueing folder is not found.
4052 * src/prefs_summary_column.[ch]:
4053 made prefs_summary_column_get_config() public.
4054 * src/summaryview.c: summary_ctree_create(): some code cleanup.
4055 * configure.in: moved the position of SSL checking after LDAP
4056 for linking problem.
4061 src/summaryview.c: allowed reedit in the outbox.
4062 * src/prefs_summary_column.[ch]: new. UI for setting summary
4064 * src/mainwindow.[ch]: main_window_set_summary_column(): new.
4065 It calls summary_set_column_order().
4066 * src/summaryview.[ch]:
4067 summary_ctree_create(): new. separated from summary_create().
4068 summary_set_column_order(): new. It destroys the current
4069 CTree and replaces it with the new one.
4073 * src/smtp.[ch]: smtp_from(): abort if auth failed.
4074 * changed C++-style comments into C-style in some files, and
4075 removed unnecessary commented out codes.
4076 * src/addrcache.[ch]
4080 src/syldap.[ch]: updated the addressbook code, and fixed the
4083 src/importldif.[ch]: new.
4087 * src/about.c: added some items to compiled-in features.
4088 * src/addr_compl.c: changed LOG_MESSAGE to debug_print.
4089 * src/addressbook.c: changed "V-Card" to "vCard".
4090 addressbook_edit_address_cb(): added
4091 invalidate_address_completion() to the point address is changed.
4092 * src/codeconv.c: changed C++-style comments into C-style.
4096 * src/compose.c: changed "Send" shortcut to Ctrl+Enter.
4100 * src/inc.c: fixed a bug that crashed sylpheed if Cancel button
4105 * src/procmsg.c: procmsg_get_thread_tree(): complete the unfinished
4107 * src/summaryview.c:
4108 summary_thread_init(): separated from summary_thread_build().
4109 summary_thread_build(): removed the codes for initialization.
4110 summary_set_ctree_from_list(): call summary_thread_init() instead
4111 of summary_thread_build().
4112 summary_filter(): fixed a bug that didn't moved messages despite
4113 of immediate execution setting.
4117 * src/procmsg.c: procmsg_get_thread_tree(): new. It generates the
4118 reversed thread tree from message list.
4119 * src/summaryview.c: summary_set_ctree_from_list(): prepend the
4120 node to the head instead of appending to the tail. This prevents
4121 the traverse of node list inside of the GtkCTree, and considerably
4122 speeds up the summary display (the order is O(n^2) -> O(n)).
4126 * src/prefs_common.c
4127 src/summaryview.[ch]: initial modification for reorderable columns.
4131 * src/procmsg.c: procmsg_get_mark_sum(), mark_sum_func(): fixed a
4133 * src/folderview.c: folderview_button_pressed(): code cleanup, and
4134 turn sensitivity off if main window is locked.
4135 * src/syldap.c: syldap_read_data(): removed unnecessary and
4136 unportable sched_yield().
4140 * src/folderview.c: renamed "Update folder tree" context menu to
4141 "Rescan folder tree", and made "Update folder tree" only updates
4143 folderview_update_all_node(): don't show message dialog.
4144 * src/gtkutils.c: gtkut_widget_get_uposition()
4145 src/mainwindow.c: main_window_popup(): clip the coordinate to
4150 * src/utils.c: to_human_readable(): made a bit of optimization.
4151 * src/summaryview.c: summary_delete(): fixed a focus problem.
4152 summary_find_{prev,next}_msg(): new. They find previous/next
4153 message that is not deleted.
4154 * src/prefs_filter.c: scroll CList automatically if moved row
4155 becomes not fully visible.
4159 * updated some autotool scripts.
4160 * src/codeconv.c: conv_encode_header(): fixed a bug that caused
4161 infinite loop when failed to convert encoding.
4162 * src/codeconv.[ch]: a fix for older version of libjconv
4163 (jconv_info_get_current_codeset() returned "EUCJP" instead of
4172 * src/compose.c: compose_write_to_file()
4173 src/codeconv.c: conv_codeset_strdup(): more workaround for
4174 libjconv problem on C locale.
4175 * src/editldap_basedn.c: fixed segfault when opening dialog.
4176 * src/utils.c: is_next_mbs()
4177 src/compose.c: compose_wrap_line(), compose_wrap_line_all():
4178 changed MB_CUR_MAX to MB_LEN_MAX for compliance to ANSI C.
4179 * configure.in: increased the reqired version of GPGME to 0.2.3.
4180 * src/pop.c: pop3_getauth_user_recv(): fixed a bug that closed
4181 the receive dialog when POP3 server refused normal authentication.
4185 * src/prefs_common.c: prefs_receive_create(): correction to English.
4186 * src/compose.c: compose_set_ext_editor_sensitive(): fixed a bug
4187 that didn't set the menu sensitivity correctly (thanks to
4189 * src/summaryview.c: delete messages permanently if the current
4190 folder is trash and 'delete' operation is executed.
4191 Fixed the bug that didn't select the last row correctly (thanks
4192 to Alfons Hoogervorst).
4193 * src/folder.[ch]: folder_item_remove_msgs(): new. It removes
4194 all messages given in the list.
4198 * src/summaryview.c: summary_show(): fixed a bug that didn't show
4199 message even if the 'open unread message on entering folder'
4200 option was turned on.
4204 * src/procmime.c: procmime_get_text_content(): supported HTML.
4208 * src/summaryview.[ch]: implemented new locking mechanism, and
4209 replaced every static locks with summary_lock(), summary_unlock(),
4210 and added locks to some extra functions.
4211 This fixes a bug that caused segfault when 'd' (delete) key
4216 * src/addressbook.c: addressbook_folder_load_person(): fixed a bug
4217 that caused segfault (thanks to Stefaan A Eeckels).
4221 * src/textview.[ch]: added textview_set_position().
4222 * src/messageview.[ch]: added messageview_set_position().
4234 src/editldap_basedn.c
4239 src/vcard.c: converted C++-style comments into C-style one.
4240 * src/imap.c: QUOTE_IF_REQUIRED(): new macro. Copy string into
4241 new buffer and quote with double quotes if required.
4242 imap_status(), imap_cmd_login(), imap_cmd_list(),
4243 imap_cmd_do_select(), imap_cmd_create(), imap_cmd_delete(),
4244 imap_cmd_copy(): use QUOTE_IF_REQUIRED().
4245 * compose.c: compose_write_to_file(): workaround for the problem
4246 when using libjconv and 8bit codes cannot be converted on C
4248 * codeconv.[ch]: added "ANSI_X3.4-1968" to encoding strings.
4249 conv_codeset_strdup(): don't convert if source and destination
4250 codeset are identical.
4254 * src/textview.[ch]: textview_search_string_backward(): new.
4255 Add the new member cur_pos to TextView.
4256 Connect button_press_event with gtk_signal_connect_after() to
4257 obtain the correct editable position.
4261 * src/folder.c: folder_write_list_recursive(): preserve unthreaded
4266 * src/summaryview.c: modified the layout of popup menu.
4273 src/summaryview.c: applied the patch from Alfons that allows
4274 threading setting for each folders (tnanks!).
4278 * src/message_search.[ch]: new. A Dialog for searching in current
4280 * src/gtkutils.[ch]: gtkut_text_match_string(): new. Compare the
4281 text in current position of GtkText and given wide-character
4283 * src/messageview.[ch]: messageview_search_string()
4284 src/textview.[ch]: textview_search_string(): return TRUE if
4286 * src/textview.[ch]: remember the beginning of body.
4290 * src/procmime.c: procmime_get_first_text_content(): modified so
4291 that it search entire MIME structure.
4292 * src/summary_search.c: summary_search_execute(): use
4293 strdup_mbstowcs() instead of macro. Display matched message.
4297 * src/inc.c: fix for background POP3 hangs and crashes (thanks to
4299 * src/summary_search.c: added body searching function.
4300 * src/procmime.[ch]: procmime_find_string(): changed arguments
4301 and return value. Added case sensitivity option.
4305 * src/procmime.[ch]:
4306 procmime_find_string()
4307 procmime_find_string_part(): new. It searchs the string from
4309 Renamed procmime_get_text_part() to
4310 procmime_get_first_text_content().
4311 procmime_get_text_content(): new. It returns the text contents
4312 of the specified MIME part.
4313 procmime_mimeinfo_next(): new. It returns the next node of
4318 * src/procmime.c: procmime_get_text_part(): modified so that it
4319 finds a text part in nested multipart message correctly.
4320 * src/procmime.h: added an example of MimeInfo structure.
4321 * src/mimeview.c: mimeview_show_message(): search the first text
4326 * src/mainwindow.c: ac_menu_popup_closed(): fixed the bug that
4327 caused segfault. Changed 'Preferences per account...' menu item.
4335 * src/addrindex.c: translate the "Common address" and "Personal
4336 address" from old addressbook.
4340 * src/utils.c: get_quote_level(): some optimization and bugfixes.
4341 * src/codeconv.[ch]: conv_get_current_locale(): new.
4342 * src/editaddress.c: edit_person_page_basic(): reverse the order
4343 of first and last name on some locales.
4347 * src/compose.c: applied the patch from Yasumatsu that reformats
4348 the current paragraph (thanks!). Modified so that it doesn't
4349 reformat quoted paragraphs.
4350 compose_create(): don't fill the entry automatically on reedit
4353 src/summaryview.[ch]: added the "Mark all read" option.
4354 summary_mark_all_read(): new.
4362 src/editldap_basedn.c
4364 src/editjpilot.c: removed all warnings.
4366 src/jpilot.[ch]: fixed the problem that failed to detect JPilot
4367 header files on the Debian system.
4369 src/summaryview.[ch]: enabled sorting by mark, unread, attachment,
4370 and color label. Enabled moving to next/prev flagged messages.
4374 * src/pixmaps/dir-close.xpm
4375 src/pixmaps/dir-open.xpm
4377 src/pixmaps/unread.xpm: modified the color balance.
4378 * src/utils.[ch]: execute_sync(): new.
4379 execute_command_line(): added the arg for async mode.
4380 * src/inc.c: inc_mail(): use execute_command_line().
4385 src/prefs_common.[ch]
4386 src/prefs_account.c: modified the layout. Added the option to
4387 launch the external editor automatically.
4388 * src/compose.c: launch the external editor automatically if the
4393 * src/Makefile.am: added extra xpm's.
4397 * src/addressbook.c: fixed a compilation problem when enabling
4399 addressbook_open(): fixed a missing 'else'.
4403 * src/pixmaps/dir-close.xpm
4404 src/pixmaps/dir-open.xpm
4405 src/pixmaps/trash.xpm: replaced with the new blue icons.
4406 * merged Match Grun's new addressbook code.
4407 * src/pixmaps/address.xpm
4408 src/pixmaps/book.xpm
4409 src/pixmaps/category.xpm
4410 src/pixmaps/interface.xpm
4411 src/pixmaps/jpilot.xpm
4412 src/pixmaps/ldap.xpm
4413 src/pixmaps/vcard.xpm: new icons.
4417 src/addressitem.[ch]
4420 src/editaddress.[ch]
4425 src/editldap_basedn.[ch]
4430 src/vcard.[ch]: new. Many fixes to remove the huge amount of
4432 addrbook_build_avail_email_vis(): fixed a memory leak.
4436 * NEWS: brought in the all of the changes previously put on the web.
4441 src/summaryview.c: modified the layout of menus.
4442 * src/mainwindow.c: ac_menu_popup_closed(): fixed a bug that didn't
4443 return a focus to the main window after selecting the account menu.
4451 * src/send.c: send_message_data(): fixed a bug that didn't process
4452 body part correctly.
4456 * src/inc.[ch]: changed inc_autocheck_(un)lock() to inc_(un)lock().
4457 inc_mail(), inc_all_account_mail(): return immediately if locked.
4460 src/prefs_account.c: use inc_lock() and inc_unlock() instead of
4461 inc_autocheck_timer_{remove,set}().
4462 * src/summaryview.c: summary_set_colorlabel_color(): get the average
4463 of label color and selected fg color for visibility.
4467 * src/inc.[ch]: inc_autocheck_lock(), inc_autocheck_unlock(): new.
4468 They increase/decrease the lock count.
4469 inc_autocheck_func(): if locked, delay the autochecking 1 second.
4470 inc_autocheck_timer_set_interval(): set interval by its argument.
4471 * src/summaryview.c: summary_show(): lock the autochecking while
4473 * src/main.c: app_will_exit(): remove autocheck timer.
4475 src/defs.h: removed the definitions of PACKAGE and VERSION to
4476 prevent unnecessary compilation.
4477 * configure.in: changed AC_DEFINE_UNQUOTED of PACKAGE and VERSION
4478 to AC_SUBST, and added src/version.h to AC_OUTPUT.
4479 * src/version.h.in: new.
4480 * src/intl.h: changed dgettext() to gettext().
4484 * po/ja.po: fixed a typo that crashed Sylpheed with older version
4486 * configure.in: fixed a bug that didn't show results correctly.
4487 Fixed a bug that --enable-compface and --enable-jconv disabled
4489 * src/procmsg.c: procmsg_send_queue(): don't abort when sending
4491 * src/compose.c: compose_write_headers(): add Bcc: header to the
4493 * src/send.c: send_message_data(): new. Separated from
4494 send_message_smtp(). Remove Bcc: header before sending.
4502 * src/send.c: implemented sending with local sendmail command.
4503 send_message_local(): new. It executes command with popen()
4504 and send the contents of RFC822 message to the command.
4505 * src/prefs_common.[ch]: enabled the external sending command option.
4506 * src/defs.h: #define DEFAULT_SENDMAIL_CMD /usr/sbin/sendmail -t
4507 * src/account.c: account_edit_create(): widened the protocol column.
4508 * src/summaryview.c: summary_set_colorlabel_color(): cleanup of
4513 * src/folder.c: folder_item_remove_msg(): scan the folder again
4514 if the last message is removed.
4515 * src/compose.c: compose_queue(), compose_draft_cb(): remove the
4516 old reedited message after adding the new message.
4520 * src/compose.c: compose_queue(): added AID: to the queueing header.
4521 * src/send.c: send_message_queue(): look for AID: header, and use
4522 the server specified in the account instead of SSV: header.
4524 src/compose.[ch]: queued messages can be reedited now.
4525 compose_remove_reedit_target(): new. It removes the old reedited
4527 compose_send(), compose_queue(), compose_draft_cb(): if reedit
4528 mode, remove the old message.
4529 * src/procmsg.c: procmsg_msg_exist(): fixed a bug that output
4534 * applied the XML string table patch from Alfons Hoogervorst that
4535 stores strings in a hash table and minimizes memory allocations
4537 * src/stringtable.[ch]: new.
4538 removed all G and g_ prefix from type and function names since
4539 they're not official GLib symbol names.
4540 string_table_insert_string(): fixed a bug that might refer to an
4541 invalid pointer on lookup, and also made a bit of optimization.
4545 * merged the color label feature from the claws branch (thanks to
4546 Satoshi Nagayasu and Alfons Hoogervoost).
4547 * src/colorlabel.[ch]: new. Renamed from labelcolors.[ch].
4548 Renamed labelcolors_*() to colorlabel_*().
4549 * src/summaryview.[ch]: added color label support.
4550 * src/procmsg.h: added color label flags to the permanent flags.
4551 * updated to gettext 0.10.39.
4552 * src/summaryview.[ch]: put the color label menu item to ItemFactory.
4553 * sylpheed.desktop: added for GNOME.
4554 * configure.in: added AC_MSG_CHECKING() for some options.
4555 Output the configuration results when configure is finished.
4559 * src/account.c: account_clist_set_row(): fixed a bug that failed
4560 to compile if SSL was not enabled.
4564 * merged the SSL support from the claws branch (thanks to Christoph
4566 * src/ssl.[ch]: new.
4567 * src/socket.[ch]: added ssl_read(), ssl_write(), ssl_gets(), and
4569 sock_close(): call ssl_done_socket() if SSL is active.
4570 * src/md5.[ch]: removed MD5_CTX typedef and use MD5_CONTEXT to
4571 prevent type confliction.
4572 * src/prefs_account.[ch]: added SSL tab, and modified the expression.
4573 * src/esmtp.[ch]: added esmtp_ehlo(), and esmtp_starttls().
4574 Removed SSL initialization and HELO from esmtp_starttls().
4575 esmtp_auth(): removed use_smtp_auth from its arguments.
4576 * src/send.c: send_smtp_open(): added SSL support.
4577 * src/smtp.c: smtp_helo(): call esmtp_ehlo() if esmtp is true.
4581 * src/mimeview.c: mimeview_open_with(): braced '%s' with single
4586 * src/main.c: open new account dialog if no account is set.
4587 * src/utils.[ch]: log_verbosity_set(): new. It increase/decrease
4588 the verbosity count.
4589 log_print(): put to statusbar only if log_verbosity_count > 0.
4590 log_message(): put to statusbar.
4591 * src/inc.c: inc_pop3_session_do(): set log verbosity.
4592 * src/mainwindow.c: main_window_set_menu_sensitive(): added the
4593 "Compose new message" item.
4594 main_window_show_cur_account(): removed "Current account: " string.
4595 * src/summaryview.c: summary_show(): ignore the current marks if
4596 main window is locked.
4597 * src/compose.c: compose_attach_property(): fixed a bug that caused
4602 * src/mainwindow.c: main_window_get_current_state(): new. It returns
4603 the current state for the sensitivity of UI.
4604 main_window_set_toolbar_sensitive(): use table like
4605 main_window_set_menu_sensitive().
4609 * src/mainwindow.[ch]: added progressbar and status label to the
4611 main_window_close_cb(): don't exit if locked.
4612 * src/inc.c: update the progressbar of main window, too.
4616 * src/mainwindow.[ch]: main_window_set_toolbar_sensitive(): removed
4617 the second argument, and determine the sensitivity with the
4618 state of summary view.
4622 * src/pop.c: pop3_getsize_list_recv(), pop3_retr_recv(),
4623 pop3_delete_recv(): don't try to receive messages which are not
4628 * src/mainwindow.c: main_window_lock(), main_window_unlock():
4629 removed the whole menubar locking.
4630 main_window_set_menu_sensitive(): process the sensitivity change
4631 with a table, and deal with locking.
4635 * src/summaryview.[ch]: summary_get_selection_type(): new.
4636 It returns the current selection state of summary view.
4637 summary_key_pressed(): abort on some commands if main window
4639 * src/mainwindow.[ch]: main_window_lock(), main_window_unlock():
4640 increase/decrease the lock count.
4644 * src/prefs_filter.c: prefs_filter_create(): added List-Id to the
4645 default header list.
4646 * src/prefs_common.[ch]: added the option for receive dialog mode
4647 to the Interface tab.
4648 * src/inc.[ch]: inc_progress_dialog_create(): don't make the dialog
4649 transient, and show dialog only if the setting is
4650 RECV_DIALOG_ALWAYS, or RECV_DIALOG_ACTIVE and a window is active.
4651 * src/mainwindow.[ch]: main_window_lock(), main_window_unlock():
4652 new. Lock / unlock the user-interface.
4653 * src/progressdialog.c: progress_dialog_create(): don't make the
4658 * src/folderview.c: folderview_update_node(): suppressed unnecessary
4660 * src/menu.[ch]: menu_button_position(): new. It calculates the
4661 position of popup menu.
4662 * src/mainwindow.c: toolbar_account_button_pressed(),
4663 ac_label_button_pressed(): put the popup menu to the correct
4664 position. Change the style of the button while opening the menu.
4665 ac_menu_popup_closed(): new function called on selection_done
4667 * src/gtkutils.c: gtkut_ctree_node_next(): fixed a crash bug when
4669 * src/summaryview.c: applied the summary fix patch from Sergey Vlasov
4671 Fixed the bug that didn't select previous message in refresh mode
4672 if threads were not expanded.
4673 summary_select_node(): new.
4674 * src/inc.c: applied the summary view update optimization patch from
4675 Sergey Vlasov (thanks!).
4676 If no new messages are received, don't perform summary refreshing.
4677 In addition to the Vlasov's patch, POP3 receive information is
4679 * src/inc.h: added a new member cur_total_num to Pop3State.
4680 * src/pop.c: pop3_retr_recv(): increase state->cur_total_num.
4688 * src/summaryview.c: summary_set_row_marks(): got the color of
4689 unread row set properly.
4690 * src/folderview.c: foldreview_update_node(): don't use
4691 gtk_style_copy(), and reuse previously allocated styles.
4692 * README, README.jp: modified.
4696 * src/pop.c: pop3_getsize_list_recv(): fixed a remotly exploitable
4697 memory corruption bug (thanks to David Looney).
4698 * src/inc.c: inc_all_account_mail(): call inc_finished() even if
4699 there are no enabled accounts, or local spool only.
4700 * src/summaryview.c: applied the summary update improvement patch
4701 from Sergey Vlasov (thanks!). It keeps the position of the
4702 message displayed. Selected and displayed message are also kept.
4703 summary_get_msgnum(): new.
4704 summary_get_current_msgnum(): removed.
4705 summary_select_by_msgnum(): don't display the message.
4706 * src/account.c: added "Get all" column.
4707 account_clist_set_row(): show default and get-all flags with the
4709 * src/utils.c: to_human_readable(): increased the number of decimals
4714 * implemented the long-awaited :) "Add sender to address book" feature.
4715 * src/address.[ch]: added the argument for remarks to
4717 address_get_folder_list(): new. It traverses the address tree and
4718 returns the folder list.
4719 address_delete_object(): modified so that it removes the node
4721 * src/addressbook.[ch]: addressbook_add_submenu(): new. It creates
4722 a address folder menu and attaches it to the menu item.
4723 addressbook_refresh(): reload the address book folder tree.
4724 * src/summaryview.c: summary_set_add_sender_menu(): new. It attaches
4725 the menu to add sender to address book.
4726 summary_button_pressed(): call summary_set_add_sender_menu()
4727 before popup the menu.
4731 * src/summaryview.c: summary_thread_build(): fixed a bug that locked
4732 up the process. Optimized the initial thread build.
4736 * src/summaryview.c: made many code cleanups.
4737 summary_show(): block/unblock the signal handlers instead of
4738 disconnect/connect them.
4739 summary_set_row_marks(): made the font of collapsed node bold if
4740 it has cnildren marked as unread.
4741 summary_thread_build(): block tree_expand signals while processing.
4742 Use loop instead of the recursive function. Mark collapsed nodes
4744 summary_unthread(): block tree_collapse signals while processing.
4745 Use loop instead of the recursive function.
4746 summary_thread_func(), summary_unthread_func(): removed.
4747 summary_tree_expanded(), summary_tree_collapsed(): new callback
4749 * src/inc.[ch]: inc_pop3_session_do(): don't show alert panel when
4750 failed to connect. Show more detailed status on the dialog.
4754 * src/folderview.c: folderview_update_all_node(): new. It updates
4756 * src/inc.c: update all local folders after incorporation if
4757 scan_all_after_inc option is set.
4758 * src/prefs_common.[ch]: added scan_all_after_inc option.
4759 * src/folder.h: FOLDER_IS_LOCAL(): new macro.
4768 src/prefs_common.h: made bold and small font configurable.
4769 src/summaryview.c: display unread messages with bold font.
4770 * src/prefs_common.c
4772 src/summaryview.c: added an option to enable/disable the
4773 emphasis of unread messages.
4777 * src/pixmaps/mark.xpm: modified.
4778 * src/gtkutils.[ch]: gtkut_ctree_expand_parent_all(): new.
4779 * src/summaryview.c: summary_set_ctree_from_list(): don't expand
4780 the root messages of threads for performance improvement.
4782 summary_select_next_unread()
4783 summary_step(): expand threads when opening messages.
4784 summary_thread_build(): expand threads if the option is turned on.
4785 * src/prefs_common.[ch]: added "Expand threads" option.
4789 * src/prefs_common.c: removed "Emulate the behavior of mouse
4790 operation of Emacs-based mailer".
4791 * src/prefs_common.c
4792 src/prefs_account.c: changed the value of VSPACING_NARROW to 3.
4793 * src/pixmaps/new.xpm
4794 src/pixmaps/unread.xpm: reverted.
4799 address_folder_new()
4801 address_item_new(): changed the return value to AddressObject.
4802 address_build_tree(): don't put assertion for file.
4803 * src/pixmaps/new.xpm
4804 src/pixmaps/unread.xpm: modified a bit.
4808 * src/addressbook.c: fixed some bugs.
4812 * separated the logic part of addressbook into another module
4813 (still in progress).
4814 * src/address.[ch]: new. It contains the logic part of addressbook.
4815 * src/addressbook.[ch]: removed the logic part.
4819 * src/textview.c: textview_show_header(): fixed a bug that a garbage
4820 character was shown after header names.
4824 * src/inc.c: inc_start(): don't abort with non-fatal error.
4832 * src/mimeview.c: mimeview_view_file(): added -x option to the
4833 metamail to prevent the suspention of the main process.
4834 mimeview_button_pressed(): deactivate `Open' menu item if
4835 content-type is application/octet-stream.
4839 * src/imap.c: imap_parse_atom(): parse escaped characters properly.
4840 get_quoted(): new. It handles the escape character '\'.
4841 * src/folder.c: folder_read_list(): don't output warning if
4842 folderlist.xml doesn't exist.
4843 * src/main.c: main(): write folder list after setup.
4844 * src/textview.c: textview_create()
4845 src/compose.c: compose_create(): set default tab width to 8.
4849 * src/prefs_common.c: date_format_select_row(): fixed a bug that
4850 caused segfault when selecting the list with key.
4854 * src/mainwindow.c: main_window_popup(): deiconize the window
4855 when popup (thanks to Henrik Carlqvist).
4856 * src/procmime.c: procmime_scan_mime_type(): new.
4857 procmime_scan_content_type(): use procmime_scan_mime_type().
4858 procmime_scan_mime_header(): scan the extension of attached files
4859 and add the correct MIME type if the Content-Type is
4860 "application/octet-stream" (thanks to Don Quijote).
4861 * src/compose.c: compose_toolbar_create(): added a new "Send later"
4862 icon (thanks to Leandro Pereira).
4866 * src/prefs_common.c: date_format_create(): modified the layout of
4871 * src/account.c: account_find_from_address(): fixed a minor bug.
4872 * src/prefs_common.c: incorporated the user-interface for setting
4873 date format from the claws branch, and made some modification to
4878 * src/account.[ch]: account_edit_create(): modified the text of
4880 account_find_from_address(): new.
4882 procmime_scan_content_type(), procmime_scan_content_disposition():
4883 fixed ESC code detection.
4884 * src/compose.c: compose_reply(): automatically select account
4885 according to the message header.
4886 * src/prefs_common.[ch]: added member "reply_account_autosel".
4890 * src/progressdialog.c: made the CList scrollable.
4891 * src/inc.c: inc_start(): don't abort with non-fatal error.
4895 * added English Sylpheed User's Manual by Paul Kater
4896 (paul@nlpagan.net) (thanks!).
4899 src/mainwindow.c: added support for English manual.
4900 * manual/en/sylpheed*.html: added English documentation.
4905 * src/nntp.c: nntp_ok(): fixed the bug that didn't handle a response
4906 that didn't have any trailing messages.
4907 * src/smtp.c: smtp_ok(): ditto.
4908 * src/compose.c: compose_account_option_menu_create(): modified
4909 the style of the account option menu.
4913 * src/prefs_customheader.c: prefs_custom_header_clist_set_row():
4914 remove return code from strings automatically.
4915 prefs_custom_header_create(): added "X-Face" to the default
4917 * src/news.c: news_fetch_msg(), news_get_group_list()
4918 src/imap.c: imap_fetch_msg(): create the cache directory before
4921 procmime_scan_content_type()
4922 procmime_scan_content_disposition(): convert JIS into EUC-JP
4924 * src/codeconv.c: conv_unmime_header(): cleaned up a bit.
4925 * src/compose.c: don't append attachment headers if the attach
4926 pane is visible but the list is empty.
4927 * src/recv.c: recv_bytes_write(): use g_malloc() instead of alloca().
4935 * src/compose.c: compose_quote_parse_fmt()
4936 src/prefs_common.c: prefs_quote_description_create(): added the
4937 symbol `%c' that allows to include Cc in reply format (thanks
4940 src/procmime.c: procmime_decode_content(): applied the patch
4941 from Sergey Vlasov that allows to decode base64 data with
4942 unusual line length (not a multiple of 4) (thanks!).
4946 * src/procmsg.[ch]: separated the permanent flags and temporary
4947 flags into two variables, and made MsgFlags a structure that
4949 MSG_SET_PERM_FLAGS()
4951 MSG_UNSET_PERM_FLAGS()
4952 MSG_UNSET_TMP_FLAGS(): new macros.
4960 src/summaryview.c: modified for the new MsgFlags.
4961 * src/utils.[ch]: hash_free_value_mem(): new. It frees the values
4966 * src/inc.c: inc_pop3_recv_func(), inc_progress_update():
4967 display current size with human-readable format.
4968 * src/grouplistdialog.c: grouplist_recv_func(): ditto.
4975 conv_unmime_header(), conv_unmime_header_overwrite(): workaround
4976 for raw-JIS code in header fields.
4978 folder_get_default_folder()
4979 folder_get_default_inbox()
4980 folder_get_default_outbox()
4981 folder_get_default_draft()
4982 folder_get_default_queue()
4983 folder_get_default_trash(): fixed a bug that caused segfault
4984 if folder_list is NULL.
4994 * src/grouplistdialog.c: grouplist_dialog_set_list(): update UI
4995 while retrieving newsgroup list.
4996 grouplist_dialog_create(): added entry widget and status label.
4997 grouplist_recv_func(): new.
4998 refresh_clicked(): added exclusive lock variable.
4999 clist_selected(): set text entry when the CList is selected.
5000 renamed from group_clist_select().
5001 entry_activated(): new.
5002 grouplist_clear(): renamed from grouplist_free(). Also clears
5003 list and entry widget.
5004 * src/news.c: news_get_group_list(): sped up the list appending
5005 (g_slist_append() becomes very slow if list size is large).
5006 * src/defs.h: added UI_REFRESH_INTERVAL definition.
5007 Changed the definition of NEWSGROUP_LIST.
5008 * src/recv.c: recv_write()
5009 src/send.c: send_message_smtp(): changed the UI refresh interval
5010 to UI_REFRESH_INTERVAL (50msec).
5011 * src/account.c: account_add(): fixed a bug that didn't update
5012 folder tree when a news account was added.
5013 * src/grouplistdialog.c: made exclusive lock variable global, and
5014 lock at grouplist_dialog_set_list().
5015 * src/textview.c: fixed a bug that disabled clickable URI if
5016 message color was disabled.
5020 * src/grouplistdialog.c: ok_clicked(), cancel_clicked(): don't
5021 quit main loop if gtk_main_level() is 1.
5022 grouplist_dialog_set_list(): freeze CList while appending the list.
5023 grouplist_dialog(): show dialog before updating the list.
5027 * src/folder.c: folder_write_list_recursive(): add the attribute
5028 `collapsed' if a node have some children.
5029 * src/grouplistdialog.[ch]: new. Newsgroups can be selected from
5032 news_get_group_list(): new. It returns newsgroup list.
5033 news_remove_group_list(): new. It removes newsgroup list cache.
5034 * src/folderview.c: folderview_new_news_group_cb(): call
5035 grouplist_dialog() instead of input_dialog().
5039 * autogen.sh: modified.
5041 src/folderview.c: made expand/collapse state of folders persistent
5050 * src/imap.c: imap_remove_folder(): select INBOX with EXAMINE before
5052 imap_cmd_do_select(): new. It toggles between SELECT and EXAMINE
5053 according to the argument.
5054 imap_cmd_select(): use imap_cmd_do_select().
5055 imap_cmd_examine(): new.
5056 * src/folderview.c: folderview_rm_imap_folder_cb(): select current
5057 folder again when removing failed.
5063 * manual/ja/sylpheed.sgml
5064 manual/ja/*.html: updated the Japanese manual (thanks to Imai).
5065 * src/summaryview.c: summary_set_row_marks(): fixed a bug that
5066 didn't set foreground correctly.
5068 src/summaryview.h: removed the member color_normal from FolderView
5070 * src/mainwindow.c: main_window_create(): removed color_normal.
5074 * src/prefs_account.[ch]: the port numbers of IMAP4 and NNTP
5076 * src/imap.c: imap_session_get()
5077 src/news.c: news_session_new_for_folder(), news_session_get():
5078 use user-defined port number if specified.
5082 * src/imap.c: imap_scan_tree_recursive(): get mailbox status when
5084 imap_scan_folder(): implemented. It updates the numbers of new,
5085 unread and total messages.
5086 imap_status(): new. It parses the response of STATUS command.
5087 imap_status_uidnext(): removed.
5088 imap_cmd_status(): removed.
5089 * src/textview.c: textview_show_part(): fixed potential memory leaks.
5093 * src/alertpanel.c: alertpanel_create(): fixed truncated message.
5094 * src/rfc2015.c: rfc2015_decrypt_message(): fixed the case problem
5095 of content-type (thanks to René Rebe for the patch).
5096 * src/codeconv.c: code_get_code_conv_func(): fixed the ISO-8859-1
5098 * src/prefs_common.c: prefs_send_create(): made some more character
5099 sets specifiable when not using libjconv.
5100 * configure.in: disabled --enable-threads option temporarily.
5102 INSTALL.jp: deleted the description about --enable-threads option.
5106 * updated gettext to 0.10.38.
5112 * src/folderview.[ch]: folderview_set_all(): new.
5113 * src/account.c: account_add(): call folderview_set_all() after
5114 creating IMAP4 tree.
5115 account_edit_create(): account preferences dialog can be opened
5116 with double clicking of the list.
5117 account_selected(): new.
5118 account_clist_set(): made the CList focus set correctly.
5122 * src/imap.c: imap_scan_tree(): call imap_create_trash() if trash
5124 imap_scan_tree_recursive(): search the sub folders of INBOX.
5125 recognize Trash folder.
5126 imap_create_tree(): separated the part of creating trash.
5127 imap_create_trash(): new.
5128 * src/folder.c: folder_build_tree(), folder_write_list_recursive():
5129 preserve no_sub and no_select.
5130 * src/summaryview.c: summary_show(): don't proceed if item->no_select
5135 * src/imap.c: imap_scan_tree(): fixed a bug that didn't set the
5136 root folder correctly.
5140 * src/folderview.[ch]:
5141 folderview_update_tree(): new. It updates one folder tree.
5142 folderview_update_tree_cb(): new.
5143 Added "Update folder tree" to the popup menu, and modified some
5148 * src/imap.c: implemented the autoscan of IMAP4 folder list.
5149 imap_scan_tree(): new. It scans the whole IMAP4 folder.
5150 imap_scan_tree_recursive(): new. It traverses the IMAP4 folder tree.
5151 imap_parse_list(): new. It parses the LIST response.
5152 imap_get_real_path(): new. It converts local path into IMAP4 path.
5153 * src/folder.h: added no_sub and no_select to FolderItem.
5154 * src/folder.c: folder_tree_destroy(): reset some variables.
5155 * src/folderview.c: folderview_scan_tree_func(): supported IMAP4.
5159 * src/imap.c: imap_parse_envelope(): fixed a bug that didn't
5160 parse the FETCH response that continues to the next line.
5161 imap_parse_fetch_element(): removed.
5162 imap_parse_atom(), imap_parse_one_address(), imap_parse_address(),
5163 imap_parse_envelope(), imap_get_uncached_messages(): use GString
5164 and sock_getline() to parse the FETCH response.
5165 imap_remove_all_msg(): fixed a bug that didn't delete messages
5167 imap_parse_address(): fixed a bug that didn't concaternate
5168 addresses correctly, using GString.
5169 * src/socket.[ch]: sock_getline(), fd_getline(): new. They read
5170 the whole line and return the newly allocated string.
5171 * src/prefs_account.[ch]: added `IMAP server directory' entry.
5177 * src/imap.c: imap_create_tree(): pass the path that is separated
5178 by the local filesystem separator to imap_create_folder().
5179 imap_create_folder(): examine the existence of folders using
5180 LIST command instead of STATUS.
5181 imap_cmd_list(): new.
5182 imap_query_password(): new.
5183 imap_session_new(): query password if it is not set.
5187 * src/imap.c: imap_parse_envelope(): FETCH results can be parsed
5188 with arbitrary order.
5189 imap_parse_fetch_element(): new. it parses one pair of name and
5190 value of FETCH results.
5191 imap_parse_flags(): modified for more flexibility.
5192 * src/utils.[ch]: set_log_file(): new. it opens a new file for
5194 close_log_file(): new. it closes the opened log file.
5195 log_print(), log_message(), log_warning(), log_error(): also
5200 * src/imap.c: imap_cmd_status(): check the pointer to "value"
5201 before the assignment (thanks to NISHIJIMA).
5205 * src/folderview.c: folderview_drag_motion_cb(): don't allow DnD
5206 across MH and IMAP4 folder (for now) (thanks to Hiramatu).
5207 * src/foldersel.[ch]: don't show folders which can't be targets
5219 imap_cmd_store(): use UID instead of sequential number.
5220 Renamed imap_set_article_flags() to imap_set_message_flags().
5221 * src/summaryview.c: summary_execute(): don't update summary
5222 even if current folder is IMAP4.
5223 * src/utils.[ch]: remove_numbered_files(): changed the type of
5224 arguments from gint to guint.
5228 * src/imap.c: imap_cmd_login(), imap_cmd_select(), imap_cmd_status(),
5229 imap_cmd_create(), imap_cmd_delete(), imap_cmd_copy(): don't
5230 enclose with double quotation if string doesn't have space
5231 (workaround for old Cyrus IMAP4 server).
5232 imap_create_folder(): fixed a bug of separator substitution.
5233 renamed imap_session_connect_if_not() to imap_session_get().
5234 imap_get_msg_list(): delete all cached messages if use_cache
5236 imap_delete_cached_messages(): remove cached files in between
5237 the specified range by reading directory entry.
5238 imap_parse_one_address(): set fromname same as the from address
5240 * src/utils.[ch]: remove_numbered_files(): new. The range is
5242 * src/summaryview.c: summary_execute(): update summary if current
5244 KEY_PRESS_EVENT_STOP(): new macro.
5245 summary_key_pressed(): stop signal emission when calling
5247 summary_select_by_msgnum(): show message only if
5248 msg_is_toggled_on is TRUE. Move current page to the selected
5250 * src/news.c; news_delete_old_articles(): remove cached files in
5251 between the specified range by reading directory entry.
5253 folderview_selected(), folderview_button_released(): fixed a bug
5254 that didn't select folder correctly.
5260 src/prefs_common.c: improvements to the English (thanks to Paul
5262 * src/mainwindow.c: compose_cb()
5263 src/summaryview.c: summary_key_pressed()
5264 src/compose.c: compose_new_with_recipient(): newsgroups entry
5265 is automatically filled when composing a new article.
5269 * src/procmsg.c: procmsg_msg_list_free(): fixed a bug that didn't
5270 free list correctly.
5276 * src/imap.c: imap_find_namespace(): replace namespace path
5277 separator with slash before comparison.
5278 imap_remove_folder(): use namespace.
5279 imap_create_tree(): use namespece when creating Trash.
5280 imap_get_msg_list(): fixed a bug that returned old list and caused
5281 memory leak if exists == 0.
5282 imap_select(): new. It's a wrapper for imap_cmd_select().
5283 * src/foldersel.c: foldersel_set_tree(): show IMAP4 folder too.
5288 folderview_new_folder_cb()
5289 folderview_new_imap_folder_cb(): show error dialog when creation
5290 or deletion of folder failed.
5291 Made it allow users to create a folder which contains subfolders.
5292 folderview_button_pressed(): disabled delete menu on the special
5294 * AUTHORS: incorporated from claws branch. It now contains all
5296 * src/send.c: enabled cancellation.
5297 EXIT_IF_CANCELLED(): new macro.
5298 Added cancelled flag to SendProgressDialog.
5299 * src/utils.[ch]: strtailchomp(): new. It removes the trailing
5300 specified character.
5301 * src/imap.c: imap_cmd_fetch(): a fix for MS Exchange 2000 server.
5305 * src/imap.c: imap_create_tree(): new. It creates required
5306 folders such as INBOX and Trash.
5307 imap_do_copy(), imap_do_copy_msgs_with_dest(): don't expunge
5309 imap_remove_all_msg(): return immediately if exists == 0.
5310 * src/account.c: account_add(), account_set_missing_folder():
5311 made them use folder->create_tree().
5315 * src/imap.c: more namespace implementation.
5316 imap_find_namespace(), imap_path_separator_subst(): new.
5320 * src/imap.c: imap_parse_namespace(), imap_cmd_namespace(): new.
5324 * src/summaryview.c: summary_show(): fixed a glitch in folder view.
5328 * src/imap.[ch]: added imap_add_msg(), and imap_append_message(),
5329 which appends file into IMAP4 folder.
5331 imap_create_folder(): check the existence of a folder before
5333 renamed the prefix of low-level IMAP4rev1 functions to imap_cmd.
5334 * src/account.c: account_add(), account_set_missing_folder():
5335 create INBOX automatically when creating IMAP4 account.
5339 * src/utils.[ch]: added itos_buf() that takes the buffer for its
5341 * src/imap.[ch]: imap_copy_msg(), imap_copy_msgs_with_dest(): new.
5342 * src/folder.c: added copy_msg and copy_msgs_with_dest methods
5347 * src/utils.[ch]: move_file(): new.
5348 * src/mh.c: mh_move_msg(), mh_move_msgs_with_dest(): modified to
5349 use move_file(), and fixed a bug that didn't close file when
5354 * src/imap.c: renamed imap_delete_messages() and
5355 imap_delete_all_messages() to imap_delete_cached_messages() and
5356 imap_delete_all_cached_messages(). Some code cleanups.
5357 * src/utils.[ch]: added a function remove_all_numbered_files().
5358 * src/mh.c: mh_remove_all_msg()
5359 src/imap.c: imap_delete_all_cached_messages():
5360 use remove_all_numbered_files().
5363 src/compose.[ch]: added `Reply to sender'.
5365 compose_reply_set_entry(): added an argument `ignore_replyto'.
5369 * src/folderview.c: folderview_selected()
5370 src/summaryview.c: summary_show(): fixed a bug that updated wrong
5371 folder when remaining marks were processed.
5375 * src/headerwindow.c: headerwindow_show_cb(): always try to show
5376 msginfo, and use the selected message, not the displayed one.
5377 * src/smtp.c: smtp_ok(): fixed sock_gets() error handling.
5381 * src/folderview.c: folderview_selected()
5382 src/mimeview.c: mimeview_selected(): ungrab the mouse event.
5383 * src/summaryview.c: summary_show(): process the left marks if any.
5387 * src/passphrase.c: enclosed with #if USE_GPGME.
5388 * src/prefs_account.c: added NNTP AUTH check button.
5389 * src/alertpanel.[ch]: alertpanel_create(): added new argument
5390 `can_disable', all existing callers changed to pass FALSE;
5391 created a check button to disable the message.
5392 alertpanel_message_with_disable(): new.
5393 alertpanel_show(): mask value with G_ALERT_VALUE_MASK.
5394 alertpanel_button_toggled(): new.
5395 alertpanel_button_clicked(), alertpanel_close(): set value using
5397 * src/prefs_common.[ch]: added option to toggle GnuPG signature
5398 check popup window, and GnuPG warning.
5399 * src/rfc2015.c: check_signature(): show signature check dialog
5400 only if it is enabled.
5401 * src/main.c: modified GnuPG checking.
5403 src/prefs_common.c: fixed some compilation bugs when enabled
5408 * src/codeconv.c: conv_get_code_conv_func(): fix for ISO-8859-*
5409 encodings with libjconv.
5410 conv_encode_header(): fixed an endless loop bug when encountering
5411 an invalid wide character (thanks to Alte).
5412 * src/headerview.c: SET_FONT_STYLE(): fixed segfault with invalid
5414 * src/imap.c: imap_create_folder(): don't create folder if the
5416 * src/mainwindow.c: main_window_reflect_prefs_all(): hide the
5417 execute button when immediate execution is enabled.
5422 README.jp: added the "How to run" section.
5426 * merged NNTP AUTH from the claws branch.
5427 * src/news.[ch]: supported NNTP AUTH.
5428 * src/nntp.[ch]: wrapped SockInfo with NNTPSockInfo for NNTP AUTH.
5430 INSTALL.jp: modified the confirmation list and the warning about
5435 * src/gtkutils.[ch]: moved folderview_find_collapsed_parent() to
5436 gtkut_ctree_find_collapsed_parent().
5437 * src/folderview.c: folderview_select_node(): automatically expand
5438 the parent folders when selected.
5439 * configure.in: made the version number to 0.4.99 (0.5pre)
5440 * src/main.c: main(): moved parse_cmd_opt() before gtk_init()
5441 so that X is not necessary for --help and --version.
5442 parse_cmd_opt(): changed g_get_prgname() to g_basename(argv[0]).
5443 * src/folderview.c: folderview_update_node(): a fix for collapsed
5448 * src/main.c: lock_socket_input_cb(): changed fd_read() to fd_gets().
5449 It caused garbages in --compose option.
5450 * src/socket.[ch]: made fd_gets() public.
5454 * src/gtkutils.[ch]: gtkut_ctree_node_next(): new.
5455 * src/folderview.c: folderview_find_next_unread(): new.
5456 folderview_select_next_unread(): modified so that it can find
5461 * src/compose.c: compose_write_headers(): excluded also From, To,
5462 Sender because they could be used for SPAM.
5463 * src/folderview.c: add '+' mark to the collapsed folder that have
5464 some unread folders.
5465 folderview_search_new_recursive(),
5466 folderview_have_new_children(),
5467 folderview_search_unread_recursive(),
5468 folderview_have_unread_children(),
5469 folderview_find_collapsed_parent(): new.
5470 folderview_update_node(): display the number of queued messages.
5475 src/mh.[ch]: modified *_add_msg() to use link(). Added the
5476 argument to switch whether to remove the source file or not.
5479 src/mbox.c: modified the argument of folder_item_add_msg() and
5480 removed some unlink()'s.
5484 * src/prefs_customheader.[ch]: renamed prefs_headers_* to
5485 prefs_custom_header_*. Removed `(New)' row and `Substitute'
5486 button. Supported empty value.
5487 prefs_custom_header_row_moved(): new. Connected "row_move" signal
5488 to the function, and made it set header list.
5489 * src/customheader.c: custom_header_get_str()
5490 src/compose.c: compose_write_headers(): supported empty value.
5491 * src/prefs_display_header.c: prefs_display_header_row_moved(): new.
5492 Connected "row_move" signal to the function, and made it set
5494 * src/compose.c: compose_write_headers(): modified the order of
5495 headers, and made it encode the custom headers.
5496 * src/prefs_customheader.c: prefs_custom_header_delete_cb()
5497 src/prefs_filter.c: prefs_filter_delete_cb(): treat closing the
5498 alert panel by ESC as "No".
5502 * merged the custom header stuff from claws branch:
5503 * src/customheader.[ch]
5504 src/prefs_customheader.[ch]: new.
5505 * src/customheader.c: custom_header_read_str(): use strtol() instead
5506 of atoi() and check errors.
5507 custom_header_find(): new function.
5508 * src/compose.c: IS_IN_CUSTOM_HEADER(): new macro.
5509 compose_write_headers(): made it replace headers with user-defined
5510 headers except for some automatically generated headers.
5514 * src/inc.c: connection_check_cb(): fixed a bug that caused
5515 segmentation fault if connection was not established.
5516 * src/compose.c: compose_create(): even if set_autobcc or set
5517 autoreplyto is checked and the entries are empty, show them.
5521 * src/textview.c: textview_show_mime_part(): modified the messages.
5522 TEXT_INSERT(): new macro.
5524 * src/prefs_display_header.c: prefs_display_header_create():
5525 modified the text of checkbutton.
5529 * src/mimeview.c: added "Open with..." to the context menu.
5530 * src/summaryview.c: summary_print()
5531 src/inputdialog.c: input_dialog(): fixed memory leaks.
5532 * src/textview.c: textview_show_mime_part(): updated the description.
5533 * src/send.c: implemented sending progress dialog.
5534 (TODO: automaton should be used.)
5535 send_progress_dialog_create(), send_progress_dialog_destroy(),
5537 send_message_smtp(): made it update the dialog for each stage.
5538 * src/utils.[ch]: get_left_file_size(): new. Get the left bytes
5540 * src/summaryview.c: summary_show(): when open_inbox_on_inc is set,
5541 go to first unread message even if folder is same as previous.
5542 * src/prefs_common.c: made color selection dialog transient, and
5543 made escape key close the dialogs.
5549 * src/select-keys.c: delete_event_cb(): removed `;' from its end.
5550 * src/recv.c: recv_write(): changed the interval to 10msec.
5551 * src/prefs_display_header.c: modified the layout of the dialog,
5552 and made the hidden headers list insensitive when `Show other
5553 headers' is not checked.
5554 * src/textview.c: changed strcasecmp() and strncasecmp() to
5555 the corresponding glib functions.
5556 * src/inc.c: get_spool(): make a temporary file in the home
5561 * src/prefs_common.c
5573 src/sigstatus.c: fixed a bug that accidentally destroyed dialogs
5574 when closed them with delete_event (thanks to DINH).
5575 Added *_deleted() and *delete_event() which handle delete_event
5580 * src/prefs_display_header.c: merged some changes from claws branch:
5581 prefs_display_header_create(): allow reordering of headers by
5583 prefs_display_header_find_header(): new function.
5584 prefs_display_header_clist_set_row(): don't allow duplicates.
5585 * src/prefs_account.c: prefs_account_receive_create(): changed
5586 the label of the check button.
5590 * src/pop.c: pop3_getsize_list_recv(): if sscanf() failed, break
5592 * src/inc.h: removed cur_msg_bytes from Pop3State.
5593 * src/inc.c: pop3_recv_func()
5594 src/recv.[ch]: made the second arguments of RecvUIFunc current
5596 recv_write(): made it call UI func if elapsed time is greater
5598 * src/recv.c: recv_write(): changed the interval to 300 usec.
5599 * src/textview.c: textview_show_header(): if header is Subject,
5601 * src/utils.[ch]: unfold_line(): new.
5602 * src/procheader.[ch]: procheader_get_header_array(): new.
5603 * src/prefs_display_header.c: updated defaults.
5607 * some merge from the sylpheed-claws branch.
5608 It allows user to specify displayed headers in message view.
5609 (symbol names were also changed.)
5610 * src/prefs_display_header.[ch]
5611 src/displayheader.[ch]: new.
5612 * src/prefs_display_header.c:
5613 removed prefs_display_headers_other_headers_toggled().
5614 removed "(New)" row from the list.
5615 * src/defs.h: added DISPLAY_HEADER_RC.
5616 * src/prefs_common.c: prefs_message_create(): added a button for
5617 opening the display header setting dialog.
5618 * src/prefs_common.h: added show_other_header and disphdr_list
5620 * src/procheader.[ch]: procheader_get_header_list_from_file(),
5621 procheader_get_header_array_asis(): new.
5622 procheader_get_header_list(): modified so that it takes FILE
5623 pointer for its argument.
5624 procheader_header_array_destroy(), procheader_header_free(): new.
5625 * src/main.c: main(): made it call prefs_display_header_*_config().
5626 * src/textview.c: textview_scan_header(): modified so that it
5627 sorts headers according to user setting.
5628 src/textview_show_header(): made it call
5629 textview_make_clickable_parts().
5630 textview_make_clickable_parts(): added GdkFont to its arguments,
5631 and removed GtkText from them.
5635 * implemented auto-checking of new mail based on the patch from
5636 Pierric Descamps (thanks!).
5637 * src/inc.c: added inc_autocheck_timer_init(),
5638 inc_autocheck_timer_set(), inc_autocheck_timer_remove(),
5639 inc_autocheck_func() for auto-checking of new mail.
5640 * src/main.c: main(): call inc_autocheck_timer_init().
5641 * src/prefs_common.c: prefs_receive_create(): activated the
5642 auto-checking UI. Added prefs_common_cancel(), and connected
5643 some signals to that.
5644 * src/prefs_common.c
5647 src/account.c: Disabled auto-checking while opening the dialog.
5648 * src/headerview.c: headerview_show_xface(): fixed a bug that
5649 showed a warning when header pane was hidden.
5655 src/recv.c: removed non-blocking socket mode support since it
5658 src/inc.c: modified the messages of incorporation dialog.
5662 * src/utils.h: made u32 the typedef of guint32.
5663 added BIG_ENDIAN_HOST macro that is used by md5.c.
5664 * src/md5.c: renamed md5c.c. Fixed the indentation. Fixed a bug
5665 that didn't calculate MD5 correctly on big endian machines.
5671 * src/folder.c: folder_init(): added the method imap_remove_folder.
5672 * src/folderview.c: folderview_rm_imap_folder_cb(): made it
5673 actually remove folder from IMAP4 server.
5674 * src/imap.[ch]: imap_create_folder(): made it actually create
5675 folder on IMAP4 server.
5676 imap_remove_folder(): added.
5677 imap_create(), imap_delete(): added.
5678 * src/summaryview.c: summary_execute_delete(): don't check trash
5679 if folder type is not F_MH.
5680 * thanks to Ishihara for the above changes.
5682 ac/check-type.m4: better wint_t typedef detection (renamed
5683 sv_CHECK_TYPE to SYLPHEED_CHECK_TYPE).
5687 * src/recv.c: recv_bytes_write(): fixed another bug that caused
5688 infinite loop and buffer overrun.
5692 * src/socket.[ch]: renamed sock_read() and fd_read() to
5693 sock_gets() and fd_gets() for preventing confusion.
5694 Added sock_read() and fd_read() which is the wrapper of read().
5695 * src/recv.c: recv_bytes_write(): fixed a bug that caused infinite
5696 loop. Use sock_read() instead of fd_read().
5703 src/smtp.c: use sock_gets() instead of sock_read().
5704 * src/imap.c: imap_session_new(): fixed the error detection
5709 * src/inc.c: made it displays current read bytes to the dialog.
5710 * src/pop.c: recv_write(): call UI function before editing
5715 * src/progressdialog.c: progress_dialog_create(): modified the
5716 size of dialog and made it stretchable.
5718 src/esmtp.c: smtp_ok(), esmtp_ok(): fixed a bug that didn't
5719 process an error response correctly (thanks to Ohmasa).
5720 * src/pop.[ch]: added pop3_getsize_list_send(),
5721 pop3_getsize_list_recv().
5722 * src/recv.[ch]: added recv_set_ui_func() that makes recv_write()
5723 call the callback function for each sock_read().
5724 * src/inc.h: in Pop3State, renamed bytes to total_bytes, and added
5725 cur_msg_bytes, cur_total_bytes, and sizes.
5726 * src/inc.c: added inc_pop3_recv_func() that updates the progress
5727 bar for each sock_read().
5731 * src/mh.c: mh_is_maildir_one(): modified so that it uses
5734 2001-04-25 Werner Koch <wk@gnupg.org>
5736 * src/mh.c (mh_is_maildir_one, mh_is_maildir): New.
5737 (mh_scan_tree_recursive): Do not include Maildir style directories
5740 Changed the use of integers to describe sockets by an more abstract
5743 * src/automaton.h (struct _Automaton): Add help_sock.
5744 * src/automaton.c (automaton_input_cb): Changed source to be
5745 SockInfo and use wrapper for gdk_input_add.
5747 * src/send.c (SEND_EXIT_IF_ERROR): Adjusted tests and removed test
5748 for invalid socket because this is now done in sock_close. Set
5750 (SEND_EXIT_IF_NOTOK): Set closed sock to NULL.
5751 (send_smtp_open): Use only SockInfo.
5753 * src/news.c (news_session_new): Use SockInfo here.
5754 (news_session_destroy): Ditto and set sock to NULL.
5756 * src/nntp.c: Use SockInfo instead of integers
5757 * src/smtp.c: Ditto.
5759 * src/recv.c: Ditto.
5761 * src/inc.c (inc_pop3_session_do): Removed sock_sockinfo_free. Put
5762 gdk_input_add into a wrapper.
5764 * src/esmtp.c: Changed socket descriptors to use SockInfo.
5765 * src/esmtp.h: Ditto, included socket.h.
5766 * src/session.h (struct _Session): Likewise.
5767 * src/imap.c (imap_open): Return SockInfo ptr and not an integer.
5768 Removed access to internal data of SockInfo. Changed all callers
5769 and functions to take SockInfo.
5770 (imap_session_new): Use sock_close here.
5771 (imap_session_destroy): Ditto.
5773 * src/compose.c (compose_exec_ext_editor): Replaced sock_write by
5776 * src/main.c (app_will_exit): Close lock socket using fd_close.
5777 (prohibit_duplicate_launch): Use fd_xxx functions instead of sock_xxx.
5778 (lock_socket_input_cb): Ditto.
5780 * src/socket.h, src/socket.c: Prepared SockInfo structure to use
5781 glib channels. Changed all sock_xxx to use SockInfo instead of an
5783 (sock_connect_unix, sock_open_unix, sock_accept): Renamed to ..
5784 (fd_connect_unix, fd_open_unix, fd_accept): .. this and changed all
5786 (fd_read, fd_write, fd_close): New.
5787 (sock_sockinfo_free): Removed.
5788 * src/socket.c (sock_connect_nb): Use close instead sock_close here.
5789 (sock_connect): Ditto.
5793 * config.h.in: removed.
5794 * ac/Makefile.am: added gnupg-check-typedef.m4 to MACROS.
5795 * .cvsignore: added.
5797 src/progressdialog.[ch]
5798 src/pixmaps/complete.xpm
5799 src/pixmaps/continue.xpm
5800 src/pixmaps/error.xpm: applied the patch from Leandro Pereira
5801 that displays the state of message incorporation (thanks!).
5802 * src/inc.c: made the progress dialog change the text of status.
5806 * removed po/*.gmo, configure, stamp-h.in, aclocal.m4, Makefile.in
5808 * COPYING: removed RSA copyright notice.
5809 * removed po/sylpheed.pot, po/stamp-cat-id, po/cat-id-tbl.c.
5810 * configure.in: added the check of sys/utsname.h.
5812 2001-04-24 Werner Koch <wk@gnupg.org>
5814 Merged most of the changes from the W32 branch in.
5816 * configure.in: Require gpgme >= 0.2.1
5818 * acconfig.h (HAVE_U32_TYPEDEF): New.
5819 * ac/gnupg-check-typedef.m4: New.
5820 * configure.in: Check for u32 type and the size of some types.
5821 * src/utils.h: Define the u32 type and related constants.
5823 * src/about.c (about_create): Removed the note about MD5. We are
5824 not any longer using the RSA Inc. implementation.
5825 * src/md5ify.c, src/md5ify.h, src/md5global.h: Removed.
5826 * src/md5c.c, src/md5c.h: Replaced by an FSF implementation and
5827 renamed the function to standard lowercase convention. Changed all
5829 (md5_hex_digest): New.
5830 (md5_hmac): Add hmac function by Martin Schaaf with some
5832 (md5_hex_hmac): New.
5833 * src/esmtp.c, src/esmtp.h (md5_hex_hmac): Removed.
5834 (hmac_md5): Removed.
5835 * src/pop.c (pop3_getauth_apop_send): Replaced the md5_digest by
5836 the new md5_hex_digest function.
5838 * src/about.c: Include utsname.h only if available
5840 * src/utils.c, src/utils.h (get_home_dir): New to better cope with
5841 special Windoze requirements. Changed all calls to
5842 g_get_home_dir() to this function.
5844 * simple-gettext.c: New.
5846 * src/main.c (main): Issue a warning if GnuPG is not properly
5849 * src/sigstatus.c, src/sigstatus.h: New.
5850 * src/rfc2015.c (check_signature): Use the sigstatus window and
5851 get the status texts from a utility function.
5853 * src/select-keys.c: Removed the global select_keys var and
5854 pass an allocated one along all functions.
5855 (set_row): Display only keys capable of encryption.
5856 (update_progress): Replaced the progressbar by
5857 a windmill and a text showing for which key we are collecting
5858 info. Removed progressbar everywhere else and updated callers.
5860 * src/prefs_common.c (prefs_privacy_create) [__MINGW32__]: Do not
5861 display the grab button.
5865 * src/prefs_common.[ch]
5866 src/procheader.c: applied the patch from Darko Koruga that
5867 allows user to define their own format for displaying date in
5868 summary view using strftime() (thanks!).
5869 * src/prefs_common.c: prefs_quote_colors_dialog()
5870 src/mainwindow.c: main_window_reflect_prefs_all(): made it
5871 update message colors if the colors setting is changed.
5872 * src/main.[ch]: made it remember the startup directory.
5873 * src/export.c: export_mbox(): made it initially chdir to the
5875 * src/filesel.c: filesel_select_file(): made it open the startup
5880 * added option to warn about queued messages on exit [sergey]:
5882 * src/compose.c: compose_queue(): call folder_item_scan()
5883 and folderview_update_item() after queueing.
5884 * src/folderview.c: folderview_update_node(): draw the queue
5885 folder in bold font if there are queued messages.
5886 * src/mainwindow.c: queued_messages(): new function.
5887 app_exit_cb(): display warning if there are queued messages
5888 if warn_queued_on_exit is set.
5889 * prefs_common.[ch]: add warn_queued_on_exit option.
5891 * src/mainwindow.c: moved queued_messages() to main.c, and renamed
5892 it to get_queued_message_num().
5893 * src/main.c: app_will_exit(): moved warning dialog code from
5894 app_exit_cb(), and added manage_window_focus_in().
5896 * enhanced GnuPG key selection support [sergey]:
5898 * src/select-keys.c: updated to newer version from Win32
5899 branch with support for selecting arbitrary keys.
5900 * src/prefs_account.c: added the Privacy tab to the account
5902 prefs_account_privacy_create(),
5903 prefs_account_sign_key_set_data_from_radiobtn(),
5904 prefs_account_sign_key_set_radiobtn(): new functions.
5905 * src/prefs_account.h: new preferences sign_key_type, sign_key_id.
5906 * src/rfc2015.c: set_signers(): new function.
5907 pgp_sign(): add the account parameter, call set_signers().
5908 rfc2015_sign(): add the account parameter, pass it to pgp_sign().
5909 * src/rfc2015.h: rfc2015_sign(): updated prototype.
5910 * src/compose.c: pass the current account to rfc2015_sign().
5914 * src/mbox.c: export_to_mbox(): fixed a memory leak bug.
5918 * src/mbox.[ch]: renamed export_mbox() to export_to_mbox().
5919 Fixed a memory leak bug.
5920 * src/export.[ch]: added for exporting folder to mbox.
5921 * src/import.[ch]: made import_mbox() take default folder.
5922 Added description to the dialog.
5923 * src/summaryview.c: summary_show(): fixed a bug that kept the
5924 toolbar buttons insensitive after receiving messages.
5926 src/import.c: fixed a bug that caused quitting of the program
5927 when OK or Cancel button was clicked several time.
5928 * src/prefs_common.[ch]
5929 src/addressbook.c: added "Add address to destination when
5930 double-clicked" option.
5934 * src/prefs_common.[ch]: reorganized the items of settings,
5935 and added Message tab.
5936 * src/main.c: parse_cmd_opt(): added command line option --version.
5937 * src/mh.c: made it unset MSG_DELETED flag when moved/copied to
5939 * src/prefs_common.[ch]
5940 src/headerview.[ch]: the header pane can be toggled now.
5941 * src/prefs_common.[ch]
5942 src/textview.c: page scroll step is now selectable between
5943 one page and half page.
5944 * src/mbox.[ch]: added export_mbox() that reads all messages
5945 in a folder, and store them into one mbox file.
5949 * src/prefs_filter.[ch]: separated filter setting code from
5950 prefs_common.c, and made it a separate dialog.
5956 * src/automaton.[ch]
5957 src/inc.c: fixed the bug that made Sylpheed crash when clicking
5958 Cancel button while getting new mail (thanks to Sergey Vlasov).
5959 * src/xml.c: xml_build_tree()
5960 src/addressbook.c: fixed a bug that caused infinite loop if an
5961 illegal XML file was given.
5966 src/inc.c: applied the patch from Sergey Vlasov that fixes the
5967 problem when the "Go to inbox after receiving new mail" option
5968 was turned off (thanks!).
5972 * src/xml.[ch]: modified so that it supports some characters which
5973 must be escaped, and multiple-lined tag.
5975 src/addressbook.c: modified so that it escapes some characters
5976 like '<', '>', '&', ''', '"'.
5986 src/summaryview.[ch]: applied the patch from Darko Koruga that
5987 adds copy message operation for the MH folders (thanks!).
5988 * src/imap.c: disabled slash to dot conversion.
5989 * src/imageview.c: fixed a bug that displayed an old image when
5990 loading of a image failed (thanks to Darko Koruga).
5994 * src/procmsg.c: procmsg_read_cache(): added setvbuf() to speed up
5995 cache reading (thanks to Sergey Vlasov).
5997 src/summaryview.[ch]
5998 prefs_common.[ch]: applied the patch that keeps the same folder
5999 after receiving new mail (thanks to Sergey Vlasov).
6001 src/utils.[ch]: moved get_quote_level() to utils.c.
6005 * ac/Makefile.am: added.
6007 configure.in: added ac directory.
6011 * src/summaryview.c: summary_filter(): made it move messages
6012 immediately if immediate_exec option is set.
6013 * src/prefs_common.[ch]
6015 src/gtkutils.[ch]: applied the message coloring patch from
6016 Stephen Anthony with some modification (thanks!).
6018 src/mimeview.c: modified the behavior of MimeView (thanks to
6023 * src/utils.c: copy_file()
6024 src/mh.c: applied (and modified) the patch from Darko Koruga
6025 that enables to move messages across file systems (thanks!).
6027 src/utils.[ch]: applied the patch from Jorge Van Hemelryck
6028 that converts the date of messages to the local time (thanks!).
6029 * src/utils.c: remote_tzoffset_sec(): fixed a bug that the signs
6030 of one-letter timezone were reversed.
6031 * src/folder.c: folder_item_add_msg(): put the assertion for the
6032 add_msg() method (thanks to TAKANO).
6036 * src/procmime.c: procmime_decode_content(): fixed a bug that
6037 corrupted quoted-printable encoded messages when they include
6038 `=00' (thanks to Masahiro Tomita).
6041 src/summaryview.c: modified the DnD behavior of MIME view
6042 (thanks to HIRAMATSU).
6046 * src/about.c: applied the patch from Sergey Vlasov that fixes
6047 the appearance of the about dialog (thanks!).
6048 * src/prefs_common.[ch]
6054 src/textview.[ch]: applied the GnuPG support patch which had
6055 ported from the sylpheed-win32 branch (thanks to Sergey Vlasov).
6056 * INSTALL, INSTALL.jp: updated the description about GnuPG.
6060 * src/utils.[ch]: added references_list_append() that parses
6061 References header and makes it string list.
6062 * src/compose.c: modified so that too long References header is
6063 truncated, garbage characters are removed, and header is tidied
6064 up (thanks to Matthias Intemann).
6068 * src/addr_compl.c: applied the address completion bugfix patch
6069 from Alfons Hoogervorst (thanks!).
6073 * src/gtksctree.c: modified so that the tree_select_row signal
6074 actually pass the column number.
6075 * src/summaryview.c: summary_selected(): made generic mark and
6076 unread mark can be toggled with clicking of the columns.
6077 Added summary_mark_row_as_read() and summary_mark_row_as_unread().
6078 * src/prefs_common.c
6079 src/prefs_account.c: applied the layout fix patches from Sergey
6080 Vlasov, and adjusted some widths of GtkEntry widgets.
6081 * src/prefs.c: prefs_dialog_create(): enable notebook to take focus.
6082 * src/inc.c: inc_start(): modified so that authentication dialogs
6083 show server name too (thanks to Sergey Vlasov).
6087 * src/mimeview.c: mimeview_key_pressed(): fixed a bug that caused
6088 segmentation fault when a malformed multipart message is shown
6089 (thanks to Sergey Vlasov).
6090 * src/summaryview.c: summary_display_msg(): made it focus to the
6091 summary view if the MIME list is empty.
6095 * src/pixmaps/deleted.xpm
6096 src/pixmaps/mark.xpm
6097 src/summaryview.c: added deleted and mark icon.
6098 * src/gtkutils.c: gtkut_widget_init(): changed gtk_widget_destroy()
6099 to gtk_widget_unref().
6100 * src/addr_compl.c: start_address_completion(): fixed the bug that
6101 displayed warning when the address book was empty (thanks to
6106 * src/summaryview.c: summary_show(): fixed a memory leak bug
6107 (thanks to ChiDeok Hwang).
6108 * src/pixmaps/forwarded.xpm
6109 src/pixmaps/replied.xpm
6111 src/pixmaps/unread.xpm
6116 src/summaryview.[ch]: applied the patch from Marc Hoper
6117 that adds replied and forwarded mark to replying or forwarding
6118 messages (thanks!). And new and unread mark were replaced
6119 by the icons David Mehrmann created (thanks!).
6120 * src/summaryview.c: made the width of unread and MIME column
6122 * src/prefs.c: prefs_config_parse_one_line(): made it check the
6123 '=' separator (thanks to Sergey Vlasov).
6127 * src/prefs_common.[ch]: moved smooth scroll option to the
6129 * src/textview.c: made the one-line scroll also perform smooth
6134 * src/prefs_common.[ch]
6135 src/textview.c: applied the smooth scroll patch from Setoh and
6140 * src/summaryview.c: summary_attract_by_subject(): rewritten it
6141 using hash table for speeding up.
6142 * src/prefs_account.c: made filter_on_receive TRUE by default.
6143 * src/mainwindow.c: reordered menu items.
6147 * src/gtkutils.c: gtkut_clist_bindings_add(): fixed a bug that
6148 caused address completion not to accept space and enter key.
6153 src/codeconv.c: fixed a bug that didn't encode non-ASCII headers
6155 * src/compose.c: fixed a bug that didn't decode some headers
6156 correctly when replying or reediting drafts (thanks to Sergey
6161 * src/gtkutils.[ch]: added gtkut_widget_init() that modifies the
6162 behaviors of some classes.
6163 * src/main.c: main(): made it call gtkut_widget_init() first.
6164 * src/summaryview.c: summary_create(): removed the key binding code.
6168 * src/procmsg.[ch]: modified for the sake of readability.
6172 * src/mainwindow.c: changed "Clean trash" to "Empty trash".
6173 Added new menu items for folder manipulation.
6174 allsel_cb(): made it change the target between summary view and
6175 message view according to the input focus.
6176 Removed "Select all" from Summary submenu.
6177 * src/folderview.[ch]: added functions for creating/renaming/deleting
6179 * src/procmsg.[ch]: made "marked" and "deleted" flag permanent, and
6180 removed "important" flag.
6181 * src/summaryview.c: added summary_set_row_marks() that sets style
6182 of a row according to the flags, and made some functions use it.
6183 * src/mainwindow.c: allsel_cb(): modified so that it selects
6184 summary view correctly if message view is toggled off.
6188 * src/socket.c: sock_connect_by_getaddrinfo(): fixed a resource
6189 leak bug of socket, and rewrote the routine.
6190 * src/inc.c: inc_mail(), inc_all_account_mail(): fixed a bug that
6191 displayed the wrong unread number in the folder tree if a
6192 folder was open and new messages arrived at the folder.
6193 * src/socket.c: sock_connect_by_getaddrinfo(): fixed a bug
6198 * src/mh.c: mh_move_msg(), mh_move_msgs_with_dest(): made it
6199 check the existence of the destination file.
6200 * src/procmsg.c: procmsg_set_flags(): made it count the last
6201 number of the message list (and fixed a bug that didn't open
6202 newly arrived message).
6206 * src/prefs_common.c: prefs_send_create(): removed EUC-JP and
6207 Shift_JIS from the outgoing codeset.
6215 * src/send.c: send_message_queue(): modified so that it finds
6216 the account from the `From' and the server name of the queued
6218 * src/account.[ch]: added account_find_from_smtp_server() that
6219 finds an account from the specified address and SMTP server.
6222 src/summaryview.[ch]
6223 src/sourcewindow.[ch]: integrated the viewing source patch from
6224 DINH V. Hoßþ(thanks!).
6228 * src/addr_compl.[ch]
6230 src/compose.c: applied the enhanced address completion patch
6231 from Alfons Hoogervorst (thanks!).
6232 * src/addr_compl.c: replaced g_assert() with g_return(_val)_if_fail().
6233 * src/folder.c: folder_init()
6234 src/folderview.c: folderview_drag_motion_cb()
6235 src/procmsg.c: procmsg_clean_trash()
6236 src/summaryview.c: summary_start_drag()
6237 src/imap.[ch]: integrated the IMAP4 move/remove function patch
6238 from Suzuki Mio (thanks!).
6242 * src/main.c: parse_cmd_opt(): made the --compose option realize
6244 * src/utils.[ch]: execute_async(): supported quoted arguments
6246 strstr_with_skip_quote(), strsplit_with_quote(): quote-supported
6247 version of g_strsplit().
6248 * src/mimeview.c: mimeview_view_file()
6249 src/prefs_common.c: added single quotation mark around the file
6261 src/utils.[ch]: applied the security fix patch from Dmitry V.
6262 Levin with some modification (thanks!). Added my_tmpfile() to
6264 * src/main.c: added --receive-all command-line option.
6268 * src/socket.c: sock_connect_thread(): fixed a bug that didn't
6269 compile if both multithread and IPv6 are enabled (thanks to
6272 src/compose.c: applied a patch from Jason McCarver that allows
6273 FIFO for signature file (thanks!).
6274 * src/textview.c: made some more refactoring.
6275 * src/socket.c: sock_accept(): changed socklen_t to gint.
6280 src/textview.c: some code cleanups.
6286 src/textview.c: integrated the patch from Alfons Hoogervorst that
6287 fixes some glitches in clickable URI and enables mail addresses
6288 clickable, and enables the --compose command line option to
6289 specify address (thanks!).
6296 src/prefs_account.[ch]
6297 src/Makefile.am: applied the SMTP AUTH patch from Martin Schaaf
6298 and fixed its a few bugs (thanks!).
6299 * src/textview.c: textview_key_pressed(): made it don't move focus
6301 * src/main.c: parse_cmd_opt(): modified the help message.
6302 * src/html.[ch]: added empty_line to HTMLParser and modified
6303 the parser routines a bit.
6307 * src/html.c: added eucjp_symbol_list, and added some characters
6308 to ascii_symbol_list.
6312 * src/codeconv.[ch]: added a member `charset' and `charset_str'
6314 * src/html.[ch]: added the symbol list for ISO-8859-1 codeset.
6315 html_parser_new(): made it change the symbol hash table
6316 according to the character set of the document.
6317 html_parse_special(): made it recognize character code number.
6321 * src/textview.c: added textview_show_html() that parses HTML and
6323 textview_show_part(): made it call textview_show_html() if
6324 the part is text/html.
6325 * src/html.[ch]: implemented HTML parser.
6329 * src/codeconv.[ch]: added CodeConverter, and its methods
6330 (conv_code_converter_new(), conv_code_converter_destroy(), and
6332 * src/textview.c: removed the branches by HAVE_LIBJCONV and
6333 rewrote them using CodeConverter.
6337 * src/mbox.c: proc_mbox(): workaround for duplicated From_ line.
6341 * src/codeconv.c: some code cleanups.
6345 * src/mainwindow.c: main_window_popup(): fixed a bug that didn't
6346 popup the main window correctly.
6347 * src/codeconv.h: fixed a bug that the definition of CS_EUC_CN and
6348 CS_EUC_TW was reversed (thanks to Sakamoto).
6355 src/socket.[ch]: applied the patch from Hiramatu that enables
6356 prohibition of multiple execution and remote control with
6357 command line option (thanks!).
6361 * src/summaryview.c: summary_button_pressed(), summary_selected():
6362 made it toggle the view if middle button is clicked while message
6364 summary_drag_data_get(): fixed a memory leaking.
6366 src/compose.c: compose_write_headers(): modified so that it uses
6367 host_alias for X-Mailer or X-Newsreader field.
6373 * src/folderview.c: fixed a bug that prevented a folder from being
6374 created if there were already folders that have the same name
6375 somewhere at another place.
6379 * src/folderview.c: folderview_update_all(): fixed a bug that
6380 caused segmentation fault when a folder was selected after
6381 updating the folder tree.
6382 * src/compose.c: compose_send(): fixed a locking bug.
6383 compose_write_headers(): fixed a bug that referred to cur_account.
6384 compose_convert_header(): made it check the arguments.
6388 * src/main.c: some cleanups and added --help option.
6392 * src/send.c: re-enabled user-defined domain name setting.
6393 * src/utils.c: is_next_mbs(): changed the size of temporary
6394 multibyte array to MB_CUR_MAX.
6395 strdup_mbstowcs(): added error check to mbstowcs().
6396 strdup_wcstombs(): added error check to wcstombs().
6397 * src/addr_compl.c: get_address_from_edit(): made it check the
6398 return value of strdup_mbstowcs().
6399 * src/codeconv.c: conv_encode_header(): added error checking
6400 to strdup_mbstowcs().
6404 * src/utils.c: log_error(): changed g_error() to g_warning() so
6405 that it doesn't abort.
6407 * src/addr_compl.c: add_address(): fixed a bug that aborted the
6408 program if the name or the address is empty.
6409 get_address_from_edit(): supported multibyte characters.
6410 * configure.in: fixed a typo.
6411 * src/send.c: re-enabled user-defined SMTP port setting.
6417 * configure.in: added --enable-gpgme option, and disabled GPGME
6419 * made GPGME related members in MimeInfo not used if disabled.
6420 * src/rfc2015.c: some cleanups for warning.
6424 INSTALL.jp: updated.
6425 * Makefile.am: modified bzip2 option.
6429 * src/procmime.[ch]: added MIME_APPLICATION_OCTET_STREAM to
6431 * src/mimeview.c: mimeview_view_file(): made it do nothing if
6432 the MIME type is application/octet-stream.
6433 * src/folderview.c: folderview_update_all(): made it show modal
6434 dialog while updating folders.
6435 * src/folderview.c: folderview_update_all(): fixed a bug that
6436 didn't remove the dialog.
6440 * src/mimeinfo.c: merged the patch from John E.P. Hynes that
6441 launches the attached file using metamail (thanks!).
6442 * src/procmime.[ch]: added procmime_get_tmp_file_name().
6444 src/addr_compl.[ch]: merged the patch from Alfons Hoogervorst
6445 that enables address completion in the address entry on the
6446 composition window (thanks!).
6447 * src/addr_compl.c: get_all_addresses(), read_address_book():
6448 modified so that it uses xml_free_tree() for freeing the address
6453 * src/utils.c: remove_dir_recursive(): fixed a bug that failed to
6454 remove the current directory (thanks to Maki).
6455 * src/summary_search.c: added `Select all matched' option to the
6456 search dialog (thanks to Takahashi).
6457 * src/pixmaps/stock_mail_attach.xpm
6458 src/pixmaps/tb_address_book.xpm
6459 src/compose.c: added some toolbar icons contributed from
6460 Leandro Pereira (thanks!).
6464 * src/rfc2015.c: passphrase_cb(): *finally* fixed a bug that caused
6465 segmentation fault when the passphrase dialog was cancelled.
6466 Hided the passphrase in the debug message.
6467 * src/about.c: about_create(): fixed a bug that failed to compile
6468 when none of the features were used.
6469 * src/foldersel.c: foldersel_set_tree(): made it display all
6471 * src/inc.c: inc_start(): fixed a bug that showed password dialog
6472 continuously if it was cancelled.
6473 * src/summaryview.c: summary_write_cache(): put an assertion after
6474 folder_item_get_cache_file() to prevent the crash.
6475 * thanks to Maki for the above four fixes.
6476 * src/utils.h: added #include <alloca.h>.
6480 * src/rfc2015.c: changed some g_message() used for error messages
6485 * src/procmsg.[ch]: modified READ_CACHE_DATA() macro so that
6486 it can handle a string data of which length >= BUFFSIZE.
6487 * src/rfc2015.c: rfc2015_encrypt(): changed return to `goto failure'.
6488 * src/pixmaps/stock_mail_receive_all.xpm
6489 src/pixmaps/stock_mail_reply_to_all.xpm
6491 src/mainwindow.c: main_window_toolbar_create(): added new toolbar
6492 icons contributed from David Mehrmann (thanks!).
6493 * src/inc.[ch]: overhauled the architecture so that it don't create
6494 and destroy progress dialog for each incorporation in `get all'
6499 * src/mh.c: mh_scan_tree_recursive(): fixed a bug that mistook
6500 sub folders named `inbox', etc. as special folders.
6501 * src/rfc2015.c: rfc2015_encrypt(): fixed a bug that didn't quote
6506 * applied the GnuPG patch from Werner Koch (thanks!).
6507 * removed Mixmaster support.
6508 * src/rfc2015.c: changed g_error() to g_warning() and modified some
6510 * src/about.c: about_create(): modified compiled-in features list.
6514 INSTALL.jp: updated.
6515 * src/select-keys.c: create_dialog(): modified the layout.
6516 * src/headerwindow.c
6518 src/logwindow.c: made it raise the window if the window is already
6520 * src/prefs_common.[ch]: added an option for immediate execution.
6521 * src/summaryview.c: made it execute immediately when messages are
6522 moved or deleted if immediate_exec option is turned on.
6523 * src/summaryview.c: summary_delete(), summary_move_selected_to():
6524 moved summary_step() before summary_execute().
6525 * src/folderview.c: folderview_update_all(): made it scan folder
6527 * src/compose.c: compose_write_headers(): made it don't add
6528 In-Reply-To header if to_list is empty.
6530 2001-01-09 Werner Koch <wk@gnupg.org>
6532 * configure.in, acconfig.h: Check for GPGME.
6533 * ac/: New directory for local autoconf macros.
6534 * src/Makefile.am: Add support for GPGME
6536 * src/main.c (idle_function_for_gpgme): New.
6537 (main): Register this function.
6539 * src/about.c: Add a note about GPGME.
6541 * src/rfc2015.c, rfc2015.h: New.
6543 * src/mimeview.c (mimeview_show_message): Check signature.
6544 * src/procmime.c (procmime_scan_message): Ditto.
6546 * src/messageview.c (messageview_show): Add decryption stuff.
6548 * src/compose.c (compose_write_to_file): Encrypt the file if requested.
6549 (compose_toggle_encrypt_cb): New
6550 (compose_toggle_mixmaster_cb): New, just to be prepared for
6552 (compose_write_headers): Suppress some headers in mixmaster mode.
6554 * src/prefs_common.c (prefs_common_create): Add Privacy notebook sheet.
6555 (prefs_privacy_create): New. Also some new structures etc.
6556 * src/compose.c (compose_create): Set encrypt button to prefs default.
6557 * src/compose.h (struct _Compose): Add use_encryption, use_mixmaster.
6559 * src/compose.c (compose_send): Add missing unlock before one return.
6563 * src/gtksctree.[ch]
6565 src/summaryview.[ch]: applied the patch from Hiramatu that enables
6566 DnD from the summary view to the folder view and fixes some other
6568 * src/mainwindow.c: scan_tree_func(): fixed a bug that caused
6570 * src/imap.c: quoted user name in LOGIN and folder name in SELECT.
6571 * src/gtksctree.c: gtk_sctree_button_press(): fixed a bug that
6572 didn't toggle expansion of node.
6576 * src/imap.c: applied the patch from Nishimura that updates the
6577 message list more precisely and reads the message flags (thanks!).
6578 * src/textview.c: textview_show_header(): made X-Newsreader field
6580 * src/summaryview.c: summary_show(): made it flush events when
6585 * src/summaryview.c: applied the patch from Alfons that enabled
6586 the horizontal scrollbar of summary view (thanks!).
6590 * src/compose.c: compose_cb(): fixed a bug that didn't open the
6591 composition window right after launching the program.
6592 * src/setup.c: scan_tree_func(): fixed a bug that caused
6599 * src/textview.c: textview_set_font(): fixed a bug that caused
6600 segmentation fault if the mode of the text widget was changed
6601 between multibyte and singlebyte while the region was selected
6607 src/summaryview.c: made it unable to delete or move messages when
6609 * src/prefs_common.c
6610 src/news.c: added the option for maximum news article number.
6614 * src/compose.c: compose_send(): changed the location of temporary
6615 file. Made it use the default account if all of tried account
6616 aren't mail one, and made it show alert dialog and abort when even
6618 * src/prefs_account.c: prefs_account_get_new_id(): made it preserve
6620 prefs_account_open(): made it fill in personal information
6621 according to the default account when creating a new account.
6622 * sylpheed.spec.in: added to autogenerate sylpheed.spec with the
6623 proper version number (thanks to BONAIM).
6625 Makefile.am: added entries for sylpheed.spec.in.
6629 * src/compose.[ch]: modified so that it can change account
6631 * src/send.[ch]: modified so that it doesn't see cur_account.
6632 * src/prefs_account.c: modified so that news setting doesn't
6633 show SMTP server entry.
6637 * src/folderview.c: fixed a bug that didn't sort special folders
6638 correctly when a new folder is created or renamed.
6642 * src/compose.[ch]: enabled to select account at composing window.
6643 * src/folderview.c: made it display unread number next to folder
6645 * src/prefs_common.[ch]: added the option for unread number display.
6649 * src/compose.[ch]: integrated news posting patch from DINH V. Ho`
6650 and made many modifications (thanks!).
6651 compose_write_headers(): made the spaces in newsgroups removed.
6652 Supported Followup-To.
6653 compose_destroy(): got the objects removed properly.
6654 * src/news.c: merged news_post_to_group() and news_post() since
6655 they doesn't have to do multiple posting.
6656 * src/import.c: import_destsel_cb(): fixed a bug that failed to
6657 import into the selected folder.
6658 * src/prefs_account.c: modified the interfaces.
6663 prefs_common.c: changed "SHIFT-JIS" to "Shift_JIS" since the
6664 string is registerd to IANA.
6665 * src/nntp.[ch]: added nntp_post().
6666 * src/news.[ch]: added news_post() and news_post_to_group().
6670 * src/account.c: account_edit_open()
6671 src/mainwindow.c: new_account_cb(): made it unable to edit
6672 accounts if some composing windows are open.
6676 * src/folder.[ch]: added folder_set_name().
6677 * src/account.c: made a folder name of IMAP4/NNTP become the same
6678 as the name of account.
6682 * src/summaryview.c: summary_filter_func(): fixed a bug that failed
6689 * src/mbox.c: fixed a bug that didn't incorporate spool file
6690 correctly. Modified so that it recognizes From_ line as separator
6691 of messages even if the previous line isn't empty line.
6692 * src/send.c: send_message_queue()
6693 src/procmsg.c: procmsg_send_queue(): Fixed a bug that printed
6694 warning when it tried to delete a sent message.
6701 src/news.[ch]: modified so that it actually gets news articles.
6702 * src/utils.[ch]: added make_dir_hier() that creates directory
6705 folder_item_get_cache_file(), folder_item_get_mark_file():
6706 made it creates cache directory if it doesn't exist.
6707 folder_add(): made it insert the added folder into the correct
6709 * src/imap.[ch]: modified so that it suits the new folder
6710 architecture. Fixed a bug that caused segmentation fault
6711 if authentication failed at imap_auth().
6712 * src/folderview.c: implemented IMAP4 folder handling routines.
6716 * src/prefs_account.[ch]: added account ID and nntp_server
6717 to PrefsAccount. And added the interface for NNTP server.
6718 * src/folderview.c: modified news folder handling routines.
6719 * src/folder.[ch]: removed cache_dir from RemoteFolder, and
6720 modified folder_item_get_path().
6724 * src/folder.[ch]: added create_folder(), rename_folder(),
6725 remove_folder() to Folder class.
6726 * src/mh.[ch]: added mh_create_folder(), mh_rename_folder(), and
6728 Implemented mh_create_tree() that creates MH directory tree.
6729 mh_rename_folder(): modified so that the paths of sub folders
6731 * src/folderview.c: modified folderview_new_folder_cb(),
6732 folderview_rename_folder_cb(), and folderview_delete_folder_cb()
6733 so that they work properly.
6734 Added folderview_remove_mailbox_cb() and the menu entry that
6735 remove mailbox from folder tree.
6736 * src/setup.[ch]: added for initial setup.
6737 * src/alertpanel.c: modified the appearance of the dialog.
6738 * src/compose.c: fixed compose_save_to_outbox() and
6739 compose_queue() so that it sets flags correctly.
6743 * src/mainwindow.c: modified the strings of toolbar labels.
6747 * src/gtkutils.[ch]: added gtkut_ctree_node_move_if_on_the_edge().
6748 * src/summaryview.c: summary_display_msg(): made it scroll the
6749 list if the message of the edge of that is displayed.
6754 src/mh.[ch]: added functions for moving messages.
6755 * src/procmsg.[ch]: moved procmsg_move_messages_with_dest()
6756 to folder.c and mh.c. Added procmsg_to_folder_hash_table().
6760 * src/utils.[ch]: added get_tmp_file().
6763 src/folder.c: fixed a bug that failed to drop messages.
6764 * src/mh.c: mh_scan_folder(): made it check new, unread, and total
6765 number of the folder.
6769 * src/folderview.c: added special folder setting routine.
6770 * src/folder.[ch]: added a method is_msg_changed().
6771 Implemented folder_find_item_from_path().
6772 * src/summaryview.c: fixed some bugs that wrongly freed FolderItem's.
6773 * autogen.sh: fixed so that the configure can take arguments.
6778 src/mainwindow.[ch]: added main_window_new_mailbox() that asks
6779 the path of mailbox and create the one.
6780 * src/folderview.c: made the folder tree and selected folder
6786 src/folder.c: implemented mh_scan_tree() that scans the folder
6787 recursively and create the tree.
6807 src/summaryview.[ch]
6809 src/Makefile.am: merged the development tree into the cvs tree.
6810 Some functions are not unimplemented yet.
6818 * src/xml.[ch]: supported omitted tag (<tag />).
6819 * src/procmsg.c: procmsg_msg_exist(): fixed a memory leak bug.
6820 * src/imap.c: imap_parse_atom(): fixed a bug that caused
6821 segmentation fault if the subject was empty (thanks to Tsutsui).
6822 * src/folder.[ch]: updated.
6826 * src/xml.[ch]: added xml_parse_file() that parses the whole XML
6827 file specified and returns the tree.
6831 * po/pt_BR.po: fixed some typos that caused segmentation fault.
6837 * src/session.h: added.
6838 * src/folder.[ch]: updated.
6839 * src/compose.c: compose_write_to_file()
6840 src/codeconv.c: conv_get_outgoing_charset_str(): fixed a bug
6841 that put a garbage to charset if the outgoing character set was
6842 specified and non-ascii characters were used in subject.
6846 * src/statusbar.c: statusbar_puts(): fixed a bug that locked the
6847 progress if the status bar was hidden.
6851 * src/folder.[ch]: added for the more object-oriented folder
6859 src/prefs_common.[ch]: made the state of status bar get preserved.
6860 * src/compose.c: compose_insert_sig(): modified so that it doesn't
6861 put a separator if a signature file doesn't exist.
6862 * src/prefs_account.[ch]
6863 src/inc.c: added the option that toggles whether to receive
6864 messages when getting from all accounts.
6866 README.jp: updated the description and added some usages.
6872 src/compose.[ch]: applied the patches from Alfons Hoogervorst
6873 that makes the ruler of composition window graphical (thanks!).
6879 src/prefs_common.c: replaced CS_WINDOWS_1251 with CS_CP1251.
6885 * src/compose.c: turned the color of quoted messages black again.
6889 * src/about.c: added a clickable URI to the Sylpheed home page,
6890 and a list of compiled-in features.
6891 * src/compose.c: made the color of quoted messages blue.
6892 * src/summaryview.c: added `Show all header' to the context menu.
6893 * src/prefs_common.c: removed the threading option from the dialog.
6894 * src/compose.c: fixed a bug that didn't parse the quotation format
6899 * src/compose.c: compose_set_ext_editor_sensitive(): modified so
6900 that it toggles linewrap menu item and tool button.
6901 * src/prefs_common.c: modified the default of the signature
6903 * src/compose.[ch]: added ruler to the compose window.
6904 * src/prefs_common.[ch]: added a member for the state of ruler
6909 * src/headerview.[ch]: added the destroy function.
6910 * src/messageview.c: messageview_destroy(): fixed a memory leak
6911 bug that didn't freed the HeaderView object.
6912 * src/prefs.c: prefs_write_open(): fixed a memory leak bug.
6913 * src/xml.c: xml_close_file(): fixed a memory leak bug (thanks
6914 to Alfons Hoogervorst for the above three memory leak bug fixes).
6923 INSTALL.jp: modified some descriptions.
6927 * src/compose.c: implemented line-wrapping functions.
6928 * src/prefs_common.[ch]: added the settings for line-wrapping.
6929 * src/codeconv.[ch]: added Windows-1251 to the codesets.
6930 conv_jistoeuc(): fixed a bug that caused segmentation fault
6931 when some half-width kana characters appeared.
6932 * src/summaryview.c: summary_select_all(): made it show message
6933 on the status bar if the number of messages is large.
6937 * src/compose.c: compose_reply(), compose_quote_parse_fmt():
6938 modified so that it parses the quotation mark too.
6939 Added %I that means the initial of sender to the format.
6940 * src/codeconv.[ch]: added GB2312 and Big5 to the codesets.
6941 Fixed a bug that set the wrong outgoing codeset.
6943 src/prefs_common.c: modified the menu item of Chinese codeset.
6948 src/prefs_common.[ch]: modified so that outgoing charset is
6949 saved as a string, not a number.
6953 * src/textview.c: textview_set_font(): changed the scheme of
6954 selecting between font and fontset. And changed the default
6956 * src/headerview.c: headerview_show_xface(): made it ignore
6958 * src/codeconv.c: conv_codeset_strdup(), conv_get_code_conv_func():
6959 modified so that it consider the source codeset as ISO-2022-JP if
6960 it is NULL and the current locale is Japanese.
6964 * src/textview.c: textview_destroy(): fixed a bug that caused
6965 segmentation fault if textview->msgfont is NULL (thanks to
6968 src/defs.h: applied the patch from Yanase that enables to
6969 save the shortcuts of the menus (thanks!).
6973 * src/mainwindow.[ch]: added main_window_set_menu_sensitive() that
6974 toggles the sensitivity of menu items.
6975 * src/summaryview.c: renamed summary_set_popup_sensitive() to
6976 summary_set_menu_sensitive(), and made it set the sensitivity of
6981 * src/textview.c: textview_init(): fixed a bug that didn't disable
6982 the theme engine of GtkText (thanks to Hiramatu).
6983 * src/compose.c: compose_quote_parse_fmt(): added %n and %N that
6984 means the full name of sender and the first name.
6985 * manual/ja/*.??ml: updated to the latest version.
6991 * src/defs.h: separated the definitions from main.h and applied the
6992 patch from TOGAWA that sets DEFAULT_SPOOL_PATH and MAXPATHLEN
6993 from the system headers (thanks!).
6994 * src/codeconv.c: conv_get_current_charset(): fixes for lt_LT and
6996 * src/textview.c: textview_set_font(): modified so that it sets
6997 the correct font when the locale is multi-byte.
6998 textview_destroy(): added proper codes for destruction.
6999 textview_show_header(): fixed the coloration of X-Mailer.
7003 * src/textview.[ch]: made TextView have single-byte and multi-byte
7004 GtkText, and switch between them according to the given codeset.
7005 * src/compose.c: compose_create(): modified the font setting
7010 * src/textview.[ch]: moved the message font variable into TextView.
7011 textview_set_font(): modified so that it uses gdk_font_load()
7012 if the given codeset is US-ASCII or ISO-8859-*.
7020 src/compose.c: workaround for the 8bit code issue (used
7021 gdk_font_load() instead of gdk_fontset_load() when the locale is
7028 * src/compose.[ch]: added `Draft' tool button.
7029 * src/imap.c: imap_parse_envelope(): fixed a parsing bug.
7030 * README, README.jp: added the explanation of the locale setting.
7034 * src/compose.c: made it overwrite the previous draft message when
7035 reedited the draft and saved it again.
7036 * src/procmsg.[ch]: added procmsg_msg_exist() that examine whether
7037 the message really exists.
7038 * src/folderview.[ch]: added folderview_scan_folder_a() and
7039 folderview_scan_folder_foreach_a() that scan the specified
7040 folders for each folderviews.
7041 * src/mainwindow.[ch]: removed main_window_scan_folder() and
7042 main_window_scan_folder_all().
7043 Added `Reedit' to the menu.
7044 * src/import.[ch]: removed MainWindow from the argument of
7046 * src/summaryview.c: removed the unnecessary items from the popup
7047 menu. Changed summary_reedit_cb() to summary_reedit(), and made
7052 * src/compose.h: added a member msginfo to Compose.
7053 * src/procmsg.[ch]: added procmsg_msginfo_copy() that duplicates
7058 * src/summaryview.c: made the the popup menu change the sensitivity
7059 according to the context. Fixed a bug that showed the `clean trash'
7060 dialog repeatedly if `D' key was pressed when the focus was on the
7062 * src/pixmaps/unread.xpm: changed the color of unread mark to blue.
7066 * src/main.c: fixed g_thread initialization.
7070 * src/codeconv.c: added pt_BR to locale_table.
7071 * src/prefs_common.c: prefs_send_create(): added `US-ASCII',
7072 `ISO-8859-1', and Japanese codeset to the option menu of outgoing
7073 codeset when not using libjconv.
7074 * src/compose.c: fixed the bug on saving draft again.
7078 * src/compose.c: compose_write_headers(): fixed a bug that failed
7079 to write headers if To: was empty when saving draft.
7085 src/headerwindow.[ch]
7087 src/messageview.[ch]
7091 src/procheader.[ch]: modified so that they can handle queue folder
7094 src/summaryview.c: implemented draft-reediting function.
7097 src/mimeview.c: replaced *(GtkWidget **) with the macro
7102 * src/procmsg.[ch]: procmsg_msginfo_free(): fixed a memory leak bug.
7103 Added MSG_QUEUED and MSG_DRAFT to MsgFlags, and made it set them
7104 if the folder is QUEUE_DIR or DRAFT_DIR.
7111 src/messageview.c: modified the border of the headerview.
7112 * src/gtkutils.h: added the macro GTK_WIDGET_PTR() that casts
7113 an Sylpheed object to GtkWidget.
7114 * src/utils.c: remove_return(), remove_space(): fixed a bug that
7115 possibly caused segmentation fault.
7118 src/summaryview.c: implemented `forward as an attachment'.
7119 * src/utils.[ch]: open_uri(): brought on URI opening function from
7120 textview.c and manual.c.
7127 src/prefs_common.[ch]: removed `Reply with quote', and added
7128 `Reply to all', and added the option that decides whether to
7129 quote message on replying.
7133 * src/folderview.c: modified so that it uses gtkut_wait_for_draw()
7134 instead of GTK_EVENTS_FLUSH() for statusbar redraw.
7137 src/prefs_common.c: added Baltic (ISO-8859-4,13) to the code sets.
7138 * src/compose.c: compose_send(): modified so that it shows error
7139 dialog when failed to send a message.
7143 * src/account.c: account_edit_close(): fixed a bug that didn't set
7144 current account when creating an account for the first time.
7145 * configure.in: added es to ALL_LINGUAS.
7149 * src/codeconv.c: conv_codeset_strdup(): made it use libkcc if
7151 conv_get_code_conv_func(): modified so that it doesn't convert
7152 codeset if it is unknown.
7153 * src/folderview.c: folderview_update_msg_num(): modified style
7158 * src/codeconv.c: conv_codeset_strdup(): modified so that it sets
7159 codesets automatically if the arguments are NULL.
7160 * src/textview.c: textview_write_line(): made it output warning
7161 message on the text view if conversion failed.
7165 * README, README.jp: modified the author of the manual.
7169 * src/headerview.[ch]
7170 src/messageview.[ch]: modified so that it uses GtkLabel widget
7172 * src/codeconv.c: conv_unmime_header(): modified so that it deletes
7173 unreadable codes if the current locale is EUC-JP and libjconv is
7181 src/textview.c: modified so that it parses MIME message more
7183 * src/imap.c: imap_parse_address(): fixed a bug.
7187 * src/procmsg.[ch]: added procmsg_get_message_file_path().
7188 * src/recv.c: recv_bytes_write(): added CR+LF -> LF conversion
7190 * src/imap.[ch]: changed the name of the member `group' in
7191 IMAPSession to `mbox'.
7192 imap_gen_send(): modified so that it doesn't output the password
7194 Modified session destroying routine.
7195 * src/folderview.c: folderview_write_cache(): made it preserve
7196 the IMAP folder list.
7197 * src/procmime.c: procmime_scan_multipart_message(): fixed a bug
7198 that showed boundary at the end of an attached RFC822 part.
7199 * src/prefs_common.c: changed the default of toolbar style to
7204 * src/imap.c: imap_get_uncached_messages(): modified so that it
7205 doesn't get the cached envelopes.
7206 imap_session_get_message_info(): made it read only the cache
7207 if the session is not established.
7208 * src/procmsg.c: procmsg_set_flags(): supported IMAP folder.
7209 * src/news.c: news_get_article_info(): made it read only the cache
7210 if the session is not established.
7214 * src/textview.c: textview_write_line(): fixed a memory leak bug.
7215 * src/folderview.[ch]: made it create IMAP4 folders from the
7216 account information.
7217 * src/imap.[ch]: imap_session_get(): modified so that it creates
7218 IMAP4 session from the account information.
7222 * src/imap.[ch]: added for IMAP4 support.
7223 * src/summaryview.[ch]
7225 src/recv.[ch]: modified for IMAP4 support.
7226 * src/folderview.c: more IMAP4 implementation.
7227 * src/procmsg.[ch]: added procmsg_get_message_file() that retrieves
7228 the specified message and return the file name.
7229 * src/gtkutils.c: gtkut_widget_wait_for_draw(): fixed a bug that
7230 locked up the process if the given widget was invisible.
7234 * src/folderview.[ch]: added IMAP4-related code.
7240 * src/main.h: added IMAP_CACHE_DIR.
7241 * src/utils.[ch]: added get_imap_cache_dir().
7242 * src/procmsg.h: added M_IMAP to MsgType, and MSG_IMAP to MsgFlags.
7243 Added macro MSG_IS_IMAP().
7244 * src/codeconv.c: added `#include <locale.h>' for setlocale().
7245 * sylpheed.spec: fixed %files section.
7251 * src/codeconv.c: conv_get_current_charset(): made it compare
7252 string with strncasecmp().
7253 * src/compose.c: comopse_reply_parse_header(): workaround for
7254 the malformed References: header generated by OE5 :(
7258 * src/prefs_common.c
7259 src/prefs_account.c: modified the layout of the widgets.
7265 * src/*.[ch]: added copyright notice to the top of the source files.
7266 * src/compose.c: compose_write_attach(): modified filename encode
7271 * src/mainwindow.c: fixed the menu entry of manual.
7273 src/codeconv.[ch]: moved compose_encode_header() into codeconv.c,
7274 and applied the libjconv patch.
7275 * src/utils.c: strdup_mbstowcs(), strdup_wcstombs(): used g_realloc()
7276 to reduce the alloc'd memory to the optimal size.
7277 * src/prefs_common.[ch]: added outgoing codeset option menu.
7278 * src/compose.c: compose_send(): added exclusive lock to prevent
7280 * configure.in: made '--enable-ipv6=no' the default.
7281 * src/compose.c: compose_write_attach(): made it encode the name
7282 of the attached file.
7283 * src/procmsg.c: procmsg_get_last_message_number(): fixed a bug that
7284 didn't check the type of file.
7285 procmsg_move_messages_with_dest(): fixed a bug that failed to
7286 move message if a directory that had the same name existed.
7287 * src/utils.c: is_ascii_str(): modified so that '\t', ' ', '\r', '\n'
7288 are included as ASCII characters.
7293 src/procmime.[ch]: modified so that it actually works when using
7295 * src/codeconv.[ch]: added conv_codeset_strdup() that converts
7296 the codeset of string according to the codeset specified in
7298 * src/utils.[ch]: added is_ascii_str() that determines whether the
7299 string is 7bit-ASCII or not.
7301 src/codeconv.[ch]: moved the character set related functions
7303 * merged the patch and the manual written by BONAIM (thanks!).
7313 src/unmime.[ch]: applied the patch from Higuchi that utilizes
7314 libjconv and enables to handle many locales, including UTF-8
7315 (Unicode) (thanks!).
7316 * src/account.c: modified so that the account isn't changed when
7317 another account is selected on account edit dialog.
7321 * src/prefs_common.[ch]
7322 src/textview.c: added an option that specifies whether to display
7323 short headers on message view.
7324 * src/codeconv.[ch]: added function conv_unmime_header() that
7325 decodes MIME-encoded header and converts the character set.
7326 And added conv_unreadable_latin(), and modified conv_latintodisp().
7327 * src/messageview.[ch]: made the window get closed when escape key
7332 * src/imageview.c: fixed a bug that caused segmentation fault if
7333 message view was in new window.
7334 * src/prefs_common.c: added `xemacs %s' to the external editor
7341 * src/summaryview.c: enabled to open a new message window with
7343 * src/prefs_common.[ch]
7344 src/messageview.c: made it preserve the window size of message
7346 * src/prefs_account.c: added `None (local)' to the option menu of
7351 * Makefile.am: added autogen.sh to EXTRA_DIST.
7355 * src/prefs_common.c: applied the patch from Paul Rolland that
7356 enables font selection dialog (thanks!).
7358 src/utils.[ch]: moved tzoffset() and compose_get_date() of
7359 compose.[ch] into utils.[ch].
7360 * src/main.[ch]: renamed the name of filter file to `filterrc'.
7365 src/utils.[ch]: modified address parsing routine so that it
7366 parses quotes correctly.
7367 * src/textview.c: textview_show_part(): modified so that it shows
7368 the simplified headers if the part is text/plain.
7372 * src/messageview.[ch]
7373 src/summaryview.[ch]
7374 src/mainwindow.c: enabled to open a message in new window.
7375 * src/messageview.[ch]
7378 src/imageview.[ch]: added destroy function, and modified the
7379 key handling routines.
7383 * src/socket.c: sock_connect_by_getaddrinfo(): fixed a bug that
7384 caused segmentation fault (thanks to KUROSAWA).
7385 * src/alertpanel.c: modified so that the focused button is
7389 src/folderview.c: modified so that the order of the buttons of
7390 alert panel will be `Yes', `No'.
7394 * src/utils.[ch]: added execute_async() and execute_command_line()
7395 that execute command line using execvp().
7398 src/procmsg.c: replaced system() with execute_command_line()
7400 * src/procmsg.c: turn back to system().
7401 * src/utils.c: modified execute_command_line().
7405 * src/mainwindow.c: main_window_get_size(): modified so that it
7406 doesn't update the height of SummaryView if MessageView is
7408 * src/compose.[ch]: applied the patch from NAKAGAWA that fixes some
7409 probrems of external editor handling (thanks!).
7411 src/procmime.[ch]: applied the patch from Hiramatu that make it
7412 supports Content-Transfer-Encoding: x-uuencode (thanks!).
7417 src/prefs_common.[ch]: implemented the external editor faculty.
7418 * src/compose.c: compose_attach_property(): fixed some bugs on
7419 changing the property of attached file.
7420 * src/compose.c: fixed some bugs of external editor functions.
7427 src/prefs_common.[ch]
7428 src/summaryview.c: applied the patch from Paul Rolland that
7429 restores the size of widgets when restarting (thanks!).
7431 src/prefs_common.[ch]
7432 src/summaryview.c: applied the patch from Paul Rolland that saves
7433 the width of CTree columns (thanks!).
7437 * src/headerview.c: modified the height of HeaderView.
7438 * src/textview.c: textview_show_part(): made it process the message
7439 as normal text if it is single-part RFC822 message.
7441 src/summaryview.c: some changes around the key handling.
7442 * src/prefs_common.[ch]: substituted the word `assort' with `filter'.
7446 * src/codeconv.[ch]: added conv_latintodisp() for ISO-8859-1 support.
7447 * src/procheader.c: procheader_get_one_field(): fixed a bug that
7448 caused segmentation fault if the first line of the file is space
7449 or tab (thanks to Hiramatu).
7450 * src/mimeview.c: mimeview_drag_data_get(): modified so that the
7451 filename doesn't include G_DIR_SEPARATOR (thanks to Hiramatu).
7452 * src/prefs_account.c
7453 src/prefs_common.c: modified the dialog size.
7454 * src/prefs.c: made the dialog window growable.
7460 * configure.in: removed unnecessary AC_CHECK_FUNC(gettext) that
7461 caused the failure of the detection of libintl.
7463 src/prefs_common.c: implemented `not contain', and modified for
7465 * src/imageview.c: changed alertpanel_error() to g_warning() so that
7466 it doesn't grab mouse events.
7467 * src/compose.[ch]: added compose_list that holds the list of
7468 Compose objects, and added the function compose_get_compose_list().
7471 src/summaryview.c: made it confirm if composing message exists.
7475 * src/compose.c: compose_reply_set_entry(): fixed a bug that caused
7476 segmentation fault when trying to reply the message in the queue
7477 folder (thanks to Kotobuki).
7478 compose_attach_property(): modified the property dialog routine
7479 so that it can handle input error.
7480 * src/mimeview.c: applied the patch from Hiramatu that enables
7481 the drag 'n drop from MimeView (thanks!).
7482 * src/headerview.[ch]
7484 src/procmsg.h: applied the patches for X-Face support from
7485 HIROSHIMA (thanks!).
7489 * src/compose.c: compose_attach_property(): modified so that the
7490 property dialog can actually change the property of attached file.
7495 src/Makefile.am: updated for gdk_imlib.
7496 * added AUTHORS and NEWS.
7499 src/Makefile.am: modified so that configure auto-detects gdk-pixbuf
7500 and gdk_imlib library. And fixed a bug on IPv6 detecting.
7501 * src/imageview.c: supported gdk-pixbuf.
7505 INSTALL.jp: added the mention about built-in image view.
7506 * configure.in: modified so that configure can disable gdk-pixbuf
7507 or/and gdk_imlib library.
7511 * src/imageview.[ch]
7513 src/messageview.[ch]
7514 src/mimeview.[ch]: applied the patches from HIROSHIMA that enables
7515 to display image (thanks!).
7521 * src/summaryview.c: summary_assort_func(): modified to avoid
7522 `not receive' setting.
7526 * src/filesel.c: applied the patch from HIROSHIMA that makes it
7527 remember previous directory when opening the dialog (thanks!).
7528 * src/summaryview.[ch]: added a function summary_redisplay_msg().
7529 * src/mainwindow.c: set_charset_cb(): made it redisplay the message
7530 that is currently shown when the character set is changed.
7534 src/filter.h: applied the patch from Tanaka that enables not to
7535 receive specified messages according to the sorting rule (thanks!).
7539 * src/procmsg.[ch]: added MSG_MIME to the type MsgFlags. And modified
7540 so that it handles MSG_MIME flag, and it scans uncached messages
7541 when cache reading failed even if it is specified not to scan
7543 * src/procheader.c: procheader_parse(): added the determination of
7544 multipart MIME message.
7545 * src/main.h: increased CACHE_VERSION.
7546 * src/summaryview.[ch]: added the `MIME' column that shows whether
7547 a message is multipart or not.
7548 * src/prefs_common.[ch]: added the `MIME' column to the setting of
7550 * added src/pixmaps/clip.xpm.
7552 src/procmsg.[ch]: modified so that it prompts the print command
7557 * src/folderview.c: folderview_create()
7558 src/summaryview.c: summary_create():
7559 src/addressbook.c: addressbook_create(): set the expander style of
7560 CTree to GTK_CTREE_EXPANDER_SQUARE.
7561 * src/compose.c: modified the interface of property dialog.
7565 * src/compose.c: added property dialog for attached file.
7569 * src/procmsg.[ch]: added a function procmsg_print_message() that
7570 prints the given message.
7571 * src/summaryview.c: summary_print(): modified so that it prints
7572 all selected messages.
7573 * src/folderview.c: folderview_select_node(): fixed a bug that
7574 didn't focus on folder tree if inbox was empty when incorporating.
7580 * src/prefs_commmon.[ch]: added `Other' tab and an option for
7581 printing. And moved external browser option to there.
7583 src/summayview.[ch]: added print menu and implemented print
7588 * src/prefs_account.c: made the default value of smtp_server to
7590 * src/folderview.c: folderview_update_msg_num(): modified so that
7591 it doesn't emphasize trash folder even if it has new or unread
7596 * src/filesel.c: filesel_select_file(): (perhaps) fixed a bug that
7597 caused segmentation fault when file selection dialog was closed
7598 and other dialog was open immediately.
7602 * src/compose.c: compose_encode_header(): fixed a bug that caused
7603 infinite loop if wctomb() failed.
7609 * src/mimeview.c: enabled to open an attached file with double click
7610 and popup menu. And cleaned up the code.
7611 * src/procmime.[ch]: added a function procmime_get_part() that
7612 saves the part of multipart message.
7618 src/prefs_common.[ch]
7620 src/utils.[ch]: applied a patch that enables to launch attached
7621 image, audio, and HTML file (thanks to Hashimoto).
7622 * src/filter.c: filter_match_condition(): fixed a bug that caused
7623 segmentation fault if the body of specified filter is NULL. And
7624 made the filter considered as being matched on that case.
7628 * src/summaryview.c:
7629 summary_save_as(): fixed a bug that unabled to save news articles.
7630 summary_display_msg(): added exclusive lock to prevent it from
7631 reading another news article while it is already processing one.
7632 * src/gtkutils.[ch]: added gtkut_widget_wait_for_draw() that waits
7633 the draw signal to be emitted.
7635 main_window_cursor_wait()
7636 main_window_cursor_normal(): added gdk_flush() to change cursor
7639 libkcc/Makefile.am: added EXTRA_DIST for `make dist'. And added
7640 a target `release' to Makefile.am.
7644 * src/socket.c: supported IPv6.
7646 acconfig.h: added checking for IPv6.
7647 * prefs_common.c: changed the default of toolbar_style to icon only.
7651 * initial cvs import.
7652 * updated README and README.jp.
7658 * src/procmime.[ch]: modified the structure of MimeInfo so that it
7659 can be handled as a node of tree.
7660 Added procmime_mimeinfo_free_all() that frees all of the MimeInfo
7662 Added procmime_get_text_part() that scans a message and gets a text
7664 * src/mimeview.c: divided mimeview_scan_multipart_message() into
7665 procmime_scan_multipart_message() and mimeview_set_multipart_tree().
7666 * src/compose.c: compose_quote(), compose_forward():
7667 made it quote the text part of multipart message properly.
7668 Made it preserve the size of Compose window.
7669 * src/prefs_common.[ch]: added compose_width and compose_height to
7671 * src/textview.c: textview_show_part(): some code cleanups.
7672 * src/codeconv.[ch]: added a function conv_get_code_conv_func().
7678 * src/codeconv.[ch]: fixed a bug that showed garbage characters if
7679 the return code of the message was CR+LF. And added
7681 * src/summaryview.c: summary_attract_by_subject(): made it move
7682 the current view point to the selected row when executed.
7683 * src/textview.c: textview_show_part(): modified the character set
7684 determination routine.
7685 * src/folderview.c: folderview_update_msg_num(): fixed a bug that
7686 caused segmentation fault if boldfont was NULL.
7687 * src/compose.c: compose_create(): made it sets itself as the target
7688 of addressbook on window creation.
7692 * src/compose.c: compose_send(): fixed a bug that didn't save
7693 queued message to outbox when failed to send the message (thanks
7698 * src/inc.[ch]: modified so that it changes error message dialog
7699 depending on the results.
7703 * src/mainwindow.c: main_window_create(): set usize of account
7704 button on the status bar to 1 so that it doesn't get expanded
7705 more than necessary.
7706 * src/account.[ch]: account_foreach(): made it abort the iteration
7707 if the function returns nonzero.
7709 src/pop.c: modified so that it shows error message dialog if the
7710 message processing is failed.
7716 * src/mainwindow.c: made it popup account selection menu when
7717 account tool button or account status bar is pressed.
7719 src/prefs.c: suppressed the ENOENT perror messages.
7720 * src/pop.c: made it fall back on LAST command if UIDL failed.
7724 * src/procheader.c: procheader_parse(): fixed a bug that didn't
7725 parse References: header correctly (thanks to YAMAGUCHI).
7731 * src/compose.c: compose_reply_set_entry(): fixed a bug that didn't
7732 cc'd correctly when replying.
7734 src/summaryview.c: sorted out the main menu and the popup menu.
7740 * src/prefs_account.[ch]
7741 src/compose.c: made it be able to set Cc:, Bcc:, and Reply-To:
7742 automatically at composing (thanks to NAKAGAWA).
7746 * src/prefs_common.[ch]
7748 src/main.c: made it selectable whether to ask before cleaning
7750 * src/prefs_common.c: cleaned up the code and the interface a bit.
7751 * src/summaryview.c: modified the unthread functions for speeding
7756 * src/prefs_common.[ch]
7757 src/summaryview.c: made it display recipient on the `From' column
7758 if the address of the sender is the same as the current account
7759 (thanks to NAKAGAWA).
7760 * src/utils.[ch]: added a function extract_address() that extracts
7761 the address from `From:' header string.
7762 * src/mainwindow.c: allsel_cb(): fixed a bug that caused segmentation
7763 fault if `Edit/Select all' was selected when the message view was
7764 hidden (thanks to Tomita).
7768 * src/summaryview.c: modified execution routine so that it only
7769 unthreads nodes that are needed to be unthreaded.
7773 * src/news.c: news_session_get(): implemented the reconnection on
7775 * src/nntp.[ch]: added nntp_mode().
7779 * src/mbox.c: fixed a bug that didn't close mbox FILE pointer.
7780 And support assortment on processing mbox.
7781 * src/inc.c: inc_drop_message(): modified so that it uses hash table
7782 to store the last message number of folders.
7784 src/addressbook.c: modified the behavior of CTree at right-click.
7785 * src/pop.c: pop3_getrange_uidl_recv(): fixed a potential buffer
7786 overflow bug (thanks to Nishiyama).
7793 src/inc.[ch]: implemented management of read message on POP server
7795 * src/utils.[ch]: removed (s)list_remove_all() because it can be
7796 replaced with g_(s)list_free().
7797 * src/summaryview.c: modified the arrangement of menu a bit.
7798 * src/summaryview.c: summary_status_show(): made it doesn't display
7799 server name but newsgroup.
7800 * src/prefs_common.c
7801 src/prefs_account.c: adjusted the calculation routine of dialog
7808 * src/compose.c: compose_reply_set_entry(): modified so that it
7809 cc's to the all addresses on To: and Cc: of the replied message.
7810 And swapped the position of Subject: and To: entry.
7814 * src/procheader.c: modified so that it can handle headers that
7815 aren't separated by space.
7816 * src/socket.c: sock_connect(): added a wait after connection to
7817 prevent lockup (thanks to NINOMIYA).
7823 inc_all_account_mail(): fixed a bug that caused segmentation
7824 fault if no account exist.
7825 * src/mainwindow.[ch]: made receive button unclickable when
7827 * src/compose.c: compose_queue(): fixed a bug that didn't mark
7828 queued message properly.
7829 * src/utils.[ch]: separated code conversion functions into
7836 * src/mimeview.c: mimeview_save_as()
7837 src/summaryview.c: summary_save_as(): made it ask whether to
7838 overwrite the existing file.
7849 src/mbox.c: fixed a bug that failed to check write error when
7850 disk was full and caused the loss of the file.
7854 * src/mainwindow.c: main_window_clean_trash(): made it move focus
7855 to folder view when finished.
7856 * src/utils.[ch]: added code conversion functions for display.
7857 And added strncpy2() that doesn't do zero fill and does
7858 null-termination, unlike original strncpy().
7859 * src/textview.c: modified so that it changes the code conversion
7860 function according to charset. And supported charset=SHIFT_JIS.
7863 src/textview.c: made it possible to force character set of
7865 * src/folderview.c: folderview_select_next_unread():
7866 made it search unread folder from begin if it isn't found.
7872 * src/mainwindow.c: fixed a probrem again that main window was
7873 stretched to the width of the toolbar.
7875 src/utils.c: is_header_line(): modified so that it recognizes
7876 a header which doesn't have a space after colon (thanks to Hotta).
7877 * src/filter.c: added `#include <strings.h>'.
7878 * src/smtp.c: replaced snprintf() with g_snprintf().
7879 * src/Makefile.am: added `-I$(top_srcdir)/intl' to INCLUDES for
7881 * included sylpheed.spec.
7885 * src/prefs_common.[ch]: enabled to set the pixels of line space
7886 and decide whether to leave space on head of lines.
7887 * src/summaryview.c: modified so that it clears message view
7888 when displayed message is removed from the summary view.
7889 * src/mimeview.c: fixed a bug that caused infinite loop if
7890 terminal boundary of multipart message was not found (thanks to
7892 * src/folderview.c: folderview_scan_mailbox(): made it ignore
7894 * src/main.c: made it show warning dialog and exit if the file with
7895 the same name already exists when creating directory.
7900 src/prefs_common.[ch]: made it possible to leave space between
7901 and on head of lines.
7906 src/procmime.[ch]: made it scan /etc/mime.types and determine
7907 the MIME type of the attached file.
7908 * src/summaryview.c: made it clear message view if the summary
7909 is unselected on the execution, and made it move focus to
7910 folder view if the folder becomes empty.
7911 * src/mainwindow.c: fixed a probrem that main window was stretched
7912 to the width of the toolbar.
7913 * src/inc.c: fixed a bug that caused multiple gtk_main() event loop
7914 if `Check new mail on startup' was set.
7918 * src/compose.c: fixed a probrem that had been unable to insert
7919 a file to the current cursor position.
7925 * src/compose.[ch]: added `attach' button to the toolbar. And
7926 replaced the icon of `insert' to the new one.
7930 * src/mainwindow.[ch]: added `Execute' to the toolbar. And added
7931 a function main_window_set_toolbar_sensitive() that sets the
7932 sensitivity of the button of the toolbar.
7933 * src/compose.c: fixed a bug that output wrong header if
7934 a return code was included in the string of the text entry.
7938 * src/mainwindow.[ch]: added `Delete' to the toolbar and the menu.
7939 And added the same items in popup menu to the main menu.
7940 * src/utils.[ch]: added functions for DnD support.
7941 * src/compose.c: implemented file attachment and insertion with DnD
7942 (thanks to Hiramatu).
7948 * src/summaryview.c: fixed a bug that passed null pointer to
7953 * src/alertpanel.[ch]: added functions alertpanel_message(),
7954 alertpanel_notice(), and alertpanel_error(), and cleaned up
7960 src/summary_search.c
7962 src/foldersel.c: made them use alertpanel_error(),
7963 alertpanel_warning() or alertpanel_notice() for error message
7965 * src/summaryview.[ch]: enable sorting in reversed order.
7966 * src/inc.c: made it show error message dialog when failed to
7967 connect or authorize.
7968 * src/utils.h: added a macro FILE_OP_ERROR() and replaced many
7975 * src/compose.c: fixed a bug that didn't save a message to outbox
7977 * src/send.c: send_message_queue(): fixed a bug that included
7978 headers for queueing in the parsed data.
7979 * src/mainwindow.c: send_queue_cb(): made it pop statusbar message
7980 and update queue folder when finished.
7988 src/compose.c: suppressed the warning messages.
7989 * src/mainwindow.[ch]: added next unread message button and menu
7991 * src/summaryview.[ch]: added a function summary_select_next_unread()
7992 that selects and opens next unread message.
7996 * src/prefs_common.[ch]: added a setting to decide whether to open
7997 unread message on entering a folder.
7998 * src/summaryview.c: made it open the first unread message only if
7999 the preference is set.
8000 * src/compose.c: fixed a bug that freed the string obtained from
8005 * src/compose.c: added `Send later' to the menu and the toolbar
8006 which queues the message to send it later.
8010 * src/mainwindow.c: added an interface to resend the queued message.
8011 * src/compose.c: made it show alert dialog when a message will be
8016 * src/procmsg.[ch]: added function procmsg_send_queue() that calls
8017 send_message_queue() for each queued messages.
8021 * src/inc.c: inc_drop_message(): modified so that it drops a message
8022 to the default inbox folder if destination folder doesn't exist.
8023 * src/compose.[ch]: added imput compatible queueing header to the
8025 * src/send.[ch]: added function send_message_queue() that send
8031 acconfig.h: made it enabled to decide wheter to use multithread
8032 or not on configure.
8033 * src/summaryview.c: fixed a bug that made thread when executed
8034 despite of the setting (thanks to Hiroshima).
8035 * src/socket.[ch]: changed the return value of public
8036 sock_connect_*() function to the pointer to SockInfo object.
8037 * src/procmime.c: procmime_scan_mime_header():
8038 fixed a bug that returned NULL if the scanned part had no header
8039 (thanks to shigeri).
8040 * src/procmime.[ch]:
8041 added function procmime_scan_content_disposition() that parses
8042 Content-Disposition header field.
8043 * src/mimeview.c: made it uses filename value in Content-Disposition
8046 * src/inc.c: modified so that password is prompted if the password
8047 on preferences is empty and previous POP3 session has failed on
8052 * src/socket.[ch]: added non-blocking IO mode socket and
8053 multithreaded connection support.
8054 * src/inc.c: supported multithread connection.
8058 * src/folderview.c: made the focus of SummaryView grabbed when
8059 a folder is selected only if the messages exist.
8065 * po/ja.po: fixed a bug that head `/' of a menu label was missing
8066 and caused segmentation fault when opened Compose window.
8072 * src/utils.c: get_domain_name(): modified so that it uses
8074 * src/mimeview.c: added key binds for `Save as' and
8079 * src/recv.c: fixed a bug that failed to return error value
8080 when fputs() failed and caused the loss of received mails when
8081 disk space was not left (thanks to Tajiri).
8082 * src/compose.c: supported Reply-To.
8083 * src/mimeview.c: improved key operation interface.
8089 src/textview.[ch]: supported nested multipart message and
8091 Supported encapsulated RFC822 message.
8095 * src/compose.[ch]: made it free the alloc'd memory for attach
8096 information when the compose window is destroyed.
8097 Placed the attachment list and the text widget onto the paned
8099 Enabled cut/copy/paste/select all on all of the editable widgets.
8100 Implemented removal of attached file and popup menu on attachment
8102 * src/prefs_common.[ch]: added signature separator setting.
8103 * src/alertpanel.[ch]: added a function alertpanel_warning().
8107 * src/prefs_common.[ch]
8108 src/textview.c: made open URI command customizable.
8109 * src/compose.[ch]: implemented multipart MIME message composition
8110 (attachment of file).
8112 src/compose.c: fixed a bug that didn't turn off the GTK+ theme
8119 * src/summaryview.c: added key binds for composing message
8120 (w, a, A, f). Also added other key binds (y, D, Q).
8121 * src/compose.c: made Cc entry take over the Cc of the replied
8123 * src/pixmaps/new.xpm
8124 src/pixmaps/unread.xpm: replaced pixmap image.
8125 * src/procheader.c: procheader_date_get_localtime():
8126 changed the single figures of year from four to two.
8130 * src/inc.c: made it ask password if it is not specified on account
8132 * src/prefs_account.h: added member tmp_pass to struct PrefsAccount
8133 that preserves the temporary password.
8134 * src/inputdialog.[ch]: added function input_dialog_with_invisible()
8135 that prompts input with the string hidden.
8139 * src/compose.c: fixed a bug that didn't turn off the GTK+ theme
8140 engine if message font wasn't specified.
8146 * src/summaryview.c: fixed a bug that stderr was forgotten on
8153 * src/pop.c: fixed a problem that if some POP3 commands returned
8154 error, the previous operations were all cancelled.
8156 src/textview.c: made workaround to the slow down of GtkText widget
8157 when using Pixmap theme or its derivatives.
8161 * src/inc.c: fixed a bug that caused X IO error when exec'd
8162 nonexistent program.
8166 * src/folderview.[ch]: added the member `mtime' to the struct
8168 * src/summaryview.c: made the mtime of the folder checked that is
8170 * src/procmsg.c: added filesystem unchecking mode.
8174 * src/textview.[ch]: implemented clickable URI (thanks to BONAIM).
8175 And made `X-Mailer:' header emphasized if it contains `Sylpheed'.
8179 * src/summaryview.c: summary_write_cache(): permission fix of
8186 * src/headerview.c: added headerview_clear() method.
8187 * src/messageview.c: fixed a bug that didn't clear HeaderView
8188 on messageview_clear().
8195 src/textview.c: added *_clear() method.
8196 * src/summaryview.c: made it clear MessageView when new folder
8201 * src/inc.c: fixed a bug that went to the inbox that was specified
8202 by each account when incorporating from all accounts.
8203 * src/compose.c: made it confirm whether to discard the message or
8204 not when the window will be closed.
8211 src/inc.[ch]: re-supported APOP authentication.
8212 * src/prefs_account.c: fixed a bug that had't saved protocol type.
8214 src/statusbar.h: attached G_GNUC_PRINTF() to printf() like
8216 * src/progressdialog.[ch]: changed the name of class from Progress
8221 * src/summaryview.c: fixed a bug that caused segmentation fault
8222 a news folder was selected without using ja message catalog.
8223 * src/utils.h: attached G_GNUC_PRINTF() to printf() like functions.
8224 * src/Makefile.am: added `-DG_LOG_DOMAIN=\"Sylpheed\"' to
8229 * src/automaton.[ch]
8231 src/pop.[ch]: re-implemented POP3 fetching routines using
8232 finite-state automaton model (thanks to Hiramatu).
8233 * src/inc.c: fixed a bug that caused unwilled quitting of program
8234 when connection to mail server failed. And fixed a memory leak bug.
8235 * src/summaryview.c: made the focus move to FolderView when left
8236 cursor key is pressed.
8240 * src/textview.c: textview_write_line(): modified quotation
8241 discerning routine a bit.
8247 * src/procmime.[ch]: moved MIME decorder from src/textview.c to
8249 * src/mimeview.[ch]: implemented saving of multipart message. And
8250 supported MIME encoded file name.
8251 * src/summaryview.c: implemented `Save as'.
8255 * src/prefs_common.[ch]: implemented an interface for setting the
8256 display item of SummaryView.
8258 src/account.c: made the column titles of those don't take key
8263 * src/textview.c: implemented BASE64 decoding and display.
8267 * src/prefs_common.[ch]: added members which decide whether
8268 each item of SummaryView is displayed or not.
8269 * src/headerwindow.c
8270 src/logwindow.c: made those windows closed when escape key is
8272 * src/headerview.c: disused ScrolledWindow.
8273 * src/base64.c: from64tobits(): modified so that it recognize '\n'
8274 as the last of line as well as '\r'.
8278 * src/headerview.c: disabled word wrap and line wrap of the text
8285 * src/prefs_common.c: prefs_assort_create(): added some headers
8286 to the default headers for assortment.
8290 * src/procmsg.c: fixed a bug that caused segmentation fault if
8291 the permission of a message was denied on parsing the header
8292 (thanks to wakai@UEC univ.).
8293 * src/mimeview.c: made it pass key press event to SummaryView.
8298 src/alertpanel.c: modified font specifications so that they match
8300 * src/utils.[ch]: added wide-character functions for FreeBSD support.
8301 Added the existence check of <wchar.h>.
8303 configure.in: added wint_t and libxpg4 check for FreeBSD support.
8304 * src/unmime.c: modified so that it checks the existence of
8306 Above three are a contribution from Sasaki. Thanks!
8310 * src/main.h: decreased default height of window.
8314 * src/procmime.c: fixed a bug that eliminated the parenthesis in
8315 attribute value that was double-quoted.
8321 * src/mimeview: implemented multipart message parser and display.
8322 * src/procmime.c: procmime_scan_content_type():
8323 supported multiple elements.
8324 * src/textview.c: supported multipart message and clean up the code.
8328 * src/summaryview.c: added size column and sorting by size.
8329 * src/mainwindow.c: added `Sort by size' to sort menu.
8330 * src/procmime.c: fixed a bug that caused buffer overrun and
8332 * src/procmime.c: generalized Content-Type parsing.
8338 * src/textview.c: supported MIME headers and
8339 Content-Transfer-Encoding: quoted-printable.
8343 * src/messageview.[ch]
8344 src/textview.[ch]: separated MessageView into two classes.
8345 * src/procmime.[ch]: added for MIME message handling.
8349 * src/mimeview.[ch]: added for MIME message handling.
8350 * configure.in: added wctype.h and wchar.h existence check.
8355 src/procheader.[ch]: some code cleanups.
8356 * src/messageview.[ch]: integrated HeaderView.
8364 * src/addressbook.c: Made the tree sorted when folder/group is
8366 * src/xml.c: xml_compare_tag(): fixed a bug that caused segmentation
8367 fault if the current tag was empty.
8368 * src/mainwindow.c: made the state of MainWindow saved.
8374 * src/addressbook.c: fully implemented address group editing.
8375 Fixed a bug that wrongly confirmed deletion of address when
8376 escape key was pressed on alert dialog.
8380 * src/addressbook.c: added menu bar. And enabled hierarchical
8382 * src/prefs_account.c: modified so that it allows not to specify
8384 * src/inc.c: inc_account_mail(): modified so that if receiving
8385 server isn't specified, it does nothing.
8391 * src/addressbook.c: almost fully implemented addressbook functions.
8395 * src/compose.c: fixed a bug that caused segmentation fault when
8396 `File->Insert file' was selected more than twice.
8402 * src/addressbook.[ch]: implemented creation of new folder and group,
8403 and deletion of folder and group. And fully implemented
8404 addressbook_delete_object() which deletes the specified object
8409 * src/addressbook.c: implemented registration of address and multiple
8410 appending to Compose address entry.
8411 * src/menu.[ch]: added a function menu_set_insensitive_all() that
8412 turn all menu items insensitive.
8413 * src/folderview.c: some code cleanup.
8418 src/prefs_common.c: fixed a bug on getting the number of CList
8425 * src/folderview.c: fixed a bug that caused warnings when tree was
8426 expanded/collapsed on the first operation.
8430 * src/addressbook.c: addressbook_list_selected(): made it be able
8431 to handle multiple address.
8432 * src/compose.c: modified so that when Bcc: is toggled, corresponding
8433 AddressBook also toggle it.
8435 main_window_create(): moved gtk_widget_set_uposition() before
8436 gtk_widget_show() so as not to cause window flickering.
8437 main_window_get_position(): replaced gdk_window_get_position()
8438 with gdk_window_get_root_origin() to acquire correct window
8439 position (Thanks to shigeri for these modifications).
8443 * src/filesel.c: made it selects home directory on the first time
8448 * src/utils.c: conv_mb_alnum(): modified so that it uses character
8450 * src/foldersel.c: made the folder tree take focus when the dialog
8457 * src/addressbook.c: implemented addressbook_export_to_file() and
8463 src/addressbook.c: fixed the variable name for attribute.
8464 * src/prefs_common.[ch]: added a member `conv_mb_alnum'.
8465 * src/utils.[ch]: added conv_mb_alnum() that converts multi-byte
8466 alphabet and numeric into single-byte one.
8467 * src/messageview.c: messageview_show(): made it pass conv_mb_alnum()
8468 when conv_mb_alnum flag is on.
8474 * src/compose.c: modified so that when Addressbook is open by a
8475 Compose and it is closed, target of Addressbook is reset.
8476 * src/addressbook.c: made it work with Compose.
8480 * configure.in: AM_PATH_{GLIB, GTK}: raised the required version of
8481 GTK+ and GLIB to 1.2.6.
8482 * src/xml.[ch]: more implementation of XML parser.
8483 * src/addressbook.c: implemented addressbook parsing and displaying
8488 * src/folderview.c: folderview_scan_folder(): modified so that if
8489 a folder's message number is zero, set new, unread and total number
8494 * src/xml.[ch]: added for XML handling used by addressbook.
8495 * src/folderview.c: modified so that Trash folder is skipped
8496 when an unread folder is selected automatically by space key.
8500 * src/summaryview.c: fixed a bug that cursor was turned into watch
8501 forever when a newsgroup was selected.
8509 * src/mainwindow.[ch]: implemented counting on setting cursor
8510 type. And modified the menu of `thread view' and `unthread view'.
8511 * src/summaryview.c: enabled thread-toggling on opening folder.
8512 * src/prefs_common.[ch]: added a member `enable_thread' to determine
8513 whether summary view builds thread or not when a folder is open.
8517 * src/summaryview.c: modified popup sensitivity function a bit.
8523 * src/addressbook.[ch]: more implementation of the interface of
8525 * src/compose.c: connected to addressbook object.
8526 * src/folderview.[ch]: folderview_compare_path():
8527 modified so that absolute path is correctly compared.
8528 And added folderview_select_node().
8529 And modified folderview_scan_folder() so that it update the summary
8531 * src/import.c: made it update folder tree when imported mbox.
8532 * src/summaryview.c: modified according to the changes of
8533 folderview.c. And modified so that it display alert dialog if
8534 source folder is identical to destination.
8535 added summary_set_popup_sensitive() that set the sensitivity of
8536 popup menu according to the context. And made all of the items of
8537 popup menu insensitive when summary is cleared.
8538 * src/procmsg.c: procmsg_move_messages_with_dest():
8539 modified so that if source folder is identical to destination,
8541 * src/summary_search.c
8542 src/manage_window.c: modified so as not to print warning to console
8543 when alert dialog appeared twice.
8544 * src/filesel.c: made file selection dialog transient.
8548 * src/manage_window.[ch]: added callback function
8549 manage_window_focus_out().
8555 src/summary_search.c: added focus_out_event signal handler.
8556 * src/addressbook.[ch]: added preliminary addressbook code.
8560 * src/utils.h: added a macro Xalloca() that does alloca() and
8561 handles the exception.
8562 * src/import.c: made the import dialog transient window and enabled
8563 cancelling by escape key.
8569 * src/compose.c: fixed a bug that caused memory leak when compose
8574 * src/nntp.h: increased NNTP message buffer size for XOVER strings
8579 * src/summaryview.c: binded step-forward and step-backward to each
8580 Control-n and Control-p.
8581 * src/filter.c: filter_read_str(): fixed a memory leak bug and
8582 replaced g_malloc() for allocating the buffer with alloca().
8583 * src/procheader.c: procheader_get_fromname(),
8584 procheader_date_get_localtime()
8585 src/utils.c: conv_euctojis()
8586 src/compose.c: compose_quote_parse_fmt()
8587 src/prefs.c: prefs_set_data_from_text()
8588 prefs_set_text(): replaced g_malloc() with alloca().
8594 * src/logwindow.c: improved log_window_append() so that it shows
8595 warning, error and normal message with different colors.
8596 * src/utils.[ch]: added functions log_message(), log_warning(), and
8597 log_error() that show normal message, warning, and error for each.
8598 And modified many warning messages to use these.
8599 * src/messageview.c: messageview_init(): made it set colors of
8600 quotation and URI to black when failed to allocate colors.
8601 * src/news.c: news_parse_xover(): replaced g_malloc() for allocating
8602 the buffer with alloca().
8606 * src/folderview.c: fixed a bug that didn't put previously selected
8607 folder name in text entry. In addition to that, made some
8614 * src/logwindow.[ch]: added log window that displays protocol log.
8615 * src/about.c: adjusted the size of dialog.
8616 * src/folderview.c: made it select a folder when double-clicked.
8620 * src/prefs_common.[ch]: added an item `translate_header' that
8621 decides whether header name like `From:' or `Subject:' is
8623 * src/compose.c: made it show alert dialog when receiptor isn't
8625 * src/inc.c: some code cleanups.
8631 * src/compose.c: made header entries move those focus to next
8632 entry or text widget when activated. And sorted out the menu items.
8633 * src/mainwindow.[ch]
8634 src/prefs_common.[ch]
8635 src/main.c: made it save the sizes of widgets and the position of
8636 window when quitting.
8637 * src/prefs_common.c: set a14, k14 fontset as default message font.
8638 * src/about.c: changed the appearance of about dialog using text
8640 * src/recv.c: modified recv_write() so that it converts an escaped
8647 * src/compose.[ch]: supported Bcc.
8653 * src/utils.[ch]: added function to_number() that examines string
8654 and if that is a number string, return its value.
8655 * src/procmsg.c: fixed a bug that caused malfunction when non-digit
8656 character was included in file name.
8662 * src/folderview.c: fixed a bug that caused segmentation fault
8663 when opened folder node was deleted (thanks to Hiramatu).
8664 And implemented folderview_rm_server_cb() which removes news server.
8665 * src/mbox.c: modified a warning message.
8669 * version 0.2.0alpha-pre8
8671 * src/mainwindow.c: inc_all_account_mail_cb(): made it select inbox
8672 folder to prevent the probrem when current folder is updated.
8673 * src/summaryview.c: summary_execute(): made it write to summary
8674 cache when executed.
8678 * version 0.2.0alpha-pre7
8680 * src/utils.[ch]: added path_cmp() that compares two paths ignoring
8681 trailing directory separator.
8682 * src/folderview.[ch]
8683 src/summaryview.[ch]: modified so that folder tree is updated
8684 when messages are moved or deleted.
8685 * src/inc.c: some code cleanup.
8689 * version 0.2.0alpha-pre6
8691 * src/utils.[ch]: added get_domain_name() that return domain
8692 name as a static string.
8693 * src/compose.c: compose_generate_msgid(): modified so that even
8694 if current address doesn't contain '@', it generates a decent
8696 * src/send.c: some code cleanup.
8700 * src/folderview.c: modified the behavior of folder tree when
8701 the folder is right-clicked.
8702 * src/compose.c: compose_encode_header(): added irresponsible
8703 buffer overrun check.
8707 * version 0.2.0alpha-pre5
8709 * updated gettext and libtool.
8710 * configure.in: modified localedir definition so that message
8711 catalogs are installed into correct directories.
8713 src/mainwindow.c: modified them so that a folder can be reopen
8714 even if it is currently open.
8715 * src/prefs_common.[ch]
8716 src/messageview.c: added an option that toggle the coloration of
8721 * version 0.2.0alpha-pre4
8724 src/messageview.c: fixed a bug that broke memory on allocating
8729 * src/folderview.c: some bug fixes on selecting folder.
8733 * version 0.2.0alpha-pre3
8736 * src/summaryview.[ch]: some code cleanups.
8737 * src/messageview.c: fixed a color allocating bug (maybe).
8741 * version 0.2.0alpha-pre2
8743 * src/folderview.[ch]: made folder view not open selected folder
8744 unless return or space key is pressed, or clicked by mouse
8746 * src/inc.c: some code cleanups.
8747 * TODO.jp: added some items.
8751 * version 0.2.0alpha-pre1
8753 * src/summaryview.[ch]: fixed a bug that broke summary thread
8754 when deleted duplicated messages (thanks to BONAIM).
8755 And some code cleanup.
8756 * src/procmsg.[ch]: renamed procmsg_move_messages() to
8757 procmsg_move_messages_with_dest(), and replaced former with
8758 new function which doesn't specify destination.
8759 * src/prefs_common.c
8760 src/gtkutils.c: some memory leak fixes of linked lists.
8761 * src/utils.[ch]: added list_remove_all() to remove all elements
8762 of doubly-linked list.
8763 * src/inc.[ch]: added inc_all_account_mail() that incorporates
8764 new messages of all accounts.
8765 * src/account.[ch]: added account_foreach() to process each accounts.
8770 * version 0.1.23alpha
8772 * src/inc.c: made the folder tree update the message number
8773 when incorporated new messages.
8774 * src/folderview.[ch]: added a function folderview_scan_folder()
8775 to scan one folder on the view, which is specified by folder name.
8779 * version 0.1.22alpha
8781 * src/prefs_account.[ch]: added the setting of assorting on
8783 * src/inc.c: supported assorting on receiving.
8784 * src/procmsg.c: cleaned up the code.
8785 * src/news.c: fixed a bug that locked up when failed to get xover.
8786 * src/compose.c: made a message unmark that is put into specific
8791 * version 0.1.21alpha
8794 src/summaryview.c: implemented the function 'go to next folder
8795 when no unread message found.'
8796 * src/summaryview.c: made connection state displayed on the
8797 status bar when connecting to a news server.
8798 * src/compose.c: changed X-Mailer: header field string a bit.
8799 * src/prefs_common.c: implemented residual functions of assortment.
8803 * version 0.1.20alpha
8805 * src/prefs_common.c: implemented reading/writing/register/deletion
8806 of assortment setting.
8807 * src/mainwindow.c: slightly modified the appearance of statusbar.
8808 * src/account.c: account_delete(): fixed a bug that didn't assigned
8809 the pointer to GList when an account was deleted.
8813 * src/procmsg.c: procmsg_get_mark_sum(): fixed a bug that failed
8814 to read mark file (thanks to BONAIM).
8815 * src/prefs_common.c: added the interface of assortment setting.
8819 * src/summaryview.c: fixed a bug that didn't redraw marking properly
8820 when displaying an unread message with left-click (thanks to
8825 * src/summaryview.[ch]: added functions for assortment.
8826 * src/about.c: added a button to close window.
8830 * src/procmsg.c: fixed a bug that didn't add news flag correctly.
8831 * src/compose.c: fixed a bug that can't reply to a news article.
8832 * src/filter.[ch]: added for message filtering.
8833 * src/procheader.[ch]: added procheader_get_unfolded_line()
8834 to process filtering. And added procheader_get_header_list()
8835 that reads headers of a message and store them on the memory,
8836 and procheader_header_list_destroy() that removes all headers
8837 read by procheader_get_header_list().
8841 * version 0.1.19alpha
8843 * src/news.c: modified so that it retrieves only overview information
8844 that is not yet cached.
8845 * src/procmsg.[ch]: modified for news handling.
8849 * src/news.c: supported xover.
8850 * src/mbox.c: fixed a bug that didn't handle empty line correctly
8851 (Thanks to shigeri).
8855 * version 0.1.18alpha
8857 * src/procmsg.[ch]: modified some functions so that they can
8859 * src/news.c: added header cache routine.
8860 * src/procheader.c: fixed a bug that caused memory leak when some
8861 header was duplicated.
8862 And added Newsgroups: in parsing headers.
8863 * src/summaryview.c: added news article cache routine.
8864 * src/compose.c: made it be able to reply/forward news article.
8868 * src/compose.c: fixed a bug that failed to parse To: header
8869 if a comma is included in double quotation (Thanks to shigeri).
8870 * src/mbox.c: modified the code for processing mbox so that it
8871 can handle unescaped From_ line correctly.
8875 * version 0.1.17alpha
8877 * src/foldersel.c: fixed a bug that didn't display folder tree.
8878 And added the register routine for news server and group setting.
8882 * version 0.1.16alpha
8884 * src/statusbar.[ch]: added statusbar_puts_all().
8885 statusbar_puts(): made it truncate a string that is too long.
8886 * src/folderview.[ch]: changed CTree's row data from string
8887 to FolderInfo structure.
8888 And implemented popup menu that registers news server and group.
8889 * src/messageview.c: modified short header display routine.
8893 * added src/news.[ch] for NetNews session management.
8894 * src/summaryview.[ch]: added NetNews reading codes.
8899 src/prefs_common.[ch]: made them preserve toolbar style.
8900 * src/main.c: made it save configuration before exiting.
8901 * src/summaryview.c: modified summary status display routine.
8902 * added src/nntp.[ch] for handling low level NNTP session.
8906 * added src/progress.[ch] for displaying progress.
8907 * src/inc.c: modified progress dialog routines to use
8909 * src/folderview.[ch]: added preliminary NetNews supporting code.
8913 * version 0.1.15alpha
8916 src/folderview.c: some permission fixes.
8917 * src/folderview.c: implemented folder creation/renaming/removing.
8918 * src/utils.[ch]: added remove_dir_recursive() that removes
8919 a directory recursively.
8923 * src/mainwindow.[ch]: added toolbar style selection.
8924 * added src/inputdialog.[ch] to prompt user to enter a string.
8925 * src/summaryview.[ch]: modified the behavior of view on
8927 * src/mbox.c: fixed a bug that couldn't lock file when
8928 lockf() was used (Thanks to shigeri).
8932 * version 0.1.14alpha
8934 * src/mainwindow.[ch]: changed the appearance of toolbar.
8935 And fixed window handling.
8936 * src/summaryview.c: modified the messages displayed on status bar.
8937 * src/compose.[ch]: added toolbar.
8938 * src/*.xpm: borrowed some icons from gnome-libs (temporary).
8942 * version 0.1.13alpha
8944 * src/summaryview.c: fixed a bug of threading. And some code
8945 cleanups. And rewrote the routine of deleting duplicated messages
8947 * src/mainwindow.[ch]: added toolbar.
8951 * version 0.1.12alpha
8953 * src/summary_search.c: if the OS don't have wcsstr(), use wcswcs()
8955 * src/summaryview.c: changed CTree creating routine as it creates
8956 thread on the fly for speeding up.
8957 * src/procmsg.c: rewrote message processing routines using hash
8958 table for speeding up. It should be considerably faster than
8963 * version 0.1.11alpha
8965 * po/ja.po: modified msgstr for Solaris standard gettext.
8966 * src/main.c: added config.h inclusion.
8967 * src/compose.c: changed to add replied message's In-Reply-To
8968 message id to References header if it don't have References header.
8969 * src/summaryview.c: changed threading routine to use hash table
8974 * version 0.1.10alpha
8976 * po/ja.po: modified msgstr so as not to core dump on Solaris.
8977 * src/main.c: added inclusion of locale.h.
8978 (Thanks to Sato for above.)
8980 * src/socket.c: applied Solaris patch by shigeri with some
8981 modification. (Thanks!)
8985 * version 0.1.9alpha
8987 * src/compose.c: compose_encode_header(): fixed some bugs.
8988 And modified header generating routines to support proper
8989 References header, and supported Organization header.
8991 src/procheader.c: removed Cc: and Reply-To: from cache data.
8992 * src/procheader.[ch]: renamed header list structure to HeaderEntry.
8993 * src/summaryview.[ch]: summary_thread_func(): some optimization.
8994 And added summary_pass_key_press_event() to pass key press event
8996 * src/messageview.c: messageview_key_pressed(): modified so that
8997 key event is passed to summary view even if message view is
8998 separated. (Thanks to wakai@UEC univ. for pointing this out.)
9002 * version 0.1.8alpha
9004 * src/compose.c: implemented RFC1522, RFC2407 (loosely) compliant
9005 header MIME encoding.
9006 * src/procheader.c: some bug fixes of folded header line processing.
9007 * src/headerview.c: headerview_show(): some bug fixes.
9011 * version 0.1.7alpha
9013 * src/utils.c: conv_euctojis(): fixed a bug that didn't add
9014 kanji-out sequence [ \033 ( B ] when input string was ended
9015 with kanji. (Thanks to Nozomu Kobayashi for pointing this out.)
9016 * src/compose.c: compose_encode_header(): changed as it outputs
9017 encoded string to another buffer.
9018 And implemented a faculty to save sent message to outbox and
9019 to queue message that failed to send (preliminary).
9020 And, finally implemented proper To: and Cc: processing :)
9021 * src/folderview.c: added preliminary right-clicking popup menu
9022 for operating folders.
9023 * some permission fixes at creating or copying file.
9027 * version 0.1.6alpha
9029 * src/procheader.c: fixed a bug that didn't null-terminate
9030 header list and caused segmentation fault.
9034 * version 0.1.5alpha
9036 * src/procheader.[ch]: added function procheader_get_one_field()
9037 that gets one header field that matches the header list.
9038 And removed procheader_get_unfolded_line(), which is less generic.
9039 And rewrote procheader_get_header_fields() using
9040 procheader_get_one_field().
9041 * src/summaryview.c: some bug fixes of key input scan routine.
9042 * README, README.jp: modified documents a bit.
9046 * src/menu.c: menu_set_sensitive(): fixed a bug that if a menu item
9047 had a submenu, set sensitivity of the submenu, not the item.
9051 * version 0.1.4alpha
9053 * src/summaryview.c: fixed a bug that caused segmentation fault
9054 when empty summary view was center-clicked.
9055 And fixed a bug that freed moving folder strings when marked
9057 If current folder is trash, don't delete message.
9058 * src/summaryview.[ch]
9060 * src/procmsg.[ch]: added update-cache mode (discards previous cache).
9064 * src/procheader.[ch]: more optimization of header processing
9065 routine. And added a new function procheader_get_header_fields()
9066 that receives an array of header name as a parameter and
9068 * src/utils.[ch]: added remove_return() for removing return code.
9069 * src/unmime.c: added remove_return() on the last of UnMimeHeader().
9073 * src/compose.c: if message body is ascii only, set US-ASCII as
9074 charset in Content-Type.
9077 * src/prefs_common.c
9078 * src/prefs_account.c
9079 * src/account.c: changed the location of rc files.
9080 * src/account.c: enabled closing window when escape key is pressed.
9084 * version 0.1.3alpha
9086 * src/compose.c: fixed a bug that caused segmentation fault
9087 when sending failed.
9088 And relocated header-generation routines from src/send.c.
9089 * src/send.c: moved header-generation routines to src/compose.c.
9090 * src/prefs.c: added '~' to home directory expansion.
9091 * src/prefs_account.[ch]: added signature file path configuration.
9092 * src/prefs_common.[ch]: added spool path configuration.
9093 * src/inc.c: changed the method of user name acquisition to use
9098 * version 0.1.2alpha
9100 * added ChangeLog (this file), ChangeLog.jp.
9101 * some code cleanups.
9102 * added manage_window.[ch] for transient window management.
9103 * src/procheader.c: optimized header processing routine a bit.
9104 * src/send.c: fixed exception handling on connection.
9105 * src/inc.c: added exception handling on getting user name.
9109 * version 0.1.1alpha
9111 * src/send.c: fixed a bug that didn't add Content-Type: header.
9115 * version 0.1.0alpha