sync with 0.9.2cvs12
[claws.git] / ChangeLog
1 2003-07-03
2
3         * src/inc.[ch]: update received message number on CList while
4           retrieving.
5         * src/session.c: session_read_data_cb(): optimized by removing
6           g_malloc() and memcpy().
7
8 2003-07-02
9
10         * src/socket.[ch]: sock_add_watch(): new. It monitors SSL by original
11           watch functions (otherwise uses g_io_add_watch()).
12         * src/session.[ch]: removed previous workarounds, and replaced
13           g_io_add_watch() with sock_add_watch().
14
15 2003-07-01
16
17         * src/socket.[ch]: added sock_has_pending_data() which returns TRUE
18           if socket has pending data.
19         * src/session.c: session_recv_msg(), session_recv_data(): check if
20           socket has pending data and call the callbacks immediately in that
21           case (fixes the hang at ESMTP EHLO on SSL).
22
23 2003-06-30
24
25         * src/socket.c: check return value in SSL functions.
26
27 2003-06-30
28
29         * src/mimeview.c: mimeview_init(): initialize TextView to prevent
30           slowdown caused by GTK+ themes (thanks to Yuri Arapov).
31
32 2003-06-27
33
34         * src/session.c: session_read_data_cb(): clear Session::read_data_buf
35           before calling callbacks.
36
37 2003-06-26
38
39         * src/socket.c: made socket connection protocol independent.
40         * src/session.c: removed debug g_print().
41         * src/inc.c: made status bar output less verbose, and show counter
42           on main window's progressbar.
43
44 2003-06-26
45
46         * src/session.c: added missing #include <errno.h>.
47
48 2003-06-25
49
50         * src/session.[ch]: reimplemented the Session system with non-blocking
51           I/O to solve the performance and the code design issue.
52         * src/socket.[ch]: added sock_connect_async() and
53           sock_connect_async_cancel() to enable asynchronous connection.
54           sock_peek(): modified the implementation.
55         * src/pop.c: optimized the receiving of the responses of
56           UIDL/LIST/RETR.
57
58 2003-06-18
59
60         * src/procmsg.c: procmsg_get_thread_tree(): prevent threading problems
61           when a node is an ancestor (parent / great parent), which mostly
62           happens with circular references (thanks to Phillipe Gramoulle
63           for finding an sample set of messages, and Alfons for the patch).
64
65 2003-06-16
66
67         * src/pop3.c: pop3_get_uidl_table(): return empty hash table even if
68           UIDL list is not found (fixes inability of initial retrieval).
69
70 2003-06-10
71
72         * src/main.c: added the option '--status-full' which shows the status
73           of each folder specified. The option '--status' also takes
74           following arguments for folders (thanks to Yuri Arapov).
75         * src/folder.[ch]: folder_get_status(): new. it takes the array of
76           folders as the argument and returns their status.
77           folder_count_total_msgs(): removed.
78
79 2003-06-06
80
81         * version 0.9.2
82
83 2003-06-06
84
85         * src/filesel.c
86           src/foldersel.c
87           src/inputdialog.c: use gtk_main_iteration() instead of gtk_main()
88           to prevent abort when a button is double-clicked.
89
90 2003-06-02
91
92         * src/addr_compl.c: invalidate_address_completion(): check if
93           g_completion_list is NULL (thanks to Kazuhiro NISHIYAMA).
94
95 2003-06-02
96
97         * src/pop.c: pop3_session_recv_data_finished(): fixed a bug that
98           deleted messages that is to be kept on server (thanks to Tristan
99           Wallis).
100
101 2003-05-27
102
103         * version 0.9.1
104
105 2003-05-26
106
107         * src/socket.[ch]:
108           sock_set_io_timeout(): new. It sets the timeout interval.
109           sock_gdk_input_add(): removed since it's not used anymore.
110         * src/prefs_common.[ch]: added an option to set the timeout parameter.
111
112 2003-05-26
113
114         * src/action.c: fixed a bug that didn't hide user string in
115           create_io_dialog() (thanks to Markus Amersdorfer).
116           Removed ChildInfo::type and added Children::action_type.
117
118 2003-05-23
119
120         * src/inc.c: inc_start(): ask every password before retrieving.
121           Don't popup the redundant error dialog.
122           inc_account_mail()
123           inc_all_account_mail()
124           inc_progress_dialog_set_list(): separated account list display
125           into a new function.
126           inc_progress_dialog_set_label()
127           inc_recv_data_finished()
128           inc_recv_message(): properly update the dialog when RETR finished.
129
130 2003-05-22
131
132         * src/imap.c:
133           imap_modified_utf7_to_locale()
134           imap_locale_to_modified_utf7(): fixed compilation failure when not
135           using iconv().
136
137 2003-05-21
138
139         * src/procmime.c: procmime_scan_multipart_message(): fixed parsing
140           of message/rfc822 parts.
141
142 2003-05-21
143
144         * src/pop.c: pop3_ok(): detect timeout error.
145
146 2003-05-20
147
148         * src/imap.c: imap_locale_to_modified_utf7(): fixed the encoding bug
149           when locale strings include '+'.
150           imap_modified_utf7_to_locale()
151           imap_locale_to_modified_utf7(): at least escape/unescape '&' even
152           if iconv() is not supported.
153
154 2003-05-20
155
156         * src/compose.c:
157           compose_insert_sig()
158           compose_get_signature_str(): include separator in signature string.
159           Don't insert separator if signature file is not found.
160           Disabled use of implicit default signature path (~/.signature) when
161           sig_path is NULL.
162
163
164 2003-05-20
165
166         * src/codeconv.c
167           src/gtkshruler.c
168           src/news.c
169           src/procmsg.c
170           src/quote_fmt_parse.y
171           src/smtp.c: suppress warnings that gcc-3.3 issues.
172           src/stringtable.c: use string_entry_free().
173
174 2003-05-19
175
176         * src/compose.c: compose_insert_sig(): fixed the bug that always
177           appended signature separator if signature file was not found.
178           compose_get_signature_str(): fixed the bug that caused crash if
179           signature file cannot be opened.
180
181 2003-05-16
182
183         * version 0.9.0
184
185 2003-05-16
186
187         * src/session.c: session_recv_msg(): removed debug print.
188
189 2003-05-15
190
191         * src/imap.c:
192           imap_parse_atom()
193           imap_get_header()
194           imap_cmd_fetch(): check for data size that servers return (fixes
195           vulnerability found in BugTraq).
196
197 2003-05-14
198
199         * src/addr_compl.c: get_complete_address()
200           src/addressbook.c: addressbook_format_address()
201           src/compose.c: QUOTE_IF_REQUIRED(): quote if name contains
202           characters that is not defined in atext (RFC 2822, 3.2.4. Atom).
203         * src/main.c: main(): set colormap and visual to solve color problem
204           in Solaris (thanks to Markus Schwarzenberg).
205
206 2003-05-12
207
208         * version 0.9.0pre1
209
210 2003-05-12
211
212         * src/prefs_account.c: temporarily removed POP before SMTP option.
213
214 2003-05-09
215
216         * src/prefs_common.[ch]: changed the description of "Open message when
217           cursor keys are pressed on summary".
218         * src/summaryview.c: summary_show(): open message when always_show_msg
219           is TRUE.
220
221 2003-05-09
222
223         * src/logwindow.[ch]: restrict the maximum lines of the log messages
224           to reduce the memory usage.
225
226 2003-05-07
227
228         * src/compose.c: compose_insert_sig(): fixed a crash when signature
229           string contains illegal sequence.
230         * src/utils.[ch]: changed get_wcs_len() to get_mbs_len() for accuracy.
231
232 2003-05-07
233
234         * major refactoring of MIME structure.
235         * src/procmime.c: procmime_scan_message(): decrypt message if
236           gpgme is enabled. Create multipart tree only if content-type is
237           multipart/* or message/rfc822.
238           procmime_scan_multipart_message(): fixed the scanning of
239           message/rfc822 part.
240         * src/action.c: parse_append_msgpart()
241           src/messageview.c: messageview_show()
242           src/mimeview.c: mimeview_show_message(): use procmime_scan_message()
243           instead of procmsg_open_message() and procmime_scan_mime_header().
244           mimeview_set_multipart_tree(): conform to the new MIME structure.
245         * src/textview.c: textview_show_part(): removed unnecessary check.
246         * src/procmsg.c: procmsg_open_message_decrypted(): fixed the file
247           pointer when decryption failed.
248
249 2003-05-06
250
251         * src/ssl.c: ssl_init_socket_with_method(): replaced log_warning()
252           by g_warning(), and log_print() by debug_print().
253         * src/pop.[ch]: added an error code PS_NOTSUPPORTED, and retry with
254           LAST if UIDL is not supported.
255
256 2003-05-01
257
258         * src/codeconv.c: conv_get_code_conv_func(): convert to EUC-JP only
259           if it is the current locale encoding when dest_charset_str is NULL.
260
261 2003-05-01
262
263         * src/action.c: execute_actions(): fixed crash when no text widget
264           is selected (thanks to Paul and Melvin).
265         * src/action.c
266           src/prefs_actions.c: added missing reference to Claws team in the
267           copyright.
268
269 2003-04-28
270
271         * src/session.c:
272           session_send_msg()
273           session_send_data(): fixed a memory leak and data sending bug.
274         * src/send_message.c:
275           send_message_smtp(): fixed focus management.
276
277 2003-04-25
278
279         * src/smtp.[ch]: set the response string to SMTPSession::error_msg
280           if error occurred.
281         * src/send_message.c: show error dialog if error occurred.
282         * src/main.c: send_queue()
283           src/mainwindow.c: send_queue_cb(): don't show error dialog here.
284
285 2003-04-25
286
287         * src/session.c: session_close(): kill child process only if
288           state is not SESSION_DISCONNECTED.
289         * src/send_message.c: send_cancel_button_cb()
290           src/inc.c: inc_cancel(): don't set Session::state to
291           SESSION_DISCONNECTED.
292         * src/prefs.[ch]: modified the names of prefs_write_*().
293         * src/address.[ch]: removed.
294
295 2003-04-24
296
297         * src/compose.c: compose_template_apply(): overwrite recipients.
298
299 2003-04-23
300
301         * src/procheader.c: procheader_date_parse(): removed debug print.
302         * src/session.c: changed every g_print to debug_print.
303           session_child_input(): removed unrequired session_close() (it'll
304           be closed anyway after returning FALSE).
305         * src/send_message.c: send_message_smtp(): changed g_print to
306           debug_print.
307
308 2003-04-23
309
310         * src/procheader.c: procheader_procheader_date_parse(): don't add
311           local timezone offset if timezone is unknown.
312           Made the Y2K workaround code to follow RFC 2822.
313           procheader_scan_date_string(): workaround for date strings which
314           don't have timezone specification.
315         * src/utils.c: remote_tzoffset_sec(): return -1 if timezone is
316           unknown.
317
318 2003-04-22
319
320         * src/action.[ch]: refactored. Also fixed a bug on MIME mode, and
321           some memory leaks on error.
322           action_update_msgview_menu(): new.
323         * src/messageview.[ch]: added "Tools/Actions" menu. Keep window list.
324           messageview_get_selected_mime_part(): returns MimeInfo of selected
325           part when MessageView is in MIME mode.
326         * src/mimeview.[ch]: mimeview_get_selected_part(): returns MimeInfo
327           of selected part.
328         * src/summaryview.[ch]: summary_get_selected_msg_list(): returns
329           MsgInfo list of selected messages.
330
331 2003-04-21
332
333         * src/prefs_filter.[ch]: include original message's headers as
334           the preset keywords. Modified the sizes of the widgets.
335         * src/utils.[ch]: added str_case_equal() and str_case_hash() for
336           case-insensitive hash.
337
338 2003-04-18
339
340         * src/procmsg.c: procmsg_get_filter_keyword(): added X-Sequence to
341           auto-detected headers.
342         * src/action.[ch]
343           src/prefs_actions.c
344           src/compose.c
345           src/mainwindow.c: modified function names.
346           get_user_string(): Use input_dialog() instead of its own
347           implementation.
348
349 2003-04-17
350
351         * src/codeconv.[ch]: conv_encode_header(): don't include '(' and ')'
352           in encoded strings if addr_field is TRUE.
353         * src/compose.c: compose_convert_header(): added a flag 'addr_field'.
354
355 2003-04-16
356
357         * src/prefs_actions.[ch]: separated action execution routine into
358           action.[ch].
359
360 2003-04-16
361
362         * src/prefs_actions.c: minor code cleanup.
363
364 2003-04-16
365
366         * src/codeconv.[ch]: conv_iconv_strdup(): fixed the handling of
367           EILSEQ.
368
369 2003-04-16
370
371         * src/inc.c:
372           inc_recv_data_progressive()
373           inc_recv_data_finished()
374           inc_recv_message()
375           send_recv_message()
376           send_send_data_progressive()
377           send_send_data_finished(): added assertion.
378
379 2003-04-16
380
381         * src/codeconv.[ch]: conv_iconv_strdup(): fixed potential memory
382           corruption bug.
383
384 2003-04-16
385
386         * src/codeconv.[ch]: conv_iconv_strdup(): don't include nul character
387           in source buffer since it messed up some encoding conversion (like
388           UTF-7).
389
390 2003-04-15
391
392         * src/procmsg.c: procmsg_get_filter_keyword(): unfold headers and
393           extract ID from List-Id header.
394         * src/utils.[ch]: extract_one_parenthesis_with_skip_quote(): removed.
395           extract_list_id_str(): extract ID string from List-Id header.
396
397 2003-04-15
398
399         * src/prefs_actions.c: merged from the claws branch. Fixes several
400           bugs and adds some features.
401
402 2003-04-14
403
404         * src/compose.c: compose_parse_header(): fixed a bug that unnecessary
405           linebreaks were included on reediting.
406         * src/imap.c
407           src/pop.c: fixed typos: 'occured'.
408
409 2003-04-11
410
411         * src/compose.[ch]: implemented auto signature replacement on
412           changing accounts.
413           compose_insert_sig(): added a flag to replace current signature.
414           compose_get_signature_str(): new. It returns signature string.
415           compose_insert_command_output(): removed.
416           compose_select_account(): call compose_insert_sig() on account
417           change.
418           compose_destroy(): fixed a memory leak of UndoMain object.
419           Compose::sig_str: new. It stores current signature string.
420         * src/gtkutils.[ch]: gtkut_stext_find(): new.
421           Renamed gtk_stext_clear() to gtkut_stext_clear().
422         * src/utils.[ch]: get_wcs_len(): returns wide-character length of
423           multibyte string.
424           normalize_newlines(): converts CR+LF and CR into LF.
425           get_command_output(): returns command output.
426
427 2003-04-08
428
429         * src/procmsg.[ch]: procmsg_get_filter_keyword(): new. It returns
430           filter keyword for messages.
431         * src/summaryview.c: summary_filter_open(): use
432           procmsg_get_filter_keyword().
433         * src/messageview.c: create_filter_cb(): implemented.
434
435 2003-04-07
436
437         * src/inc.c:
438           inc_start()
439           inc_put_error(): display server responses on error.
440         * src/pop.[ch]: added Pop3Session::error_msg, and set server responses
441           on error.
442
443 2003-04-04
444
445         * src/messageview.[ch]: separated the forced charset of message view
446           in separate window from the main window.
447           src/textview.c:
448           textview_show_message()
449           textview_show_part()
450           textview_add_part(): use MessageView::forced_charset if specified.
451
452 2003-04-03
453
454         * src/mainwindow.c: modified File menu a bit.
455         * src/menu.[ch]: added functions to handle item factory rc strings.
456         * src/messageview.[ch]: added a menu, and made it take over main
457           window's menu shortcuts.
458           added msginfo which is duplicated on display to MessageView.
459         * src/prefs_common.c: prefs_keybind_apply_clicked(): use
460           menu_factory_clear_rc().
461
462 2003-03-28
463
464         * send_message.c: send_message_smtp():
465           re-enabled forcing of SMTP AUTH method.
466           Clear temporary password if authentication failed.
467         * smtp.c: output warning to log and set SMTPSession::error_val
468           if error occurs.
469         * smtp.h: changed error value to enum. Added SMTPSession::error_val.
470         * src/mbox.c: proc_mbox(): force updating of folder.
471
472 2003-03-28
473
474         * src/pop.h: changed error value to enum.
475         * src/pop.c: pop3_retr_recv(): return PS_IOERR when inc_drop_message()
476           failed.
477           pop3_ok(): return appropriate error value based on current state.
478           Output warning to log if error occurs.
479
480 2003-03-27
481
482         * src/nntp.[ch]
483           src/news.[ch]: refactored. Remove NNTPSockInfo and use NNTPSession
484           in nntp.c.
485
486 2003-03-27
487
488         * src/inc.c: inc_pop3_session_do(): retrun appropriate error if
489           Session::state == SESSION_ERROR.
490         * po/POTFILES.in: removed src/automaton.c and src/send.c.
491           Added src/send_message.c.
492
493 2003-03-26
494
495         * src/pop.[ch]
496           src/session.c: fixed breakage of POP3 retrieval.
497           session_recv_data_from_sock_unescape(): read until terminator
498           appears and also return the actual size.
499
500 2003-03-25
501
502         * src/automaton.[ch]: removed.
503         * src/session.c: removed some of the debug output.
504         * src/smtp.c: smtp_session_recv_msg(): workaround in case server
505           returns EHLO-style response to HELO command.
506           Ignore all multiline responses except for EHLO since they are
507           allowed for any command.
508
509 2003-03-25
510
511         * src/session.[ch]
512           src/pop.c: fixed retrieval of messages which contain dot-escaped
513           lines.
514           session_recv_data(): added a flag for unescape.
515           session_recv_data_from_sock_unescape(): new. It receives message
516           for each line and unescapes dot-escaped lines.
517           Removed the previous workaround.
518         * src/defs.h: decreased UI_REFRESH_INTERVAL to 40 msec.
519
520 2003-03-25
521
522         * src/pop.[ch]: workaround for brekage of retrieval when given size
523           and actual one is different.
524
525 2003-03-24
526
527         * src/pop.c: pop3_retr_eom_recv(): ignore invalid end of message
528           since some servers sometimes return incorrect message size.
529         * src/news.c: news_session_new(): zero clear NNTPSession object.
530           Don't initialize Session::sock with nntp_sock->sock to prevent
531           double-free of SockInfo.
532         * src/imap.c: zero clear IMAPSession object.
533           imap_cmd_append(): don't close SockInfo.
534
535 2003-03-22
536
537         * src/pop.c: pop3_session_recv_msg(): fixed STLS.
538
539 2003-03-22
540
541         * src/inc.[ch]
542           src/pop.[ch]: reimplemented using new I/O system.
543         * src/session.[ch]: session_recv_data(): new.
544           session_send_data_to_sock()
545           session_recv_data_from_sock(): decreased the frequency of progress
546           notification.
547
548 2003-03-22
549
550         * src/smtp.c: smtp_auth_recv(): fixed CRAM-MD5 authentication.
551
552 2003-03-20
553
554         * src/session.[ch]: session_start_tls(): new.
555           session_recv_msg(): made it static.
556
557 2003-03-20
558
559         * implemented asynchronous network I/O.
560         * src/session.[ch]: the interface to communicate with servers through
561           child process.
562         * src/smtp.[ch]
563           src/send_message.[ch]: rewrote using new I/O system.
564         * src/socket.[ch]: renamed *_write() to *_write_all(), and made
565           *_write() as just a simple wrapper for write().
566         * src/utils.c: get_outgoing_rfc2822_str(): new. It modifies the
567           message to send with SMTP or NNTP.
568           file_read_stream_to_str(): new.
569
570 2003-03-12
571
572         * src/textview.c: textview_button_pressed(): corrected the range of
573           URI link.
574         * src/compose.c: compose_wrap_line_all_full(): treat UTF-8 characters
575           represented with more than 2 bytes as 2 character width and 2 bytes
576           one as a single character width as a workaround for wrapping problem.
577
578 2003-03-12
579
580         * src/utils.c: subject_compare_for_sort(): allow null strings (fixes
581           summary sorting).
582
583 2003-03-11
584
585         * implemented HTML link correctly.
586         * src/html.[ch]: HTMLAttr, HTMLTag: new structure for attributes /
587           tags.
588           html_get_tag(): new. It parses tag and returns HTMLTag object.
589           html_parse_tag(): also parses <a> tags and 'href' attributes.
590         * src/textview.c: textview_write_link(): new. It creates link string.
591
592 2003-03-10
593
594         * src/compose.c: compose_wrap_line_all_full(): fixed an infinite
595           loop / crash bug (thanks to Darko Koruga).
596           compose_write_to_file(): put correct charset element when
597           conversion failed but want to send anyway.
598
599 2003-03-10
600
601         * src/headerview.c: headerview_show()
602           src/textview.c: textview_write_line(): remove unreadable characters
603           from displayed strings to prevent crashes on multi-byte
604           environments.
605         * src/codeconv.[ch]: conv_unreadable_locale(): new. It was separated
606           from conv_localetodisp().
607
608 2003-03-10
609
610         * src/procmsg.c: procmsg_cmp_by_subject()
611           src/summaryview.c: summary_cmp_by_subject(): ignore Re: when
612           comparing subjects.
613         * src/utils.[ch]:
614           subject_compare_for_sort()
615           trim_subject_for_sort(): new.
616
617 2003-03-07
618
619         * version 0.8.11
620
621 2003-03-07
622
623         * src/defs.h: added -i option to the default sendmail command.
624
625 2003-03-06
626
627         * src/codeconv.[ch]: added missing character encodings and locales.
628
629 2003-03-06
630
631         * src/procmsg.[ch]:
632           procmsg_get_mark_sum()
633           procmsg_open_mark_file()
634           procmsg_read_mark_file(): take FolderItem instead of directory
635           path.
636
637 2003-03-05
638
639         * src/codeconv.c: conv_encode_header(): fixed a bug that spaces
640           which is on the wrap boundary would be lost when encoding long
641           non-ascii strings (thanks to Sergey Vlasov).
642           Don't force wrapping within a long word until it reaches hard line
643           length limit (998 characters) (workaround for the breakage of
644           long address list with no spaces).
645
646 2003-03-03
647
648         * src/prefs_account.c: fixed compile failure when using neither
649           gpg or ssl.
650
651 2003-03-03
652
653         * src/codeconv.c: fixed UTF-8 locale support.
654           conv_get_code_conv_func(): return conv_noconv if locale encoding
655           is UTF-8. Return conv_latintodisp on ISO-8859-* to locale encoding
656           conversion.
657           conv_convert(): call conv_iconv_strdup() instead of
658           conv_codeset_strdup().
659           conv_codeset_strdup(): moved some codes into conv_iconv_strdup().
660
661 2003-02-28
662
663         * src/prefs_account.[ch]: added an option to use command output for
664           signature.
665         * src/compose.c: compose_insert_sig(): use command output if
666           specified.
667           compose_insert_command_output(): new.
668
669 2003-02-28
670
671         * src/main.c: main(): remove lock socket if sylpheed is not running
672           when --status command is executed.
673           lock_socket_remove(): new.
674
675 2003-02-27
676
677         * src/codeconv.c: conv_codeset_strdup(): don't convert if current
678           codeset is US-ASCII (or POSIX).
679
680 2003-02-21
681
682         * src/codeconv.c: conv_iconv_strdup(): try to skip invalid characters
683           and continue conversion.
684
685 2003-02-21
686
687         * src/summaryview.c: summary_selected(): always update widget
688           sensitivity.
689
690 2003-02-20
691
692         * src/utils.c: tzoffset_sec(): fixed a bug that displayed wrong
693           date in timezones more than GMT+12 or less than GMT-12.
694
695 2003-02-18
696
697         * src/prefs_common.[ch]
698           src/sourcewindow.c: remember the size of source window.
699         * src/md5.c: fixed a compile problem with gcc 3.3.
700
701 2003-02-17
702
703         * src/about.c: about_create(): modified the copyright notice.
704
705 2003-02-17
706
707         * src/colorlabel.c: don't use pixmaps for label color rect but draw
708           rectangles so we can respect the color map of palette based visuals
709           (fixes the long time crashes on Solaris - thanks to Alfons
710           Hoogervorst).
711
712 2003-02-17
713
714         * src/procheader.c: procheader_date_parse(): made month string case
715           insensitive.
716         * src/prefs_filter.c: prefs_filter_close(): fixed the crash when the
717           selection list is empty.
718
719 2003-02-14
720
721         * src/quote_fmt_parse.y: removed gettext translatable strings.
722         * src/unmime.c: unmime_header(): remove broken characters when
723           code conversion failed.
724         * src/codeconv.c: conv_encode_header(): fixed a bug that broken
725           headers if long words more than 75 characters are entered.
726
727 2003-02-13
728
729         * src/prefs_account.c: prefs_account_receive_create()
730           src/utils.c: to_human_readable(): made units translatable.
731
732 2003-02-13
733
734         * src/codeconv.c: isprintableeuckanji(): don't allow more than 0xf4
735           at first byte (fixes abort() problem of glibc).
736         * src/html.c: html_read_line(): remove characters which can't be
737           displayed on the current locale.
738
739 2003-02-11
740
741         * src/utils.[ch]:
742           trim_subject_for_compare(): renamed from trim_subject().
743           trim_subject(): new. It removes [...] or (...) at the beginning
744           of subject.
745         * src/prefs_folder_item.c
746           src/folder.[ch]:
747           added options for trimming summary / compose subject.
748         * src/summaryview.c: summary_set_header(): trim subject if the folder
749           option is set.
750         * src/compose.c: compose_reply_set_entry(): trim subject if the folder
751           option is set.
752
753 2003-02-09
754
755         * src/codeconv.c:
756           LBREAK_IF_REQUIRED(): don't break lines before first word (fixes
757           X-Face header problem).
758           conv_encode_header(): allow up to 97 characters for one word.
759
760 2003-02-07
761
762         * src/filter.c: filter_match_condition(): fixed the bug that
763           second condition ignored regex.
764         * src/news.h: NewsGroupInfo: use guint for message numbers
765           (fix count in grouplist dialog) (thanks to Thorsten Maerz).
766
767 2003-02-06
768
769         * src/codeconv.c: conv_encode_header(): fixed a segfault bug
770           on code conversion failure.
771           conv_get_charset_str()
772           conv_get_charset_from_str(): optimized using hash table.
773
774 2003-02-06
775
776         * src/quote_fmt_parse.y:
777           SHOW_MESSAGE_NO_SIGNATURE, SHOW_QUOTED_MESSAGE_NO_SIGNATURE:
778           treat only "\n-- \n" as a signature separator.
779
780 2003-02-05
781
782         * src/gtkutils.[ch]: gtkut_ctree_node_prev(): new.
783         * src/summary_search.c: summary_search_execute(): search collapsed
784           nodes, too.
785
786 2003-02-05
787
788         * src/codeconv.c:
789           conv_unreadable_latin(): include 0x7f as an unreadable character.
790           conv_localetodisp(): don't remove 8bit characters by default.
791           conv_get_current_charset()
792           conv_get_outgoing_charset(): return ISO-8859-15 if "@euro" is
793           appended at the last of locale name.
794         * src/compose.c: compose_write_to_file(): show from and to encoding
795           when code conversion failed.
796
797 2003-02-04
798
799         * version 0.8.10
800
801 2003-02-04
802
803         * src/procmsg.h: WRITE_CACHE_DATA(): little speed improvement
804           (thanks to Colin Leroy).
805         * src/mh.c: mh_get_msginfo(): added NULL check (thanks to Thorsten
806           Maerz).
807
808 2003-02-03
809
810         * src/textview.c: textview_write_line(): don't convert if conv is
811           NULL.
812
813 2003-02-03
814
815         * src/codeconv.[ch]:
816           renamed conv_guess_encoding() to conv_guess_ja_encoding().
817           conv_localetodisp(): new. It removes unreadable characters from
818           (assumed) current locale string.
819           conv_codeset_strdup(): convert into ISO-8859-1 if dest_code is
820           NULL and current locale encoding is US-ASCII.
821           conv_get_code_conv_func(): return conv_ustodisp if US-ASCII is
822           specified for destination charset.
823         * src/textview.c: textview_write_line(): use conv_localetodisp()
824           instead of strncpy2() if conversion failed.
825
826 2003-01-31
827
828         * src/codeconv.c: conv_iconv_strdup()
829           src/imap.c:
830           imap_modified_utf7_to_locale()
831           imap_locale_to_modified_utf7(): use ICONV_CONST macro to remove
832           a warning on some systems.
833         * src/codeconv.c: conv_iconv_strdup(): flush iconv() output and
834           truncate buffer.
835           Return NULL instead of incomplete string if conversion failed.
836
837 2003-01-30
838
839         * src/summaryview.c: summary_execute(): select appropriate node
840           if currently selected node is to be deleted.
841         * src/gtkutils.[ch]: gtkut_ctree_node_is_selected(): new. Returns
842           TRUE if the specified node is selected.
843
844 2003-01-30
845
846         * src/summaryview.c: summary_status_show(): fixed a occasional crash
847           on deleting or moving.
848
849 2003-01-29
850
851         * src/codeconv.c: conv_unreadable_eucjp(): made the validity check
852           of EUC-JP more accurate.
853           isprintableeuckanji(): new. Use table for validity check of EUC-JP.
854
855 2003-01-17
856
857         * version 0.8.9
858
859 2003-01-17
860
861         * updated INSTALL.
862
863 2003-01-17
864
865         * src/quoted-printable.c: qp_encode_line(): fixed linebreak
866           duplication bug if the source string has CRLF.
867         * src/utils.[ch]:
868           canonicalize_str(): new. Returns newly allocated canonicalized
869           string.
870           uncanonicalize_file(): new. Uncanonicalize (CRLF -> LF) text.
871           uncanonicalize_file_replace(): new.
872         * src/compose.c: always canonicalize body before processing, and
873           uncanonicalize before returning.
874
875 2003-01-17
876
877         * src/procmime.c: procmime_get_encoding_for_charset(): prefer
878           ENC_8BIT for Russian charsets.
879         * src/compose.c: compose_write_to_file(): use base64 when signing
880           8bit message.
881
882 2003-01-16
883
884         * src/prefs_common.c: prefs_send_create(): added a description for
885           the setting of Content-Transfer-Encoding.
886
887 2003-01-16
888
889         * src/codeconv.c: fixed locale_table for Russian locales (thanks to
890           Sergey Vlasov).
891         * src/procmime.c: procmime_get_encoding_for_charset(): return
892           ENC_BASE64 for ISO-8859-5, KOI8-* and Windows-1251.
893         * src/compose.c: compose_attach_append(): set correct Content-
894           Transfer-Encoding for message/rfc822.
895           compose_write_to_file(): enabled user-definable Content-Transfer-
896           Encoding.
897         * src/prefs_common.[ch]: added an option for user-defined Content-
898           Transfer-Encoding.
899
900 2003-01-15
901
902         * src/quoted-printable.[ch]: qp_encode_line(): fixed a bug if the
903           line doesn't end with linebreak.
904
905 2003-01-15
906
907         * implemented quoted-printable encoding.
908         * src/quoted-printable.[ch]: qp_encode_line(): new.
909         * src/compose.c:
910           compose_write_to_file()
911           compose_write_attach(): implemented quoted-printable encoding.
912           compose_attach_property_create(): enabled quoted-printable menu
913           item.
914         * src/procmime.c: procmime_get_encoding_for_charset(): return
915           ENC_QUOTED_PRINTABLE for ISO-8859-* and CP125* charset.
916         * src/Makefile.am: added $(LIBICONV) to sylpheed_LDADD for libiconv
917           support.
918
919 2003-01-14
920
921         * src/folderview.c
922           src/summaryview.c
923           src/utils.[ch]: get_abbrev_newsgroup_name(): improved the way
924           of abbreviation of newsgroup name.
925
926 2003-01-14
927
928         * configure.in: show the result of iconv detection.
929
930 2003-01-13
931
932         * src/codeconv.[ch]: made the transition from libjconv to iconv().
933           conv_iconv_strdup(): new.
934         * src/about.c
935           src/imap.c
936           src/mainwindow.c
937           src/prefs_common.c: replaced HAVE_LIBJCONV to HAVE_ICONV.
938
939 2003-01-10
940
941         * src/compose.c
942           src/folderview.c
943           src/prefs_folder_item.c: English fix (property -> properties).
944         * src/prefs_filter.c: alert if entry is not saved.
945           prefs_filter_dialog_to_filter(): new.
946
947 2003-01-09
948
949         * src/codeconv.c: conv_encode_header(): fixed a bug which output raw
950           strings after linefeed.
951         * updated INSTALL.
952
953 2003-01-08
954
955         * src/codeconv.[ch]: code cleanup and optimization.
956           conv_code_converter_new()
957           conv_convert(): use functions obtained by conv_get_code_conv_func()
958           when using libjconv.
959           conv_codeset_strdup(): code cleanup.
960           conv_get_code_conv_func(): added an argument for destination
961           character set, and generalized.
962
963 2003-01-06
964
965         * src/codeconv.c: LBREAK_IF_REQUIRED(): break line only if some
966           characters follow.
967         * src/compose.c: compose_convert_header(): remove trailing spaces.
968         * src/customheader.c: custom_header_read_str(): strip the spaces
969           of name and value.
970         * src/prefs_customheader.c: prefs_custom_header_clist_set_row():
971           strip the spaces of name and value.
972
973 2002-12-25
974
975         * version 0.8.8
976
977 2002-12-25
978
979         * src/codeconv.c: conv_encode_header(): fixed a bug which will run
980           into infinite loop when encountering invalid characters.
981
982 2002-12-25
983
984         * src/procmsg.[ch]: procmsg_sort_msg_list(): new. It sorts message
985           list.
986         * src/summaryview.c: summary_show(): removed summary_sort() because
987           it is done inside folder_item_get_msg_list(). This will improve
988           the performance of summary display.
989           Sorted out the summary sort functions using macros.
990         * src/mh.c
991           src/imap.c
992           src/news.c
993           src/folder.[ch]: folder_item_get_msg_list(): return pre-sorted
994           list if FolderItem::sort_key is set.
995           Added SORT_BY_TO to FolderSortKey enum.
996         * src/mainwindow.c: added "View/Sort/by recipient".
997
998 2002-12-20
999
1000         * version 0.8.7
1001
1002 2002-12-20
1003
1004         * src/codeconv.c: conv_encode_header(): fix for redundant space on
1005           line-breaking.
1006         * src/compose.c: compose_convert_header(): always pass string to
1007           conv_encode_header() for line-breaking.
1008
1009 2002-12-20
1010
1011         * src/textview.c: textview_make_clickable_parts(): fixed incorrect
1012           parsing of email addresses.
1013
1014 2002-12-19
1015
1016         * src/defs.h: added DEFAULT_BROWSER_CMD.
1017         * src/mimeview.c: mimeview_view_file()
1018           src/prefs_common.c: prefs_other_create()
1019           src/utils.c: open_uri(): changed the default web browser to
1020           mozilla, and changed 'raise' command (which is undocumented)
1021           to 'new-window' in 'netscape -remote'.
1022
1023 2002-12-19
1024
1025         * src/compose.c: compose_send_control_enter(): fixed crash on
1026           Ctrl-Enter when Message/Send has no accelerator key (thanks to
1027           Sergey Vlasov).
1028
1029 2002-12-18
1030
1031         * src/mainwindow.c:
1032           set_charset_cb()
1033           sort_summary_cb()
1034           sort_summary_type_cb(): prevent unwanted processing on unchecking
1035           menu items.
1036
1037 2002-12-18
1038
1039         * src/main.c: process command line option before gtk_init() to
1040           enable remote operation without X (thanks to Ruslan N. Balkin).
1041         * src/codeconv.c: conv_encode_header(): fixed a potential buffer
1042           overflow.
1043
1044 2002-12-18
1045
1046         * src/Makefile.am: changed $(target_alias) to $(target_triplet)
1047           (the spec of autotools seems to be changed).
1048
1049 2002-12-18
1050
1051         * src/imap.c: get path separator using LIST command if server
1052           doesn't support NAMESPACE (based on the patch by Brian Sammon).
1053           imap_parse_list(): added an argument to return path separator.
1054           imap_get_namespace_by_list(): new.
1055
1056 2002-12-17
1057
1058         * src/addr_compl.c: add_address(): removed the debug print.
1059         * src/gtkutils.[ch]: gtkut_window_popup()
1060           src/mainwindow.c: main_window_popup(): applied the patch to fix
1061           the behavior of window popup from Sergey Vlasov (thanks!)
1062         * src/account.c: account_edit_create(): use signal_connect_after
1063           for row_move signal to fix the row position bug.
1064           account_row_moved(): scroll the CList half page.
1065         * src/prefs_filter.c: prefs_filter_row_move(): scroll the CList
1066           half page.
1067         * src/summaryview.c: summary_reply(): use selection text only if
1068           the displayed message is selected (thanks to Sergey Vlasov).
1069
1070 2002-12-13
1071
1072         * src/codeconv.c: conv_encode_header(): reimplemented the routine
1073           of MIME header encoding. And use Q-encoding method if the current
1074           locale is single-byte one.
1075         * src/utils.[ch]: is_next_nonascii(): take multi-byte string instead
1076           of wide-character string. Consider control codes as non-ASCII.
1077           get_next_word_len(): new. It returns the length of next word.
1078           is_next_mbs(), find_wspace(): removed.
1079         * src/quoted-printable.[ch]: new.
1080           qp_decode_line(): decodes one QP line.
1081           qp_decode_q_encoding(): decodes Q-encoded string in MIME header.
1082           qp_get_q_encoding_len(): returns the length when a string is
1083           Q-encoded.
1084           qp_q_encode(): Q-encode a string (RFC 2047).
1085         * src/unmime.c: moved the functions for quoted-printable to
1086           quoted-printable.c.
1087
1088 2002-12-05
1089
1090         * src/send.c: send_message_local(): escape line that only have one
1091           dot character (postfix's sendmail command will stop there).
1092
1093 2002-12-05
1094
1095         * src/send.c: send_message_local(): don't escape first-dot line
1096           (thanks to Sergey Vlasov).
1097
1098 2002-12-03
1099
1100         * autogen.sh: added 'libtoolize --force --copy' to override the
1101           current ltmain.sh.
1102         * acconfig.h: removed.
1103         * configure.in: increased minimal version of GPGME to 0.3.10.
1104           Fixed checking of XIM.
1105         * ac/check-type.m4
1106           ac/gnupg-check-typedef.m4: added an argument for comment.
1107
1108 2002-11-29
1109
1110         * src/imageview.[ch]: fixed conflicting declarations of
1111           imageview_show_image() (thanks to Thorsten Maerz).
1112
1113 2002-11-28
1114
1115         * src/compose.c: compose_entry_append(): don't add ", " on subject
1116           entry.
1117         * src/codeconv.c: conv_get_outgoing_charset(): obtain outgoing
1118           charset from the table (currently disabled for non-Japanese locales).
1119           conv_get_current_locale(): also refer to LC_CTYPE.
1120
1121 2002-11-27
1122
1123         * README: added a description about hidden settings.
1124
1125 2002-11-27
1126
1127         * src/prefs_common.[ch]: reorganized the common prefs dialog.
1128           Made enable_hscrollbar and bold_unread hidden options.
1129
1130 2002-11-26
1131
1132         * src/quote_fmt_parse.y: fixed a parse error (thanks to Andreas Hinz).
1133
1134 2002-11-26
1135
1136         * src/account.[ch]:
1137           account_find_from_message_file()
1138           account_find_from_msginfo(): new. They find an account from the
1139           headers like 'From:', 'X-Sylpheed-Account-Id:', and 'AID:' in the
1140           specified message.
1141         * src/compose.c:
1142           compose_reedit(): restore messages' previous account on composition.
1143           compose_write_headers(): add 'X-Sylpheed-Account-Id:' header
1144           on draft mode.
1145
1146 2002-11-26
1147
1148         * src/compose.c: cleaned up the code using compose_entry_set()
1149           (don't use gtk_entry_set_text() directly).
1150
1151 2002-11-25
1152
1153         * src/imap.c: imap_parse_namespace(): fixed a memory leak.
1154
1155 2002-11-22
1156
1157         * updated autotools and libtool to the latest version.
1158         * configure.in: added AC_PREREQ(2.50).
1159
1160 2002-11-22
1161
1162         * src/textview.c: textview_set_font(): fix for message display in
1163           UTF-8 locales (thanks to Sergey Vlasov).
1164
1165 2002-11-21
1166
1167         * src/imageview.[ch]: imageview_show_image(): resize images to fit
1168           the window size if specified.
1169         * src/prefs_common.[ch]: added an option 'Resize attached images'.
1170
1171 2002-11-20
1172
1173         * refactoring for SMTP implementation.
1174         * src/session.h: added ui_func to Session.
1175         * src/smtp.[ch]: separated the connection routine from
1176           smtp_session_new() to smtp_connect().
1177           Changed the argument of every function other than smtp_ok() from
1178           SockInfo to SMTPSession.
1179           Call UI callback from each functions.
1180         * src/send.c: send_message_smtp(): separated the code for UI update
1181           into send_progress_dialog_update().
1182
1183 2002-11-18
1184
1185         * src/smtp.[ch]: separated smtp_auth() from smtp_from().
1186         * src/send.c: send_message_smtp(): call smtp_auth() and display
1187           the state to the dialog.
1188
1189 2002-11-18
1190
1191         * src/filter.c: strmatch_regex(): use extended regex (thanks to
1192           Fabien Devaux).
1193         * src/main.c: main(): removed the code for assortrc -> filterrc
1194           transition.
1195         * src/gtkutils.c: gtkut_font_load(): only use gdk_font_load() if
1196           current locale is C or POSIX.
1197           gtkut_stext_is_uri_string(): include "www." for URI string.
1198         * src/textview.c: textview_make_clickable_parts(): include "www."
1199           for URI string.
1200
1201 2002-11-15
1202
1203         * version 0.8.6
1204
1205 2002-11-13
1206
1207         * src/textview.c: textview_add_part(): indicate signature status
1208           using different colors.
1209
1210 2002-11-12
1211
1212         * src/folder.c: folder_write_list_recursive(): escape
1213           To/Cc/Bcc/Reply-To strings.
1214
1215 2002-11-11
1216
1217         * src/codeconv.c: conv_encode_header(): enabled B-encoding of
1218           headers on locales other than Japanese when not using libjconv.
1219
1220 2002-11-11
1221
1222         * src/inc.[ch]: added INC_IO_ERROR to IncState. Also added its
1223           corresponding error message.
1224           inc_pop3_session_do(): set INC_IO_ERROR instead of INC_NOSPACE
1225           on PS_IOERR.
1226
1227 2002-11-07
1228
1229         * src/prefs_account.[ch]: removed prefs_account_save_config() since
1230           it is not used.
1231         * src/procmime.[ch]: removed procmime_mimeinfo_free() since
1232           procmime_mimeinfo_free_all() can be used in every case.
1233
1234 2002-11-06
1235
1236         * src/account.c: account_get_special_folder(): support F_INBOX, and
1237           made code cleanup.
1238
1239 2002-11-06
1240
1241         * src/compose.[ch]: ComposeEntryType: changed COMPOSE_* to
1242           COMPOSE_ENTRY_*, and added
1243           COMPOSE_ENTRY_{REPLY_TO,SUBJECT,FOLLOWUP_TO}.
1244           compose_reply()
1245           compose_forward()
1246           compose_redirect(): added FolderItem to the arguments, and reflect
1247           settings in the item.
1248           compose_entry_set(): new.
1249           compose_entry_append(): code cleanup.
1250           compose_entries_set_from_item(): take ComposeMode in its arguments,
1251           and enabled FolderItem::use_auto_to_on_reply.
1252         * src/summaryview.c: summary_reply(): pass folder_item to
1253           compose_{reply,forward,redirect}().
1254
1255 2002-11-05
1256
1257         * src/gtkutils.[ch]:
1258           gtkut_font_load(): new. It automatically choose font or fontset
1259           by current locale.
1260           gtkut_font_load_from_fontset(): new. It tries to load single font
1261           instead of fontset from a fontset string.
1262         * src/alertpanel.c
1263           src/folderview.c
1264           src/headerview.c
1265           src/summaryview.c: workaround for the problem that couldn't display
1266           8-bit characters in C or POSIX locale (use font instead of fontset).
1267         * src/compose.c
1268           src/sourcewindow.c
1269           src/textview.c: made code cleanup using gtkut_font_load*().
1270
1271 2002-10-29
1272
1273         * src/mh.c: mh_get_msginfo(): set correct message number.
1274
1275 2002-10-29
1276
1277         * src/folder.[ch]: added a new virtual method Folder::get_msginfo().
1278           It returns a new MsgInfo associated to a message number.
1279           folder_item_get_msginfo(): new.
1280         * src/imap.[ch]: imap_get_msginfo(): new.
1281         * src/mh.[ch]: mh_get_msginfo(): new.
1282         * src/news.[ch]: news_get_msginfo(): new.
1283
1284 2002-10-28
1285
1286         * src/codeconv.c: conv_euctojis(): fixed a bug which will cause
1287           infinite loop if an invalid code appeared.
1288
1289 2002-10-25
1290
1291         * src/codeconv.c: conv_codeset_strdup()
1292           src/html.[ch]: html_read_line(): don't output conversion failure
1293           warnings.
1294           Added HTML_CONV_FAILED to the enum HTMLState.
1295
1296 2002-10-24
1297
1298         * implemented per-folder auto-set address (still in progress).
1299         * src/compose.[ch]: compose_new(): added FolderItem to its arguments,
1300           and set entries from it (if mailto is empty).
1301           compose_entry_append(): activate menu if required.
1302           compose_entries_set_from_item(): new.
1303         * src/folder.[ch]: added auto_to, use_auto_to_on_reply, auto_cc,
1304           auto_bcc, and auto_replyto to FolderItem, and renamed apply_sub to
1305           ac_apply_sub.
1306           folder_build_tree(), folder_read_folder_func(),
1307           folder_write_list_recursive(): added the above members.
1308         * src/prefs_folder_item.[ch]: added auto-set addresses.
1309         * src/pop.[ch]: removed Pop3State::prev_folder.
1310
1311 2002-10-11
1312
1313         * src/compose.c: allow dropping files by also "moving" files from a
1314           file manager (thanks to Alfons).
1315
1316 2002-10-10
1317
1318         * compose_reply_set_entry(): made Reply-To have priority over
1319           List-Post on ML reply.
1320
1321 2002-10-09
1322
1323         * src/gtksctree.[ch]: gtk_sctree_set_anchor_row(): new.
1324         * src/summaryview.c: summary_step(): fixed a bug that lost the
1325           correct selection anchor.
1326           summary_key_pressed(): use gtk_sctree_select() instead of
1327           gtk_ctree_select().
1328         * src/inc.[ch]
1329           src/pop.c
1330           src/recv.c: differentiate disk full and socket errors
1331           (thanks to Colin Leroy).
1332
1333 2002-10-08
1334
1335         * src/account.c: account_edit_prefs(): removed unused variables.
1336         * src/compose.[ch]: separated WITH_QUOTE/WITHOUT_QUOTE flags in
1337           ComposeMode.
1338           compose_reply()
1339           compose_reply_set_entry(): receive reply type with one argument.
1340         * src/summaryview.c: summary_reply(): reduced conditional branches.
1341
1342 2002-10-08
1343
1344         * src/compose.c: compose_redirect(), compose_reedit(): strip CR
1345           from line ends (thanks to Sergey Vlasov).
1346         * src/folderview.c: renamed 'Rescan folder tree' to 'Rebuild
1347           folder tree'.
1348
1349 2002-10-08
1350
1351         * src/folder.[ch]: added a virtual method Folder::remove_msgs().
1352         * src/imap.[ch]: implemented imap_remove_msgs() which expunges
1353           messages all at once.
1354
1355 2002-10-07
1356
1357         * src/account.[ch]: account_open(): new. It opens account prefs
1358           dialog and reflects to UI when finished.
1359         * src/folderview.c:
1360           folderview_button_pressed()
1361           folderview_property_cb(): open account prefs dialog when the
1362           property of the root folder of remote account is requested.
1363
1364 2002-10-07
1365
1366         * src/account.c: account_destroy(): unref account information in
1367           folders.
1368         * src/folder.[ch]: folder_unref_account_all(): new. It unref the
1369           specified account information in all folders.
1370         * src/folderview.c:
1371           folderview_rm_imap_server_cb()
1372           folderview_rm_news_server_cb(): destroy Folder first because
1373           folder_destroy() refers to account information.
1374
1375 2002-10-04
1376
1377         * src/account.c: account_find_from_item(): fixed a bug which didn't
1378           select the correct account.
1379         * inc_pop3_session_do():
1380           fixed the resource leak when SSL initialization failed.
1381           Immediately break from temporary event loop if cancelled.
1382
1383 2002-10-04
1384
1385         * src/account.[ch]: account_find_from_item(): new.
1386         * src/compose.c:
1387           compose_reply(), compose_forward(), compose_redirect()
1388           src/mainwindow.c: compose_cb(): select optimal account when
1389           composing.
1390         * src/folder.[ch]: added FolderItem::apply_sub.
1391         * src/menu.[ch]: menu_find_option_menu_index(): new. It finds the
1392           index of option menu which contains the specified data.
1393         * src/prefs_folder_item(): added Compose tab, and the setting of
1394           folder account.
1395
1396 2002-10-04
1397
1398         * configure.in: added $LDAP_LIBS for lber library detection.
1399
1400 2002-10-03
1401
1402         * version 0.8.5
1403
1404 2002-10-03
1405
1406         * src/procmsg.c: procmsg_msginfo_get_full_info(): fixed a memory
1407           leak, and added error checking.
1408
1409 2002-10-03
1410
1411         * src/compose.[ch]: added a flag Compose::use_newsgroups, and
1412           removed Compose::orig_account.
1413           compose_check_for_valid_recipient(): check only enabled entries.
1414           compose_write_headers()
1415           compose_redirect_write_headers(): add Newsgroups header only
1416           when the entry is enabled.
1417           compose_send(): modified the method of finding a mail account
1418           from a news account so that it tries to match the From address.
1419         * src/send.c: send_message_queue(): enabled the queueing of news
1420           messages.
1421         * src/news.[ch]: news_post_stream(): new.
1422
1423 2002-10-03
1424
1425         * configure.in: check lber first and use $LDAP_LIBS on the check
1426           for ldap.
1427
1428 2002-10-02
1429
1430         * po/*.po: fixed many typos of format strings which will lead to
1431           crash (thanks to Sergey Vlasov).
1432
1433 2002-10-02
1434
1435         * src/procheader.c: procheader_parse_stream(): added Cc header
1436           to the target for full parsing.
1437         * src/procmsg.[ch]: procmsg_msginfo_get_full_info(): new. It
1438           returns the full message information from the given information.
1439         * src/compose.c: compose_reply(), compose_forward(): get full
1440           message information for Cc header.
1441
1442 2002-10-02
1443
1444         * src/inc.c: inc_account_mail(), inc_all_account_mail(): update
1445           IMAP4 and NNTP folder summary after checking those accounts.
1446
1447 2002-10-01
1448
1449         * version 0.8.4
1450
1451 2002-10-01
1452
1453         * src/prefs_common.c: prefs_compose_create(): modified the label
1454           of the option for Reply button.
1455         * configure.in: add -lldap and -llber to the 5th argument of
1456           AC_CHECK_LIB() for LDAP library detection.
1457
1458 2002-09-30
1459
1460         * INSTALL
1461           INSTALL.jp: updated.
1462
1463 2002-09-30
1464
1465         * src/mainwindow.c: toggle the behavior of Reply button between
1466           normal reply and reply-to-list.
1467         * src/prefs_common.[ch]: added an option to switch the function
1468           of Reply button.
1469
1470 2002-09-27
1471
1472         * src/compose.c: compose_new(): removed the workaround for XIM
1473           because it doesn't have any effect and only seems to cause
1474           hangs.
1475
1476 2002-09-26
1477
1478         * src/compose.[ch]: compose_reply(): added a flag for reply-to-ML.
1479           compose_parse_header(): parse also List-Post header.
1480           compose_reply_set_entry(): support reply-to-ML (fall back to
1481           normal reply if ML address is not found).
1482         * src/mainwindow.c
1483           src/prefs_common.c
1484           src/summaryview.c: reorganized Reply menu and added 'Reply to
1485           mailing list'.
1486         * src/utils.[ch]: scan_mailto_url(): new. It scans mailto URL and
1487           returns newly allocated parameters.
1488
1489 2002-09-25
1490
1491         * src/account.c: account_read_config_all(): set account information
1492           to default before initializing with configuration file.
1493         * src/prefs_account.[ch]: prefs_account_new(): new. It returns a
1494           newly created account information structure initialized by
1495           the default settings.
1496
1497 2002-09-24
1498
1499         * src/addr_compl.c:
1500           replace_address_in_edit(): check if newtext is NULL.
1501           completion_window_button_press(): fixed a memory leak.
1502         * src/pop.c: LOOKUP_NEXT_MSG(): don't expire messages whose
1503           recv_time is RECV_TIME_KEEP.
1504           pop3_getrange_uidl_recv(): only set get_all flag if
1505           ac_prefs->getall is set.
1506           pop3_retr_recv(): don't delete messages which are not received
1507           by filter, and set recv_time to RECV_TIME_KEEP in the case.
1508         * src/pop.h: added an enum RecvTime.
1509         * src/inc.c: inc_drop_message(): unlink temporary message file if
1510           not received by filter.
1511
1512 2002-09-20
1513
1514         * src/mainwindow.c: added 'Edit/Select thread' menu.
1515         * src/summaryview.[ch]: added 'Select thread' to the context menu.
1516           summary_select_thread(): new. It selects all messages of current
1517           thread.
1518
1519 2002-09-19
1520
1521         * src/rfc2015.c: check_signature(): corrected error handling and
1522           fixed memory leak.
1523
1524 2002-09-19
1525
1526         * src/rfc2015.c: check_signature(): correctly remove the last empty
1527           line, and canonicalize the file part before verifying (this should
1528           fix incompatibility with Evolution or some other MUAs).
1529         * src/utils.[ch]: copy_file_part(): new. It copies the specified
1530           range of file stream to another file.
1531
1532 2002-09-19
1533
1534         * src/compose.c: compose_write_to_file(): force BASE64 encoding for
1535           8-bit text when signing (thanks to Colin Leroy).
1536
1537 2002-09-16
1538
1539         * src/prefs_common.c: prefs_send_create(): fixed the charset string
1540           for Cyrillic (Windows-1251).
1541
1542 2002-09-15
1543
1544         * version 0.8.3
1545
1546 2002-09-15
1547
1548         * src/codeconv.c: changed the charset for ru_RU.CP1251 to
1549           Windows-1251. Added bg_BG locale.
1550
1551 2002-09-11
1552
1553         * src/compose.c: account_activated(): change the state of menu items
1554           and entries according to the selected account.
1555           compose_select_account(): new. It changes the state of title bar,
1556           menu items and entries.
1557
1558 2002-09-11
1559
1560         * src/inc.c: inc_mail(): correct new_msgs when inc_spool() returned
1561           by error.
1562           Don't refresh summary view on fetching when open_inbox_on_inc is
1563           set.
1564
1565 2002-09-10
1566
1567         * src/summaryview.c: summary_show(): refresh even if open_inbox_on_inc
1568           is set (to avoid summary refresh problem).
1569         * src/imap.c: removed warnings by checking the existence of directory
1570           before calling remove*_numbered_files().
1571
1572 2002-09-06
1573
1574         * src/prefs_common.c: corrected English.
1575
1576 2002-09-06
1577
1578         * src/prefs_common.[ch]: added an option: "Mark messages as read
1579           only when opened in new window".
1580
1581 2002-09-04
1582
1583         * src/folder.c:
1584           folder_tree_destroy()
1585           folder_write_list_recursive(): added sanity check.
1586         * src/imap.c: imap_scan_tree(): if folder->node is NULL and
1587           can't get session, create empty folder node (based on the
1588           Alfons' suggestion).
1589
1590 2002-09-03
1591
1592         * src/textview.c: textview_key_pressed(): pass GDK_Delete event to
1593           SummaryView.
1594         * src/summaryview.c: summary_key_pressed(): scroll correct TextView
1595           on MIME mode.
1596
1597 2002-09-02
1598
1599         * src/news.c: news_scan_group(): fixed wrong message number
1600           calculation.
1601
1602 2002-08-30
1603
1604         * major refactoring for POP3.
1605         * src/inc.[ch]: moved Pop3State, inc_pop3_state_new(),
1606           inc_pop3_state_destroy(), inc_get_uidl_table(), and
1607           inc_write_uidl_list() into pop.c.
1608           Moved Pop3State::folder_table and Pop3State::inc_state into
1609           IncSession.
1610           inc_start()
1611           inc_put_error(): added lockbusy state.
1612           inc_pop3_session_do(): obtain inc_state from Pop3State::error_val.
1613           inc_cancel(): don't terminate the automaton here but just set
1614           the flags to prevent crash.
1615         * src/pop.[ch]
1616           pop3_getauth_pass_recv()
1617           pop3_getauth_apop_recv(): check lockbusy state.
1618           pop3_retr_recv(): check Pop3State::cancelled flag.
1619         * src/automaton.[ch]: added 'cancelled' flag to Automaton.
1620           automaton_input_cb(): terminate if cancelled flag is true.
1621         * sylpheed.desktop: changed Type=Internet to Type=Application.
1622           Added Categories=Application;Network;.
1623
1624 2002-08-29
1625
1626         * src/inc.[ch]
1627           src/pop.c
1628           src/progressdialog.c: show detailed information to the status
1629           column.
1630           Added cur_total_recv_bytes to Pop3State.
1631         * src/prefs_common.[ch]: added an option to specify whether to
1632           close receive dialog when finished.
1633
1634 2002-08-28
1635
1636         * src/folder.[ch]: folder_get_path(): new. It returns the root path
1637           of Folder.
1638         * src/imap.c
1639           src/news.c
1640           imap_folder_destroy()
1641           imap_remove_msg()
1642           imap_remove_all_msg()
1643           news_folder_destroy(): remove cache directories / files when
1644           deleting Folder / messages.
1645         * src/utils.c:
1646           file_exist()
1647           is_dir_exist()
1648           is_file_entry_exist(): check if the argument is NULL.
1649           remove_all_files()
1650           remove_numbered_files()
1651           remove_expired_files(): fixed memory leaks on error.
1652
1653 2002-08-28
1654
1655         * src/folder.[ch]
1656           src/imap.[ch]
1657           src/mh.[ch]
1658           src/news.[ch]
1659           src/session.[ch]
1660           src/smtp.[ch]: made Folder and Session destructor virtual method.
1661
1662 2002-08-27
1663
1664         * src/compose.c: do joining of normal lines only when auto-wrapping.
1665         * src/main.c: modified the warning message for GnuPG.
1666         * src/about.c: about_create(): modified the compiled-in features
1667           list.
1668         * configure.in: improved LDAP library checking (thanks to Alfons).
1669
1670 2002-08-26
1671
1672         * version 0.8.2
1673
1674 2002-08-26
1675
1676         * src/compose.c:
1677           join_next_line()
1678           compose_wrap_line_all(): backed out the change to join lines that
1679           are not indented.
1680         * NEWS
1681           TODO
1682           TODO.jp: updated.
1683         * configure.in: require at least gpgme-0.3.5.
1684
1685 2002-08-23
1686
1687         * src/alertpanel.c: alertpanel_create(): minor modification.
1688         * modified NEWS.
1689
1690 2002-08-23
1691
1692         * updated NEWS.
1693
1694 2002-08-23
1695
1696         * src/alertpanel.c: alertpanel_create(): modified the layout.
1697         * src/rfc2015.c: check_signature(): don't abort on error.
1698
1699 2002-08-22
1700
1701         * src/compose.c: compose_wrap_line_all(): freeze widget only if
1702           required to repress flickers.
1703
1704 2002-08-21
1705
1706         * src/compose.c: improved line wrapping.
1707           join_next_line()
1708           compose_wrap_line_all(): also join lines that are not indented.
1709           dump_text(): handle multi-byte strings correctly.
1710
1711 2002-08-21
1712
1713         * src/compose.c: compose_wrap_line_all(): fix for auto-wrapping
1714           (go to next line when space is entered at line limit).
1715
1716 2002-08-19
1717
1718         * src/inc.c: inc_get_uidl_table(): fixed a memory leak reported by
1719           Martin Kluge.
1720
1721 2002-08-16
1722
1723         * src/mh.c: mh_scan_tree_recursive(): disabled Maildir folder
1724           checking to prevent confusion.
1725
1726 2002-08-16
1727
1728         * src/folder.[ch]: folder_item_get_msg_list(): added a wrapper for
1729           method Folder::get_msg_list().
1730         * src/account.c: account_edit_prefs(), account_delete(): use
1731           folderview_set_all() instead of folderview_rescan_all().
1732         * src/folderview.[ch]:
1733           folderview_check_new_all(): new. Updates all folders.
1734           folderview_rescan_tree(): confirm before executing.
1735           folderview_rescan_all(): commented out since it's not used anymore.
1736           folderview_update_item_foreach(): added a flag for summary update.
1737         * src/inc.c: inc_finished(): update summary only when
1738           prefs_common.scan_all_after_inc is set.
1739           inc_drop_message(): set mtime of target folder to 0 to force
1740           the updating of summary.
1741           inc_start(), get_spool(): update also summary when updating
1742           folder view.
1743         * src/mainwindow.c: changed 'File - Rescan folder tree' to
1744           'File - Check for new messages in all folders'.
1745
1746 2002-08-09
1747
1748         * src/compose.c: compose_write_to_file(): clearsign message body
1749           if specified.
1750           compose_clearsign_text(): new. Replaces the string with clearsigned
1751           one.
1752         * src/prefs_account.c: added an option for clearsign.
1753         * src/rfc2015.c: rfc2015_clearsign(): new.
1754           pgp_sign(): added a flag for clearsign.
1755         * src/utils.[ch]: get_tmp_file(): return newly allocated unique file
1756           name (needs to be freed by caller).
1757           str_write_to_file(), file_read_to_str(): new.
1758
1759 2002-08-08
1760
1761         * src/procmsg.c: procmsg_read_mark_file(): check key duplication
1762           to avoid memory leak.
1763
1764 2002-08-08
1765
1766         * src/base64.c: include string.h for memcpy().
1767         * src/gtksctree.c: use macro ABS() instead of function abs().
1768         * src/prefs_account.c
1769           src/prefs_common.c: renamed 'send' to 'p_send' so as not to
1770           conflict with the function send() in sys/socket.h.
1771         * src/mainwindow.c: commented out the unnecessary functions.
1772         * src/utils.c: canonicalize_file_replace(): correct warning message.
1773
1774 2002-08-08
1775
1776         * src/utils.[ch]: get_tmp_file(): new. Returns the directory for
1777           temporary files in ~/.sylpheed/.
1778         * src/main.c: create temporary directory in ~/.sylpheed/.
1779         * src/compose.c
1780           src/inc.c: create temporary files in ~/.sylpheed/, and modified
1781           the file name.
1782           compose_exec_ext_editor(): fixed a bug that failed to create the
1783           temporary file if g_get_tmp_dir() returned directory other than
1784           '/tmp'.
1785
1786 2002-08-08
1787
1788         * src/utils.c: copy_file(): check if dest_bak != NULL when unlinking.
1789
1790 2002-08-08
1791
1792         * src/utils.[ch]: canonicalize_file_replace(): fixed a bug that fails
1793           to replace the file when the given file and temporary file are not
1794           on the same filesystem.
1795           copy_file(): added a flag whether to keep backup.
1796           move_file(): added a flag whether to overwrite the destination file.
1797
1798 2002-08-07
1799
1800         * src/socket.[ch]: fixed the linking failure when IPv6 is enabled.
1801         * src/select-keys.c: modified key selection dialog.
1802
1803 2002-08-07
1804
1805         * src/socket.[ch]: my_gethostbyname(): new.
1806         * src/utils.c: get_domain_name(): return FQDN instead of short
1807           hostname (thanks to Bob Woodside).
1808         * src/template.c: made the debug messages less verbose.
1809
1810 2002-08-06
1811
1812         * src/prefs_common.[ch]: removed obsolete default sign key setting.
1813         * src/utils.c: canonicalize_file(): correct the error check of
1814           fwrite().
1815
1816 2002-08-06
1817
1818         * src/compose.c: compose_write_to_file():
1819           canonicalize line endings before encrypting/signing (this will fix
1820           interoperability with other MUAs).
1821           Removed unnecessary strdup.
1822           Don't encrypt/sign draft message.
1823         * src/utils.[ch]:
1824           canonicalize_file(), canonicalize_file_replace(): new.
1825         * src/passphrase.c
1826           src/select-keys.c: changed g_message() to debug_print() and
1827           g_warning().
1828         * src/mimeview.c: mimeview_check_signature(): removed unnecessary
1829           MIME structure scanning.
1830         * src/textview.c: textview_add_part(): show signature status in
1831           TextView.
1832         * src/rfc2015.c
1833           src/sigstatus.c: modified translatable strings and some MIME
1834           headers.
1835
1836 2002-08-06
1837
1838         * src/procmsg.c: procmsg_save_to_outbox(): don't forget to remove
1839           the temporary file when saving from queue.
1840 2002-08-05
1841
1842         * src/compose.c
1843           src/passphrase.[ch]
1844           src/rfc2015.[ch]
1845           src/prefs_account.[ch]
1846           src/prefs_common.[ch]: merged GnuPG stuff from the claws branch.
1847           Modified some messages.
1848
1849 2002-08-05
1850
1851         * src/textview.c: textview_scan_header(): fixed a memory leak
1852           (thanks to Alfons).
1853
1854 2002-08-04
1855
1856         * src/prefs_actions.c: execute_actions(): put create_io_dialog()
1857           in right conditional block.
1858
1859 2002-08-01
1860
1861         * src/compose.c: compose_wrap_line_all(): fixed character buffer
1862           initialization.
1863         * src/utils.c:
1864           log_print()
1865           log_message()
1866           log_warning()
1867           log_error(): add time stamp to log messages.
1868
1869 2002-07-31
1870
1871         * src/socket.c:
1872           corrected a typo (HAVE_SYS_SELECT -> HAVE_SYS_SELECT_H)
1873
1874 2002-07-31
1875
1876         * src/socket.c: implemented socket I/O timeout.
1877           fd_recv(): new.
1878         * src/pop.c: check errors and return error value correctly.
1879
1880 2002-07-31
1881
1882         * src/prefs_actions.c: made the action's input/output dialog display
1883           without delay. Made the dialog modal instead of making window
1884           insensitive. Also cleaned up its UI.
1885
1886 2002-07-29
1887
1888         * implemented --attach command line option.
1889         * src/main.c:
1890           Cmd::attach_files: new member to store file paths.
1891           parse_cmd_opt(): added --attach option. --compose option is implied.
1892           prohibit_duplicate_launch()
1893           lock_socket_input_cb(): added "compose_attach" message.
1894         * src/compose.c
1895           src/mainwindow.c
1896           src/textview.c: renamed compose_new_with_recipient() to
1897           compose_new(), and added an argument for attachment files.
1898
1899 2002-07-29
1900
1901         * src/logwindow.c: freeze GtkText widget while hidden.
1902           log_window_append(): changed the header for message and warning.
1903
1904 2002-07-26
1905
1906         * src/news.c: implement automatic cache expiration.
1907           news_delete_expired_caches(): new.
1908           news_get_article_list(): fixed a bug that nonexistent messages
1909           were not removed from list.
1910         * src/procmsg.[ch]: procmsg_get_last_num_in_msg_list(): renamed
1911           procmsg_get_last_num_in_cache().
1912         * src/utils.[ch]: remove_expired_files(): new.
1913
1914 2002-07-26
1915
1916         * src/inc.c:
1917           inc_mail(): force summary refresh when using external command for
1918           incorporation.
1919           inc_all_account_mail(): fixed a bug on spool checking failure.
1920
1921 2002-07-25
1922
1923         * version 0.8.1
1924
1925 2002-07-24
1926
1927         * src/addressbook.c
1928           src/editaddress.c
1929           src/editgroup.c
1930           src/editldap_basedn.c
1931           src/importldif.c
1932           src/prefs_common.c: fixed memory leaks which didn't free strings
1933           gtk_editable_get_chars() returned. And minor code cleanups.
1934         * src/importldif.h
1935           src/vcard.h: removed C++-style comments.
1936
1937 2002-07-23
1938
1939         * src/codeconv.c: conv_encode_header(): fixed a problem in encoding
1940           strings which include both multi-byte and us-ascii characters.
1941
1942 2002-07-23
1943
1944         * src/utils.c: remove_numbered_files(): don't try to unlink()
1945           directories.
1946         * src/codeconv.c:
1947           conv_get_code_conv_func(): return conv_anytodisp() if charset is
1948           not specified.
1949           conv_unmime_header_overwrite()
1950           conv_unmime_header(): do conv_anytodisp() before decoding header.
1951
1952 2002-07-14
1953
1954         * version 0.8.0
1955
1956 2002-07-14
1957
1958         * src/compose.c: added 'Tools/Actions' menu.
1959
1960 2002-07-12
1961
1962         * src/base64.c: a minor fix for BASE64VAL() macro.
1963
1964 2002-07-11
1965
1966         * src/base64.c: base64_decode(): fixed a buffer overrun bug.
1967
1968 2002-07-11
1969
1970         * src/codeconv.c
1971           src/compose.c
1972           src/smtp.c
1973           src/unmime.c
1974           src/base64.[ch]: rewrote the BASE64 encode / decode routines.
1975           base64_encode(), base64_decode(): new.
1976         * src/rfc822.[ch]: removed.
1977         * COPYING
1978           src/about.c: removed the copyright notice for fetchmail.
1979
1980 2002-07-10
1981
1982         * src/codeconv.c
1983           src/procmime.c
1984           src/unmime.[ch]: rewrote the MIME decode routines.
1985           unmime_header()
1986           unmime_quoted_printable_line(): new.
1987         * src/procheader.c:
1988           procheader_get_one_field()
1989           procheader_get_unfolded_line(): remove also CR.
1990
1991 2002-07-08
1992
1993         * libkcc: removed from the source tree.
1994         * COPYING
1995           src/about.c: removed the copyright notice for libkcc.
1996         * src/codeconv.c: conv_guess_encoding(): check for ASCII code first
1997           for speedup.
1998         * src/prefs_actions.c: removed unnecessary spaces/tabs.
1999
2000 2002-07-05
2001
2002         * src/prefs_actions.c: comply with the coding style.
2003           Modified the UI design.
2004         * src/mainwindow.c: main_window_set_menu_sensitive(): enable Actions
2005           menu when multiple messages are selected.
2006
2007 2002-07-05
2008
2009         * src/prefs_actions.[ch]: merged the 'Actions' feature from claws.
2010           update_actions_menu(): simplified the menu deletion.
2011         * src/mainwindow.c: added 'Actions' menu to Tools and Configuration.
2012
2013 2002-07-04
2014
2015         * src/codeconv.[ch]: implemented conv_jistoeuc(), conv_euctojis(),
2016           conv_sjistoeuc(), and conv_guess_encoding(). Removed the dependency
2017           to libkcc.
2018
2019 2002-07-04
2020
2021         * configure.in: added check for strchr.
2022
2023 2002-07-02
2024
2025         * src/prefs_common.[ch]
2026           src/inc.c: added an option to inhibit receive error dialog.
2027
2028 2002-07-01
2029
2030         * src/account.c: account_find_from_address(): support multiple
2031           addresses in header.
2032
2033 2002-06-28
2034
2035         * src/gtksctree.[ch]: changed GtkSCTree::anchor_row from gint to
2036           GtkCTreeNode* so that it won't become invalid after the row move.
2037           Removed dependency to gtkutils.c.
2038         * src/prefs_common.[ch]
2039           src/summaryview.c: summary_selected(): added an option to show
2040           message when cursor keys are pressed on summary view.
2041
2042 2002-06-28
2043
2044         * configure.in
2045           src/Makefile.am
2046           src/compose.c: changed "host_alias" to "target_alias" so that it
2047           shows the correct system name on cross-compiling (thanks to
2048           Patrice Mandin).
2049
2050 2002-06-27
2051
2052         * src/prefs_account.[ch]: added the option menu to force an
2053           authentication method for SMTP AUTH.
2054         * src/send.c
2055           src/smtp.[ch]: smtp_from(), smtp_auth(): added an argument to
2056           specify the authentication method for SMTP AUTH.
2057           smtp_ehlo(): allow AUTH responses that don't comply with the RFC.
2058
2059 2002-06-25
2060
2061         * src/prefs_common.[ch]
2062           src/compose.c: enabled "Wrap on input".
2063
2064 2002-06-25
2065
2066         * src/summaryview.[ch]
2067           src/mainwindow.c: added "Go to/{Prev,Next} new message" menu.
2068           Made some code cleanups.
2069
2070 2002-06-20
2071
2072         * src/folderview.c
2073           src/prefs_common.[ch]: added the hidden option to specify the
2074           policy of the vertical scrollbar on folder view.
2075
2076 2002-06-19
2077
2078         * src/messageview.[ch]:
2079           messageview_copy_clipboard(): fixed a bug that couldn't copy text
2080           on MIME mode.
2081           messageview_get_current_textview(): new.
2082           messageview_get_text_widget(): removed.
2083         * src/quote_fmt_parse.y: quote message even if msginfo is empty.
2084         * src/compose.[ch]: implemented the "Paste as quotation" feature.
2085           text_inserted(): new callback for "insert_text" signal.
2086           Add quote mark to the pasted text if Compose::paste_as_quotation
2087           is TRUE.
2088
2089 2002-06-19
2090
2091         * src/compose.c: if the Content-Type of a file is text/*, check
2092           its content and set the optimal Content-Transfer-Encoding (thanks
2093           to Yoichi Yuasa).
2094
2095 2002-06-18
2096
2097         * src/textview.c: textview_key_pressed(): pass key press event to
2098           main window to activate menu shortcuts (thanks to Alfons).
2099
2100 2002-06-18
2101
2102         * src/folder.c: folder_build_tree(): use strtoul() instead of atoi()
2103           for mtime to prevent flooring.
2104         * src/imap.c:
2105           imap_move_msg()
2106           imap_move_msgs_with_dest()
2107           imap_copy_msgs_with_dest(): fixed a bug that prevented multiple
2108           message copy/move.
2109           imap_parse_envelope()
2110           imap_cmd_envelope(): use RFC822.HEADER instead of ENVELOPE to get
2111           full information of messages and simplify the parser. Also fixed
2112           the bug that References header was ignored on threading.
2113           imap_parse_one_address()
2114           imap_parse_address(): removed.
2115           imap_get_header(): new. It reads the RFC822 header and returns
2116           a newly allocated string.
2117         * src/procheader.[ch]: changed procheader_parse() to
2118           procheader_parse_stream() and added different interfaces for it.
2119
2120 2002-06-17
2121
2122         * po/zh_TW.Big5.po: fixed a mistake that caused a crash.
2123
2124 2002-06-15
2125
2126         * version 0.7.8
2127
2128 2002-06-13
2129
2130         * src/inc.c: inc_get_uidl_table(): fixed a bug that garbage time
2131           could be inserted into the hash table.
2132           inc_write_uidl_list(): a minor code cleanup.
2133         * src/mainwindow.c: main_window_get_current_state():
2134           make the state unexecutable on an empty folder.
2135         * src/summaryview.c: summary_sort(): don't sort on an empty folder.
2136         * src/pop.c: minor code cleanups.
2137
2138 2002-06-12
2139
2140         * src/prefs_account.c: CREATE_RADIO_BUTTONS(): fixed a typo and
2141           corrected the behavior of the radio buttons.
2142
2143 2002-06-11
2144
2145         * implemented 'Delete messages after N days' feature for POP3.
2146         * src/inc.[ch]:
2147           inc_get_uidl_table()
2148           inc_write_uidl_list(): moved the location of UIDL list file from
2149           RC_DIR/uidl-* to RC_DIR/uidl/*.
2150           Added received time for each UIDLs.
2151           src/main.c: main(): create RC_DIR/uidl/ directory.
2152           src/pop.[ch]: LOOKUP_NEXT_MSG(): delete expired messages here.
2153           Added recv_time to Pop3MsgInfo.
2154           src/prefs_account.[ch]: added an option for the number of days for
2155           leaving messages.
2156
2157 2002-06-09
2158
2159         * version 0.7.7
2160
2161 2002-06-07
2162
2163         * src/folder.c: folder_set_missing_folders(): fixed a bug that
2164           caused multiplication of special folders on startup if their
2165           types were changed.
2166         * src/folderview.c: folderview_remove_mailbox_cb(): modified the
2167           label.
2168
2169 2002-06-04
2170
2171         * src/compose.c: compose_reply(), compose_forward(): reverted the
2172           last change since it causes lockup problem.
2173
2174 2002-06-04
2175
2176         * src/compose.c: compose_reply(), compose_forward(): don't autowrap
2177           the signature part.
2178           compose_new_with_recipient(): workaround for initial XIM problem.
2179
2180 2002-06-04
2181
2182         * src/mainwindow.c: sort ascending / descending order can be
2183           specified with separated menu items.
2184           Added "View/Sort/Don't sort" menu item.
2185         * src/summaryview.[ch]: summary_sort(): added an argument for
2186           sort type.
2187
2188 2002-05-31
2189
2190         * implemented persistent sort order.
2191         * src/folder.[ch]:
2192           folder_build_tree(): read 'sort_key' and 'sort_type' attributes.
2193           folder_write_list_recursive(): write sorting state.
2194           src/mainwindow.c
2195           src/summaryview.[ch]: summary_show(): sort if required.
2196           select the top node on descending sort.
2197           Removed SummarySortType and sorting state variables from
2198           SummaryView.
2199
2200 2002-05-30
2201
2202         * src/account.c
2203           src/news.[ch]
2204           src/nntp.[ch]
2205           src/prefs_account.[ch]: enabled NNTP over SSL.
2206         * src/nntp.c: nntp_group(): issue MODE READER command and retry
2207           when GROUP command once failed (this seems to avoid problems on
2208           some broken news servers).
2209
2210 2002-05-30
2211
2212         * faq/it/*.html: corrected DOS linebreaks.
2213         * faq/*/*.html: changed ">" to &quot;.
2214
2215 2002-05-29
2216
2217         * src/prefs_account.c: prefs_account_protocol_activated(): hide
2218           unnecessary frames in SSL tab.
2219
2220 2002-05-29
2221
2222         * src/pop.[ch]
2223           src/inc.c
2224           src/prefs_account.[ch]: enabled STLS command in POP3.
2225         * src/account.c: account_clist_set_row(): display TLS setting.
2226
2227 2002-05-28
2228
2229         * src/compose.c: compose_send_later_cb(): support redirect function.
2230         * src/imap.[ch]
2231           src/ssl.h
2232           src/prefs_account.[ch]: enabled STARTTLS command in IMAP4.
2233         * src/send.c
2234           src/smtp.[ch]: use SSLType instead of SSLSMTPType.
2235
2236 2002-05-28
2237
2238         * src/utils.[ch]: make_dir(): wrapper for mkdir() and chmod().
2239         * src/compose.c: compose_create(): removed unrequired lines.
2240
2241 2002-05-27
2242
2243         * src/news.c: news_scan_group(): fixed a bug that set the wrong
2244           values in some cases.
2245         * src/prefs_account.c: corrected English in Advanced - Folder
2246           settings.
2247
2248 2002-05-23
2249
2250         * src/textview.c: textview_show_message(), textview_show_part():
2251           fixed a bug that GtkSText *text pointed the incorrect object.
2252           textview_add_part(): freeze GtkSText while adding RFC822 headers.
2253           textview_show_part(): fixed a bug that couldn't display single
2254           part MIME message as text.
2255
2256 2002-05-22
2257
2258         * src/compose.c: compose_redirect_write_to_file(): correct the target
2259           for change_file_mode_rw(). Check if fclose() succeeded. Unlink
2260           incomplete file when an error occured.
2261
2262 2002-05-22
2263
2264         * src/compose.c:
2265           compose_create(): disable menus for draft on redirection mode.
2266           compose_redirect_write_to_file(): correct the error handling of
2267           fwrite().
2268         * src/prefs_common.c: turned off the "Display recipient on `From'
2269           column if sender is yourself" option by default.
2270
2271 2002-05-21
2272
2273         * src/compose.[ch]: implemented 'Redirect' (aka Bounce) feature.
2274           Based on the implementation of the claws branch.
2275           compose_redirect(): create a new window and make it uneditable.
2276           compose_redirect_write_to_file(): copy headers and body of
2277           original message except for some.
2278           compose_redirect_write_headers(): add extra "Resent-*" headers.
2279           compose_create(): set menu sensitivity for redirection mode.
2280
2281 2002-05-20
2282
2283         * src/codeconv.c: conv_encode_header(): fixed a bug that unnecessary
2284           space is inserted between encoded string and the following folded
2285           one (thanks to Masahiro Tomita).
2286
2287 2002-05-19
2288
2289         * src/mainwindow.[ch]: some refactoring has been made.
2290           main_window_toggle_message_view(): moved summary_toggle_view_real()
2291           here.
2292         * src/messageview.[ch]: messageview_is_visible(): new.
2293         * src/summary_search.c
2294           src/summaryview.[ch]: SummaryView::msg_is_toggled_on: removed.
2295           Instead use messageview_is_visible().
2296
2297 2002-05-17
2298
2299         * src/mainwindow.c: added 'Expand/Collapse all threads' menu.
2300         * src/summaryview.[ch]:
2301           summary_expand_threads(), summary_collapse_threads(): new.
2302
2303 2002-05-17
2304
2305         * src/mainwindow.c: Fixed the behavior of
2306           '/View/Show or hide/Folder tree' and
2307           '/View/Show or hide/Message view' toggle menu.
2308           Removed '/View/Toggle summary view' menu and integrated the
2309           function into '/View/Show or hide/Message view'.
2310           main_window_set_widgets(): change the state of toggle menu items.
2311         * src/prefs_common.c: prefs_keybind_apply_clicked(): updated menurc
2312           strings.
2313
2314 2002-05-16
2315
2316         * src/mimeview.c: mimeview_set_multipart_tree(): show single part
2317           MIME contents other than text as children of message/rfc822 part.
2318         * src/procmime.c:
2319           procmime_mimeinfo_next(): modified for message/rfc822 part which
2320           content-type is single part MIME.
2321           procmime_scan_multipart_message(): fix for nested message/rfc822
2322           part. Corrected the size of the contents of message/rfc822.
2323         * src/textview.c: textview_show_part(): extract the contents of
2324           multipart/* and message/rfc822. Some code cleanups.
2325           textview_add_parts(): new. It adds the all parts under a part to
2326           textview.
2327           textview_clear(): reset body_pos and cur_pos.
2328
2329 2002-05-16
2330
2331         * src/addr_compl.c: modified so that it behaves better.
2332           get_address_from_edit(): ignore comma inside of brackets.
2333           completion_window_apply_selection(): new. Only apply the current
2334           clist selection.
2335           completion_window_accept_selection(): removed.
2336           address_completion_complete_address_in_entry(): minor code cleanup.
2337           don't replace address in entry here.
2338           completion_window_select_row(): always apply clist selection to
2339           entry.
2340           completion_window_key_press(): don't apply selection here.
2341
2342 2002-05-15
2343
2344         * src/imap.c: imap_create_folder(): keep trailing directory separator
2345           to create a folder that contains sub folder.
2346
2347 2002-05-14
2348
2349         * src/foldersel.c: sort tree with case insensitive.
2350         * src/mainwindow.c: allsel_cb()
2351           src/messageview.c: messageview_select_all(): fixed 'Select all'
2352           on MIME view.
2353         * src/mainwindow.c: removed common and account prefs button from
2354           the toolbar.
2355
2356 2002-05-13
2357
2358         * src/compose.c: compose_account_option_menu_create(): check if
2359           ac->name is NULL.
2360
2361 2002-05-12
2362
2363         * version 0.7.6
2364
2365 2002-05-12
2366
2367         * manual/ja/*: updated the Japanese manual (thanks to Yoichi Imai).
2368           manual/en/*: updated the English manual.
2369         * faq/de/*
2370           faq/it/*: added German and Italian FAQ.
2371         * faq/en/*
2372           faq/es/*
2373           faq/fr/*: updated FAQs.
2374         * src/manual.[ch]
2375           src/mainwindow.c: added German and Italian language.
2376
2377 2002-05-11
2378
2379         * src/prefs_account.c: turn off "receive at get all" option by default
2380           when creating an IMAP or News account.
2381
2382 2002-05-11
2383
2384         * src/imap.c: imap_scan_tree(): don't use namespace for prefix.
2385         * src/prefs_folder_item.c: show also identifier path.
2386           Made layout using table. Show uneditable entry using background
2387           color of window.
2388         * src/procmime.c: procmime_get_tmp_file_name(): generate safe
2389           file name.
2390
2391 2002-05-11
2392
2393         * src/automaton.[ch]: added UI callback to Automaton.
2394         * src/inc.c
2395           src/pop.c: use callback instead of calling inc_progress_update()
2396           directly.
2397           pop3_getrange_uidl_recv(): don't fall back to LAST when 'get all'
2398           option is set.
2399
2400 2002-05-10
2401
2402         * src/folderview.c: properly sort abbreviated newsgroups.
2403
2404 2002-05-10
2405
2406         * src/folderview.c
2407           src/prefs_common.[ch]
2408           src/summaryview.c: added an option to specify the minimum length
2409           for abbreviated newsgroups name.
2410
2411 2002-05-09
2412
2413         * src/folderview.c: folderview_check_new(): skip unselectable folders.
2414         * src/summaryview.c: added 'Create filter rule' to the context menu.
2415         * src/imap.c: some code cleanups.
2416           imap_scan_tree_recursive(): get path separator for each calls.
2417           imap_get_path_separator(): new.
2418
2419 2002-05-08
2420
2421         * src/imap.[ch]: supported namespace for others/shared folders
2422           (in progress).
2423           imap_parse_namespace(): parse also others/shared namespace.
2424           imap_find_namespace(): search also others/shared namespace.
2425         * src/utils.[ch]:
2426           strchr_parenthesis_close(): return pointer to closing parenthesis.
2427           strsplit_parenthesis(): split parenthetic list into array of
2428           strings.
2429
2430 2002-05-08
2431
2432         * src/procheader.c: procheader_date_parse(): fixed a bug that didn't
2433           parse date string like "Mon,6 May 2002 20:31:12 +0800".
2434           procheader_scan_date_string(): new. Separated string scanning
2435           part from procheader_date_parse().
2436
2437 2002-05-07
2438
2439         * src/summary_search.c: summary_search_execute(): unlock while
2440           selecting summary row (thanks to Martin Schaaf).
2441         * src/summaryview.c: summary_set_column_titles(): reversed the
2442           direction of the arrow so that it matches with Win/Mac style.
2443
2444 2002-05-02
2445
2446         * src/compose.c: compose_write_headers(): quote self address name
2447           if required. Some code cleanups. Don't override Newsgroups and
2448           Cc with custom headers.
2449         * src/imap.c: imap_add_msg(): return UID for appended message.
2450         * src/compose.c: compose_queue(): check if queue folder exists.
2451         * src/imap.c: QUOTE_IF_REQUIRED(): quote also other IMAP special
2452           characters.
2453           imap_open(): removed an unrequired argument.
2454
2455 2002-04-25
2456
2457         * src/utils.[ch]: trim_string(): new. It trim characters longer than
2458           the specified length and adds "...".
2459         * src/folderview.c: trim folder name when displaying dialog.
2460
2461 2002-04-23
2462
2463         * src/imap.c: imap_create_folder(): don't add prefix for root INBOX
2464           folder.
2465         * src/folderview.c: folderview_select()
2466           src/summary_search.c: summary_search_execute(): lock summary view
2467           while searching (thanks to Martin Schaaf).
2468
2469 2002-04-21
2470
2471         * version 0.7.5
2472
2473 2002-04-21
2474
2475         * sylpheed*.png: added new app icons by WAKAI Kazunao (thanks!).
2476
2477 2002-04-21
2478
2479         * src/summaryview.c: summary_show(): fixed a bug that didn't process
2480           the left marks.
2481         * src/account.c: account_edit_prefs(): fixed a crash bug when account
2482           name was empty.
2483         * src/prefs_account.c: prefs_account_apply(): display error dialog
2484           if account name is empty.
2485         * src/imap.c: changed some log_print() to debug_print() to reduce
2486           the amount of log.
2487
2488 2002-04-21
2489
2490         * src/mh.c: mh_get_new_msg_filename(): new. It returns the filename
2491           for new message.
2492           mh_add_msg()
2493           mh_do_move()
2494           mh_do_move_msgs_with_dest()
2495           mh_copy_msg()
2496           mh_copy_msgs_with_dest(): use mh_get_new_msg_filename().
2497         * src/utils.[ch]: added is_file_entry_exist() which returns TRUE
2498           if stat() succeeded.
2499         * src/imap.c:
2500           imap_fetch_msg(): SELECT mailbox before FETCH if required.
2501           imap_scan_folder(): set last_num using the value of UIDNEXT.
2502           imap_select(): return immediately if there is no need for SELECT.
2503           preserve the path of currently selected mailbox.
2504           imap_status(): added UIDNEXT.
2505
2506 2002-04-20
2507
2508         * src/folder.c: folder_item_scan(): removed the warning.
2509         * src/inputdialog.[ch]: input_dialog_combo(): added an argument for
2510           setting case sensitivity.
2511
2512 2002-04-17
2513
2514         * src/mainwindow.c: main_window_create(): restrict the minimum size.
2515
2516 2002-04-17
2517
2518         * src/compose.c: merged the new line-wrapping routine.
2519           join_next_line(): fixed a bug that didn't join multibyte
2520           characters.
2521           get_indent_length(): modified enums and variable names.
2522           INDENT_CHARS: don't indent ':'.
2523         * src/folderview.c:
2524           folderview_rename_folder_cb()
2525           folderview_delete_folder_cb(): support folder identifier.
2526           folderview_rm_imap_folder_cb(): integrated with
2527           folderview_delete_folder_cb().
2528
2529 2002-04-15
2530
2531         * src/folder.[ch]: folder_item_scan(): return -1 if scanning failed.
2532         * src/folderview.c: folderview_check_new(): abort checking if
2533           folder_item_scan() failed.
2534
2535 2002-04-15
2536
2537         * src/imap.c: imap_create_missing_folders(): create only INBOX and
2538           Trash.
2539         * src/prefs_folder_item.c: prefs_folder_item_set_dialog(): made the
2540           type of news folders unchangeable.
2541           prefs_folder_item_destroy(): use prefs_dialog_destroy().
2542         * src/prefs.[ch]: prefs_dialog_destroy(): new.
2543
2544 2002-04-15
2545
2546         * src/prefs_account.[ch]: added special folder setting to Advanced
2547           tab. Also moved "IMAP server directory" setting to there.
2548         * src/account.[ch]: account_get_special_folder(): new. It returns
2549           the optimal special folder for accounts.
2550         * src/compose.c: use account_get_special_folder().
2551         * src/prefs_folder_item.[ch]: new. Implemented folder property
2552           dialog, and the special folder settings (most of the functions in
2553           claws are not integrated yet, and the structure is slightly
2554           modified).
2555         * src/folderview.c: enabled Property menu.
2556
2557 2002-04-14
2558
2559         * src/textview.c: IS_RFC822_CHAR(): make email parser also stop
2560           scanning when encountering separators ',' and ';'.
2561
2562 2002-04-12
2563
2564         * src/mainwindow.c: reorderd the menu a bit.
2565         * src/compose.c: made 'Ctrl-Enter' ignore some modifiers.
2566           compose_reply_set_entry(): made 'Reply to sender' work for
2567           newsgroups.
2568
2569 2002-04-11
2570
2571         * src/compose.c: compose_create(): set geometry hints to restrict
2572           the maximum size of window.
2573         * src/imap.c: imap_parse_list(): don't mark INBOX as \Noselect.
2574           imap_get_uncached_messages()
2575           imap_cmd_fetch(): ignore responses which don't include FETCH.
2576
2577 2002-04-11
2578
2579         * COPYING: re-licensed (removal of "NO-VIRUS CLAUSE" and addition of
2580           the clause for OpenSSL).
2581
2582 2002-04-09
2583
2584         * src/prefs_account.c
2585           src/smtp.[ch]: fixed a bug that didn't complie with OpenSSL enabled.
2586
2587 2002-04-09
2588
2589         * src/smtp.[ch]
2590           src/send.c
2591           src/session.[ch]: first reorganization of SMTP protocol handling.
2592           SMTPSession: new class which is a sub class of Session.
2593           smtp_session_new(): moved send_smtp_open() into this function.
2594           smtp_from(): moved SMTP AUTH calls into smtp_auth().
2595           smtp_auth(): use server response for SMTP AUTH method.
2596           smtp_ehlo(): read server response and set auth type flags.
2597           smtp_helo(): separated EHLO command.
2598           smtp_ok(): return the last server response if the buffer is
2599           specified.
2600         * src/esmtp.[ch]: merged into smtp.[ch].
2601         * src/imap.c: imap_session_destroy_all(): use session_destroy().
2602
2603 2002-04-08
2604
2605         * src/imap.c: imap_open(): show warning message if IMAP4 session
2606           can't be established.
2607
2608 2002-04-06
2609
2610         * src/compose.c: made template able to be inserted into the current
2611           cursor position.
2612         * src/mainwindow.c: moved some menu items under the submenu
2613           '/View/Show or hide'.
2614
2615 2002-04-05
2616
2617         * src/filter.c
2618           src/inc.c: changed folder_find_item_from_path() to
2619           folder_find_item_from_identifier().
2620           src/prefs_account.c
2621           src/prefs_filter.c: use folder_item_get_identifier() to specify
2622           folder path.
2623
2624 2002-04-05
2625
2626         * src/folder.[ch]: implemented "folder identifier" (and fixed a bug
2627           existed in claws' implementation).
2628           folder_find_from_name(): find Folder from name and type.
2629           folder_get_identifier(): return Folder id.
2630           folder_item_get_identifier(): return FolderItem id.
2631           folder_find_item_from_identifier(): find FolderItem from id.
2632           folder_get_type_string(): return folder type string.
2633           folder_get_type_from_string(): return FolderType from string
2634           (and fixed the wrong g_strcasecmp() usage).
2635         * src/export.c
2636           src/import.c: use folder_item_get_identifier() and
2637           folder_find_item_from_identifier().
2638
2639 2002-04-03
2640
2641         * src/imap.c: imap_parse_atom(): fixed a bug that cur_pos didn't
2642           point the correct address after reading the continuous line.
2643           imap_scan_folder(): set new number to 0 if unseen number is 0.
2644           imap_parse_flags(): don't add new and unread flag if \Seen flag
2645           exists.
2646         * ac/Makefile.am: removed gpgme.m4 from MACROS.
2647
2648 2002-04-02
2649
2650         * fixed the old problem that couldn't add flags to currently opened
2651           folders.
2652         * src/compose.c:
2653           compose_send(): update outbox after saving.
2654           compose_queue()
2655           compose_draft_cb(): use procmsg_add_flags().
2656         * src/folder.[ch]: added "opened" flag and "mark_queue" list to
2657           FolderItem.
2658         * src/main.c: send_queue(): send from all queue folders.
2659         * src/mainwindow.c: send_queue_cb(): send from all queue folders.
2660         * src/procmsg.[ch]:
2661           procmsg_flush_mark_queue(): new. Write all queued flags into file.
2662           procmsg_add_flags(): new. Add specified flags to the folder.
2663           procmsg_send_queue(): added an argument to specify queue folder.
2664           procmsg_save_to_outbox(): use procmsg_add_flags().
2665         * src/summaryview.c:
2666           summary_show(): up the opened flag of FolderItem.
2667           summary_clear_list(): down the opened flag of FolderItem.
2668           summary_write_cache(): call procmsg_flush_mark_queue().
2669
2670 2002-04-01
2671
2672         * src/summaryview.[ch]: trim the tail of folder name and selected
2673           number on the status label if the space is not enough.
2674
2675 2002-04-01
2676
2677         * src/imap.c: imap_create_special_folder(): fixed a bug that didn't
2678           set SpecialFolderItemType when creating special folders under
2679           INBOX.
2680         * ac/gpgme.m4: removed.
2681         * ac/README: added.
2682         * ac/missing/gdk-pixbuf.m4
2683           ac/missing/gettext.m4
2684           ac/missing/gpgme.m4
2685           ac/missing/imlib.m4: added for convenience.
2686
2687 2002-03-29
2688
2689         * src/esmtp.c: esmtp_auth(): fixed a bug that some garbages are
2690           shown after the decoded challenge string. Fixed a memory leak.
2691           Removed strtok().
2692         * src/compose.c: compose_draft_cb(): mark draft messages as read.
2693         * src/folderview.c: folderview_update_node(): disable emphasis
2694           for Outbox and Draft folders.
2695
2696 2002-03-28
2697
2698         * src/messageview.c: messageview_show(): fixed a memory leak.
2699         * src/summaryview.c: summary_save_as(): show error dialog if copy
2700           failed.
2701         * src/about.c: about_show(): make the window active if it is already
2702           open.
2703
2704 2002-03-27
2705
2706         * src/compose.c: show confirmation dialog before sending if Subject
2707           is empty.
2708           compose_check_entries(): new.
2709           compose_send()
2710           compose_send_later_cb(): use compose_check_entries().
2711         * src/imap.c: imap_parse_atom(): more fix for parsing responses.
2712
2713 2002-03-26
2714
2715         * src/imap.c: imap_parse_atom(): fixed a bug that didn't parse the
2716           responses with continuous line correctly, and fixed a memory leak.
2717
2718 2002-03-26
2719
2720         * src/undo.c: undo_insert_text_cb(): fixed a crash bug if the text
2721           length is large.
2722         * src/gtkstext.c: gtk_stext_button_press(): cancel current selection
2723           after pasting with middle button to prevent the selection growth.
2724
2725 2002-03-25
2726
2727         * src/folderview.c:
2728           folderview_rename_folder_cb()
2729           folderview_delete_folder_cb(): modify filter rules only if the
2730           target folder is in the default mailbox.
2731         * src/utils.c: get_abbrev_newsgroup_name(): removed a redundant
2732           line.
2733
2734 2002-03-23
2735
2736         * src/compose.c
2737           src/mainwindow.c
2738           src/prefs_common.c: changed 'Tool' menu to 'Tools'.
2739           Moved 'Delete duplicated messages' under 'Tools'.
2740
2741 2002-03-23
2742
2743         * src/folderview.c: SET_SPECIAL_FOLDER(): keep the same parent
2744           when moving.
2745         * src/imap.c: imap_create_special_folder(): fixed a crash bug
2746           when folder creation failed, and re-try to create folders under
2747           INBOX.
2748           imap_scan_tree_recursive(): don't automatically add namespace
2749           prefix if it's INBOX. Search also under the INBOX for special
2750           folders.
2751         * src/foldersel.c: SET_SPECIAL_FOLDER(): keep the same parent
2752           when moving.
2753
2754 2002-03-23
2755
2756         * src/utils.[ch]: get_abbrev_newsgroup_name(): new. It returns the
2757           abbreviated newsgroup name.
2758         * src/folderview.c: folderview_update_node(): display newsgroups
2759           with abbreviated name if name and path is the same.
2760         * src/summaryview.c: summary_status_show(): show the newsgroup with
2761           abbreviated name.
2762
2763 2002-03-23
2764
2765         * src/foldersel.c
2766           src/folderview.c: changed the label 'Draft' to 'Drafts'.
2767         * src/imap.c: changed the directory name 'Draft' to 'Drafts'.
2768           imap_create_missing_folders(): fixed the wrong assignment of
2769           Queue folder to draft.
2770
2771 2002-03-22
2772
2773         * enabled Sent / Draft / Queue folders on IMAP server.
2774         * src/compose.c: compose_queue(), compose_draft_cb(): use account's
2775           queue and draft folder if they exist.
2776           src/imap.[ch]:
2777           imap_create_trash(): removed.
2778           imap_create_special_folder(): new. Generalized imap_create_trash().
2779           imap_create_missing_folders(): automatically create missing folders.
2780           imap_is_msg_changed(): added the dummy method.
2781           imap_scan_tree_recursive(): search also Sent, Draft and Queue
2782           folders. Minor code cleanups.
2783           imap_parse_envelope(): check for null strings.
2784           src/procmsg.c: procmsg_read_cache(): add F_QUEUE or F_DRAFT flag
2785           for messages on IMAP folder.
2786
2787 2002-03-20
2788
2789         * src/compose.c: compose_send(): use account's outbox folder
2790           if it exists.
2791         * src/procmsg.[ch]: procmsg_save_to_outbox(): changed the API so
2792           that the outbox can be specified.
2793
2794 2002-03-20
2795
2796         * src/compose.c: don't save to outbox when messages are queued.
2797           compose_save_to_outbox(): moved to procmsg.c.
2798         * src/procmsg.[ch]: procmsg_send_queue(): save to outbox when
2799           sending succeeded.
2800           procmsg_save_to_outbox(): new. Removes the queueing headers if
2801           needed, and adds the given file to the outbox.
2802
2803 2002-03-20
2804
2805         * src/compose.c: compose_wrap_line(): treat '|' also as quote char.
2806           get_indent_length(): treat ':' and '#' also as quote char, and
2807           cleaned up using strchr().
2808
2809 2002-03-19
2810
2811         * src/mainwindow.c: modified some menu items.
2812
2813 2002-03-19
2814
2815         * src/defs.h: changed OUTBOX_DIR from "outbox" to "sent"
2816           (current "outbox" will be kept until rescan).
2817         * src/folder.c: folder_set_missing_folders(): create the missing
2818           folders.
2819         * src/foldersel.c
2820           src/folderview.c: changed 'Outbox' to 'Sent'.
2821         * src/main.c: call folder_set_missing_folders().
2822         * src/mh.c: mh_scan_tree(): create missing folders.
2823         * src/summaryview.c: summary_set_menu_sensitive(): fixed a bug that
2824           didn't set the menu sensitivity correctly.
2825
2826 2002-03-18
2827
2828         * src/folderview.c
2829           src/imap.[ch]: implemented folder renaming on IMAP (thanks to Mio).
2830           folderview_rename_folder_cb(): reopen the current folder when
2831           the ancestor is renamed.
2832           imap_rename_folder(): new method implementation.
2833           imap_cmd_rename()
2834           imap_rename_folder_func(): new.
2835           imap_remove_folder(): remove also the cache directory.
2836
2837 2002-03-17
2838
2839         * src/imap.c: implemented locale encoding <-> modified utf-7
2840           conversion, and supported i18n of folder name (thanks to Suzuki
2841           Mio).
2842           imap_path_separator_subst(): handle the escape characters of
2843           modified utf-7.
2844           imap_modified_utf7_to_locale()
2845           imap_locale_to_modified_utf7(): new.
2846           imap_create_trash(): modified so that it create the Trash folder
2847           to the correct location when imap directory is specified.
2848           imap_get_real_path(): removed debug print.
2849
2850 2002-03-14
2851
2852         * src/socket.c: implemented timeout for DNS lookup and connect().
2853           sock_connect_by_hostname(): timeout support and code cleanup.
2854           sock_connect_with_timeout(): new.
2855           sock_peek(): implemented SSL peek.
2856
2857 2002-03-13
2858
2859         * src/messageview.c: messageview_show(): display single-part
2860           text/html messages with the normal text view.
2861         * src/account.c
2862           src/addrbook.c
2863           src/addrindex.c
2864           src/compose.c
2865           src/imap.c
2866           src/inc.c
2867           src/jpilot.c
2868           src/ldif.c
2869           src/mbox.c
2870           src/mimeview.c
2871           src/news.c
2872           src/prefs.c
2873           src/prefs_common.c
2874           src/prefs_customheader.c
2875           src/prefs_display_header.c
2876           src/prefs_filter.c
2877           src/procheader.c
2878           src/procmime.c
2879           src/procmsg.c
2880           src/recv.c
2881           src/rfc2015.c
2882           src/send.c
2883           src/sourcewindow.c
2884           src/summaryview.c
2885           src/template.c
2886           src/textview.c
2887           src/unmime.c
2888           src/utils.c
2889           src/vcard.c
2890           src/xml.c: added 'b' to the option of all fopen().
2891
2892 2002-03-09
2893
2894         * version 0.7.4
2895
2896 2002-03-09
2897
2898         * src/ssl.[ch]: match its coding style.
2899         * src/compose.c: compose_send_later_cb(): fixed a bug that failed
2900           to save file.
2901         * faq/Makefile.am
2902           faq/en/Makefile.am
2903           faq/en/sylpheed-faq*.html
2904           faq/es/Makefile.am
2905           faq/es/sylpheed-faq*.html
2906           faq/fr/Makefile.am
2907           faq/fr/sylpheed-faq*.html
2908           configure.in
2909           Makefile.am
2910           src/Makefile.am
2911           src/defs.h
2912           src/mainwindow.c
2913           src/manual.[ch]: added FAQs in English, Spanish and French.
2914
2915 2002-03-07
2916
2917         * manual/en/sylpheed*.html: updated to the latest version.
2918         * libkcc/jis.c
2919           src/addrcache.c
2920           src/addritem.c
2921           src/ldif.c
2922           src/mgutils.c: include string.h to remove warning about strlen()
2923           etc.
2924         * src/folder.c
2925           src/folderview.c
2926           src/inc.c
2927           src/logwindow.c
2928           src/mainwindow.c
2929           src/mimeview.c
2930           src/prefs.c
2931           src/prefs_common.c
2932           src/procheader.c
2933           src/send.c
2934           src/session.c
2935           src/sigstatus.c
2936           src/summaryview.c: added break to the last label of switch to
2937           prevent the 'deprecated use of label at end of compound statement'
2938           warning at gcc-3.0.
2939         * src/rfc2015.c: passphrase_cb(): fixed the type of r_hd.
2940
2941 2002-03-06
2942
2943         * src/inc.[ch]: preserve the pointer to IncProgressDialog to the
2944           static list.
2945           inc_cancel_all(): new. It cancels the all current incorporation.
2946         * src/mainwindow.c: added 'Cancel receiving' menu.
2947         * src/textview.c: a minor fix for single-part MIME messages, and
2948           a bit of cleanup for textview_write_body().
2949
2950 2002-03-05
2951
2952         * src/inc.c: inc_write_uidl_list(): fixed a bug that lost UIDL
2953           information if any errors occured before issuing UIDL command.
2954           src/inc.h: added uidl_is_valid to Pop3State.
2955           src/pop.c: set uidl_is_valid to TRUE if UIDL becomes valid.
2956
2957 2002-03-03
2958
2959         * version 0.7.3
2960
2961 2002-03-03
2962
2963         * src/mimeview.c: mimeview_create(): set the initial notebook page
2964           to 0.
2965         * src/folderview.c: folderview_selected(): scroll the view if the
2966           selected row is hidden.
2967         * src/prefs_filter.c: prefs_filter_register_cb(): scroll the view
2968           and select the added row.
2969         * src/summaryview.c: fix threading for null message ids.
2970
2971 2002-03-02
2972
2973         * src/textview.c: textview_show_message(): follow message/rfc822
2974           parts.
2975           textview_add_part(): add a caption before the attached text files.
2976           textview_show_header(): don't add the newline.
2977         * src/messageview.c: enabled message search also in MIME mode.
2978
2979 2002-03-01
2980
2981         * src/messageview.c: messageview_show(): set header state of
2982           MimeView's TextView, too.
2983         * src/mimeview.c: mimeview_show_message(): call
2984           textview_show_message() to display message.
2985         * src/textview.c: textview_add_part(): new. It adds the content
2986           of message part without clearing the view.
2987           textview_show_message(): display all parts with appropriate
2988           style.
2989           textview_write_body(): separated from textview_show_part().
2990
2991 2002-02-28
2992
2993         * src/mainwindow.c
2994           src/prefs_common.c: added ISO-8859-15 to the codesets for
2995           displaying and sending.
2996         * src/codeconv.c: conv_codeset_strdup(): return NULL if code
2997           conversion failed, and made caller deal with it.
2998         * src/compose.c: compose_write_to_file(): show error dialog when
2999           code conversion failed, and let user select whether to send it
3000           as is or not.
3001         * src/textview.c: textview_write_line(): show the original string
3002           if code conversion failed.
3003
3004 2002-02-27
3005
3006         * src/inc.c: get_spool(): fixed a bug that failed to unlock mbox
3007           if copy_mbox() failed (thanks to Alexander Kabaev).
3008         * src/prefs_account.[ch]: added separate user ID / password setting
3009           for SMTP AUTH.
3010         * src/send.c: send_message_smtp(): use separate user ID / password
3011           for SMTP AUTH if it is specified.
3012
3013 2002-02-26
3014
3015         * src/inc.[ch]
3016           src/pop.[ch]: refactored the UIDL management.
3017           store the information of messages into the array of Pop3MsgInfo
3018           structure, and do full scanning of not retrieved messages.
3019
3020 2002-02-26
3021
3022         * src/filesel.c
3023           src/foldersel.c
3024           src/mainwindow.c: set WMCLASS for window/dialog.
3025         * src/codeconv.c: conv_codeset_strdup(): return source string
3026           when jconv_alloc_conv() failed.
3027
3028 2002-02-25
3029
3030         * src/mh.c: mh_scan_tree_recursive(): changed the hardcoded directory
3031           name to the macros.
3032
3033 2002-02-24
3034
3035         * src/messageview.c
3036           src/mimeview.[ch]
3037           src/summaryview.c: implemented the new notebook tab interface for
3038           MIME message.
3039         * src/textview.[ch]: fixed line space related glitches.
3040
3041 2002-02-23
3042
3043         * src/prefs_filter.c:
3044           prefs_filter_rename_path()
3045           prefs_filter_delete_path(): fixed a crash when flt->dest was NULL.
3046
3047 2002-02-23
3048
3049         * src/recv.[ch]: cancel data receiving if RecvUIFunc returns FALSE.
3050         * src/pop.c: pop3_retr_recv(): fixed false 'No space' when cancelled
3051           while getting data.
3052         * src/inc.c: inc_pop3_recv_func(): abort data receiving when
3053           cancelled, and fixed potential crash bug.
3054         * src/grouplistdialog.c: enabled cancelling of data receiving.
3055         * src/news.c: news_get_group_list(): destroy current session if
3056           retrieving failed.
3057
3058 2002-02-22
3059
3060         * src/manage_window.[ch]: fixed a bug that caused crash when
3061           the main window was hidden.
3062           MANAGE_WINDOW_SIGNALS_CONNECT(): new macro.
3063           Monitor "unmap_event", "destroy" events.
3064         * src/account.c;
3065           src/addressbook.c
3066           src/compose.c
3067           src/export.c
3068           src/filesel.c
3069           src/foldersel.c
3070           src/grouplistdialog.c
3071           src/import.c
3072           src/inputdialog.c
3073           src/mainwindow.c
3074           src/message_search.c
3075           src/passphrase.c
3076           src/prefs_account.c
3077           src/prefs_common.c
3078           src/prefs_customheader.c
3079           src/prefs_display_header.c
3080           src/prefs_filter.c
3081           src/prefs_template.c
3082           src/summary_search.c
3083           src/summaryview.c: use MANAGE_WINDOW_SIGNALS_CONNECT() macro to
3084           connect signals for window management.
3085
3086 2002-02-21
3087
3088         * src/prefs_account.[ch]: added receive size limit option.
3089         * src/pop.c: skip messages larger than the limit size.
3090           LOOKUP_NEXT_MSG(): new macro.
3091         * src/compose.c: compose_attach_append(): check whether the file
3092           is readable.
3093
3094 2002-02-21
3095
3096         * src/rfc2015.c: commented out dump_mimeinfo() and dump_part().
3097           changed g_message()'s to debug_print() and g_warning().
3098           rfc2015_decrypt_message(): fixed a bug that duplicated message
3099           parts when decryption was failed/cancelled. And made some code
3100           cleanup.
3101         * src/passphrase.c: made the dialog transient.
3102         * src/prefs.c: prefs_config_parse_one_line(): removed debug_print().
3103
3104 2002-02-20
3105
3106         * src/messageview.c
3107           src/procmsg.[ch]: fixed a bug that failed to parse multipart
3108           messages if GPGME was enabled.
3109         * src/rfc2015.c: commented out copy_gpgmedata_to_temp() which
3110           is not used.
3111         * src/prefs_account.c: prefs_account_privacy_create(): modified
3112           the vertical spacing.
3113
3114 2002-02-19
3115
3116         * src/menu.[ch]: menu_set_sensitive_all(): new.
3117           menu_set_insensitive_all(): made it a wrapper for
3118           menu_set_sensitive_all().
3119         * src/prefs_account.c:
3120           prefs_account_open()
3121           prefs_account_protocol_set_optmenu(): made the protocol type
3122           unchangeable after creating an account.
3123         * src/compose.c: compose_attach_parts(): traverse MIME tree to
3124           extract all attathed files from nested multipart MIME message.
3125
3126 2002-02-19
3127
3128         * src/procmsg.[ch]: procmsg_get_mark_sum(): added arguments to
3129           obtain minimum/maximum number, and to specify first number
3130           limit.
3131         * src/folderview.c
3132           src/inc.c: enabled new message checking on news folder.
3133         * src/news.c: news_scan_group(): implemented. Guess new/unread
3134           message number from the response of GROUP command and the mark
3135           data.
3136           news_select_group(): return the total/first/last number.
3137         * src/prefs_account.c: prefs_account_receive_create(): modified
3138           the text of the 'Get all' check button.
3139
3140 2002-02-18
3141
3142         * src/account.c: made 'Get all' checkbox available for IMAP4 and
3143           NNTP accounts.
3144         * src/inc.c: corrected the argument of folderview_check_new().
3145         * src/prefs_account.c: modification for the "`Get all' checks for
3146           new mail on this account" checkbox.
3147
3148 2002-02-18
3149
3150         * src/folderview.[ch]:
3151           folderview_rescan_tree(), folderview_rescan_all(): renamed from
3152           folderview_update_tree() and folderview_update_all().
3153           folderview_update_all_node(): removed.
3154           folderview_check_new(): new. If the argument is NULL, it checks
3155           all local folders. If the arguments is specified, it checks
3156           the (local and remote) folder.
3157         * src/inc.c:
3158           inc_account_mail()
3159           inc_all_account_mail(): check also IMAP4 account.
3160
3161 2002-02-18
3162
3163         * src/folderview.c:
3164           folderview_rename_folder_cb()
3165           folderview_delete_folder_cb(): modify the filter rules when folder
3166           is renamed/deleted.
3167         * src/prefs_filter.[ch]:
3168           prefs_filter_rename_path(): new. It renames the destination paths
3169           in the filter list.
3170           prefs_filter_delete_path(): new. It deletes the filter rules if
3171           the destination paths matched.
3172         * thanks to Neill Miller for above.
3173
3174 2002-02-17
3175
3176         * src/compose.c: inherit attached files when forwarding or reediting
3177           (rewrote the code in claws branch).
3178           compose_attach_parts(): new. It extracts and attaches the files
3179           in the given message.
3180           compose_attach_append(): chnaged the types of arguments.
3181         * src/messageview.c: messageview_show(): moved the GPG decryption
3182           code to procmsg.c.
3183         * src/procmsg.[ch]: procmsg_open_message_decrypted(): new.
3184
3185 2002-02-16
3186
3187         * version 0.7.2
3188
3189 2002-02-16
3190
3191         * src/summary_search(): summary_search_execute(): scroll the view
3192           when message view is hidden.
3193
3194 2002-02-15
3195
3196         * src/foldersel.c: foldersel_set_tree(): made different type of
3197           folders selectable in moving mode.
3198         * src/folderview.[ch]: folderview_update_msg_num(): compare the
3199           numbers with the CTree's labels, and don't update folder_item here.
3200         * src/imap.c: imap_move_msg(), imap_move_msgs_with_dest():
3201           implemented moving between different type of folders.
3202         * src/mh.c: SET_DEST_MSG_FLAGS(): new macro.
3203           mh_do_move(), mh_do_move_msgs_with_dest(): new (renamed previous
3204           mh_move_msg() and mh_move_msgs_with_dest()).
3205           mh_move_msg(), mh_move_msgs_with_dest(): implemented message
3206           moving between different type of folders.
3207           mh_copy_msg(), mh_copy_msgs_with_dest(): some code cleanups.
3208         * src/summaryview.c: summary_status_show(): update folder_item
3209           here.
3210         * po/POTFILES.in: removed reference to headerwindow.c.
3211         * src/summaryview.c: summary_step(): fixed the behavior on the
3212           head and tail of the list.
3213
3214 2002-02-15
3215
3216         * src/mainwindow.c: main_window_set_menu_sensitive(): set 'Show
3217           all header' toggle state from the property of the TextView.
3218         * src/summaryview.[ch]: made 'All header' toggle switch.
3219           Prohibited unnecessary menu update.
3220           summary_select_node(): added the argument 'do_refresh'.
3221           Some code cleanups.
3222
3223 2002-02-14
3224
3225         * src/utils.c: strsplit_with_quote(): remove quotation characters
3226           in the function (fix composer's external editor problem) (thanks
3227           to Stefaan A Eeckels).
3228         * src/mainwindow.[ch]: made 'Show all header' toggle switch.
3229           main_window_menu_callback_block()
3230           main_window_menu_callback_unblock(): new.
3231           main_window_set_menu_sensitive(): set the toggle status of
3232           menu items.
3233           show_all_header_cb(): read the status of toggle menu item.
3234         * src/mainwindow.[ch]: made 'Thread view' toggle switch.
3235         * src/prefs_common.c: prefs_keybind_apply_clicked(): removed
3236           'Unthread view'.
3237
3238 2002-02-13
3239
3240         * src/imap.c: imap_add_msg(): fixed a bug that didn't replace
3241           the path separator (thanks to Sergey Vlasov).
3242         * src/gtkutils.c: gtkut_editable_get_selection(): return NULL
3243           if the length of selection is zero.
3244           Fixed the assertion.
3245         * src/utils.c: str_open_as_stream(): return immediately if
3246           the length of str is zero.
3247         * src/headerwindow.[ch]: removed.
3248         * src/socket.[ch]
3249           src/inc.c: removed stale thread support codes.
3250
3251 2002-02-12
3252
3253         * src/procmsg.c: procmsg_open_message(): modified so that it
3254           returns the stream of decrypted message file if it exists
3255           (this fixes the failure of gpg decryption in messageview.c).
3256
3257 2002-02-11
3258
3259         * version 0.7.1
3260
3261 2002-02-11
3262
3263         * src/compose.[ch]
3264           src/gtkutils.[ch]
3265           src/prefs_template.c
3266           src/quote_fmt.h
3267           src/quote_fmt_parse.y
3268           src/summaryview.c
3269           src/utils.[ch]: if the part of the message text is selected, use
3270           it for quoted text instead of the entire message body (thanks to
3271           Darko Koruga).
3272           src/utils.[ch]: str_open_as_stream(): new. It returns an
3273           temporary stream for the given string.
3274         * src/main.c: added "--send" command line option.
3275         * src/compose.c: compose_reply_set_entry(): add From address to
3276           Cc if Reply-To and to_all are both specified.
3277         * Makefile.am: correct the Source: line in the RPM spec file in
3278           .tar.bz2 package.
3279
3280 2002-02-07
3281
3282         * src/procmsg.c: procmsg_open_message(): fetch message if the cache
3283           doesn't exist.
3284         * src/foldersel.[ch]: foldersel_folder_sel(): added an argument
3285           that specifies the folder selection type.
3286         * src/addressbook.c
3287           src/compose.c
3288           src/editaddress.c
3289           src/editgroup.c
3290           src/folderview.c
3291           src/importldif.c
3292           src/mainwindow.c
3293           src/md5.c
3294           src/mimeview.c
3295           src/prefs_common.c
3296           src/prefs_customheader.c
3297           src/prefs_filter.c
3298           src/summaryview.c: made it compile with C compilers other than gcc
3299           (thanks to Shawn Houston).
3300
3301 2002-02-06
3302
3303         * src/imap.c: imap_copy_msgs_with_dest(): fixed a bug on traversing
3304           list.
3305         * src/prefs_common.c: made the key binding setting separate dialog.
3306         * src/addressbook.c: addressbook_format_address(): add "" around
3307           the display name if it contains comma (thanks to Satoshi Watanabe).
3308         * src/addr_compl.c: get_complete_address(): add "" around the
3309           display name if it contains comma.
3310           get_address_from_edit(): handle the quotation character correctly.
3311         * src/addr_compl.c: get_complete_address()
3312           src/addressbook.c: addressbook_format_address(): fixed a bug that
3313           caused wrong text processing if the display name is empty.
3314         * updated NEWS.
3315
3316 2002-02-05
3317
3318         * src/compose.c: compose_exec_ext_editor_real(): replaced
3319           g_strsplit() with strsplit_with_quote().
3320         * src/foldersel.c
3321           src/folderview.c: folderview_drag_motion_cb(): minor code cleanups.
3322         * src/folderview.c:
3323           folderview_drag_motion_cb()
3324           folderview_drag_received_cb(): allow dropping into IMAP4 folder.
3325         * src/utils.c: get_file_size_as_crlf(): use fgets() instead of
3326           fread().
3327         * src/imap.c
3328           imap_copy_msg()
3329           imap_copy_msgs_with_dest(): use imap_add_msg() if the source
3330           of the message is different from the current mailbox.
3331           Return the correct value.
3332           imap_cmd_append(): properly implemented the APPEND command.
3333
3334 2002-02-04
3335
3336         * src/mainwindow.c
3337           src/messageview.[ch]
3338           src/summaryview.[ch]
3339           src/textview.[ch]: show all headers in the message view, and don't
3340           use the header window anymore.
3341         * src/mainwindow.c
3342           src/prefs_common.c: changed the default shortcut of 'compose new
3343           message'.
3344         * src/mainwindow.c
3345           src/summaryview.[ch]: summary_display_msg_selected(): new.
3346           Show the selected message if 'Show all header' is selected.
3347         * src/mh.c
3348           src/sourcewindow.c: changed some procmsg_get_message_file_path()
3349           to procmsg_get_message_file() to be sure the message is
3350           retrieved.
3351         * src/folderview.c: folderview_drag_motion_cb(): allow DnD from
3352           any folder to MH folder.
3353           folderview_drag_received_cb(): copy messages instead of moving
3354           if the source folder is news or IMAP.
3355         * src/mainwindow.c
3356           src/summaryview.c: allow copy from news folder.
3357
3358 2002-02-03
3359
3360         * src/prefs_common.c: prefs_other_create(): modified the design
3361           of the external command settings.
3362           prefs_keybind_apply_clicked(): made the Mew / Wanderlust keybind
3363           preset closer to the original.
3364           Added Mutt keybind preset.
3365           Also change the compose keybinds.
3366         * src/compose.c: modified some menu shortcuts.
3367         * src/codeconv.c: modified the locale_table for Thai encoding.
3368
3369 2002-02-01
3370
3371         * src/Makefile.am: added $(GPGME_CFLAGS) to INCLUDES.
3372         * src/prefs_common.c: prefs_interface_create(): modified the
3373           description for menu shortcut.
3374
3375 2002-01-31
3376
3377         * src/gtkutils.[ch]: added gtk_stext_clear().
3378         * src/compose.[ch]
3379           src/mainwindow.c
3380           src/summaryview.[ch]: enabled multiple forwarding.
3381         * src/summaryview.c:
3382           summary_set_marks_selected(): set marks for all selected row.
3383           summary_reply(): moved from summary_reply_cb().
3384         * compose.[ch]: compose_forward(): modified so that it receives
3385           the message list.
3386         * src/mainwindow.c: cleanup for reply processing.
3387         * src/summaryview.c: summary_reply(): fixed a memory leak.
3388           summary_key_pressed(): removed hardcoded mark / mark as unread
3389           shortcuts.
3390         * src/mainwindow.c
3391           src/prefs_common.c: added mark / mark as unread shortcuts to
3392           the menu.
3393
3394 2002-01-30
3395
3396         * src/compose.c: compose_wrap_line_all(): wrap quoted part even
3397           if prefs_common.linewrap_quote is not set (it is only for
3398           auto-wrapping on reply).
3399         * src/prefs_account.c: prefs_account_open(): initialize tmp_ac_prefs
3400           when creating a new account.
3401         * src/mh.c: mh_get_msg_list(): use also st_ctime to detect
3402           directory change.
3403         * src/prefs_common.c: prefs_interface_create(): modified the
3404           description of key binds selector.
3405
3406 2002-01-29
3407
3408         * src/mimeview.c: fixed multiple dialog / moving by correcting
3409           button / key event processing.
3410         * src/mimeview.[ch]
3411           src/textview.c: pass some key press events to MimeView in MIME
3412           mode.
3413         * src/prefs_filter.c: fixed a bug that didn't set the order of
3414           rules correctly.
3415         * src/prefs_common.c: prefs_keybind_apply_clicked(): fixed
3416           empty_menurc string.
3417
3418 2002-01-28
3419
3420         * src/mainwindow.c
3421           src/prefs_common.c: reorganized the menu shortcuts.
3422           Added 'View - Toggle summary view'.
3423         * src/summaryview.[ch]: summary_toggle_view(): made it public
3424           function.
3425         * src/prefs_common.[ch]: swapped the position of 'Shortcut key'
3426           and 'On exit'.
3427         * src/importldif.c: imp_ldif_delete_event(): fixed segfault when
3428           closing the dialog with window manager (in more appropriate way).
3429         * src/imageview.[ch]
3430           src/messageview.c
3431           src/mimeview.c: fixed wrong scrolling position when switching
3432           between text and image parts. Also free the unrequired image
3433           (thanks to Sergey Vlasov).
3434         * src/prefs_common.c: disabled 'Go to inbox after receiving new mail'
3435           by default.
3436
3437 2002-01-28
3438
3439         * src/prefs_common.c: implemented shortcut quick changer.
3440         * src/folderview.c: folderview_key_pressed()
3441           src/summaryview.c: summary_key_pressed(): removed some hardcoded
3442           key binds.
3443
3444 2002-01-25
3445
3446         * src/procmime.c:
3447           procmime_get_mime_type()
3448           procmime_get_mime_type_table(): made the MIME type search case
3449           insensitive.
3450         * src/gtkstext.c:
3451           gtk_stext_delete_line(): delete newline on empty line.
3452           gtk_stext_delete_to_line_end(): delete newline if cursor is on
3453           the last of line.
3454           (thanks to Yasuzaki Masayoshi.)
3455
3456 2002-01-23
3457
3458         * src/compose.c
3459           src/gtkstext.[ch]: removed the hardcoded shortcuts in GtkSText,
3460           and made them customizable.
3461         * src/utils.[ch]: added get_file_size_as_crlf() which returns
3462           the file size when converting LF to CR+LF.
3463
3464 2002-01-22
3465
3466         * src/compose.c: enabled 'Ctrl-Enter' or
3467           'Ctrl-(other modifier keys)-Enter' shortcut that didn't work
3468           before.
3469         * src/gtkstext.c: disabled some Emacs key bindings.
3470           gtk_stext_key_press(): don't extend selection when Shift-Enter
3471           is pressed to prevent the disapperance of cursor.
3472         * src/summaryview.c: summary_select_next_unread(): added the button
3473           to search unread message again from the beginning to the dialog.
3474         * src/folderview.c: folderview_key_pressed(): go to next unread
3475           folder if space key is pressed on the empty folder.
3476           Move CTree focus before selecting row.
3477
3478 2002-01-21
3479
3480         * src/defs.h: modified the XLFD of default fonts.
3481         * src/textview.c: textview_create(): fixed a bug that caused
3482           segfault if font couldn't be loaded.
3483         * src/folderview.c
3484           src/grouplistdialog.c: compare subscribed groups with path.
3485         * src/prefs_filter.c: changed 'Operator' to 'Condition'.
3486
3487 2002-01-20
3488
3489         * src/compose.c: compose_wrap_line_all(): fixed wrapping crash
3490           when URL is wider than wrapping margin.
3491         * src/mainwindow.c
3492           src/prefs_filter.[ch]
3493           src/summaryview.[ch]: added "Create filter rule" function based
3494           on the patch from Luca Rosellini.
3495         * src/summaryview.c: summary_filter_open(): added X-List and
3496           X-Mailing-list to the automatically detected headers.
3497
3498 2002-01-18
3499
3500         * configure.in: support Mac OS X (Darwin).
3501
3502 2002-01-16
3503
3504         * src/prefs_filter.c: use inc_(un)lock() instead of
3505           inc_autocheck_timer_{remove|set}().
3506         * src/summaryview.c: summary_sort(): use gtk_ctree_sort_recursive()
3507           instead of gtk_ctree_sort_node() so that messages within threads
3508           are also sorted.
3509         * src/procmsg.c: procmsg_read_mark_file(): fixed a bug that the
3510           target of sizeof was wrong and caused crash on Alpha architecture
3511           (thanks to Motonobu Ichimura).
3512
3513 2002-01-15
3514
3515         * src/foldersel.c:
3516           foldersel_gnode_func(): made the names of special folders
3517           translated strings.
3518           foldersel_set_tree(): move the special folder to the top.
3519         * src/inputdialog.[ch]: input_dialog_query_password(): new.
3520         * src/imap.c
3521           src/inc.c
3522           src/news.c
3523           src/send.c: use input_dialog_query_password() instead of their
3524           own query functions.
3525
3526 2002-01-14
3527
3528         * src/defs.h: modified the default font.
3529         * src/folder.[ch]
3530           src/mh.[ch]
3531           src/imap.[ch]
3532           src/news.[ch]: moved the class definition and some methods to
3533           the proper location.
3534
3535 2002-01-11
3536
3537         * src/mimeview.c: mimeview_save_as()
3538           src/summaryview.c: summary_save_as(): put the default filename
3539           based on the subject.
3540         * src/utils.[ch]: added subst_chars() and subst_for_filename()
3541           which substitute some special characters with underscore.
3542         * src/filesel.c: filesel_select_file(): select the default filename.
3543
3544 2002-01-10
3545
3546         * INSTALL
3547           INSTALL.jp: added the description and the URL for libjconv.
3548         * src/mainwindow.c: menu entries cleanup.
3549
3550 2002-01-09
3551
3552         * README
3553           README.jp
3554           src/about.c: modified the copyright year.
3555         * src/gtkstext.h: added the notice for modification by the Sylpheed
3556           Team.
3557
3558 2002-01-08
3559
3560         * INSTALL
3561           INSTALL.jp: added the URL for compface.
3562
3563 2002-01-07
3564
3565         * version 0.7.0
3566
3567 2002-01-07
3568
3569         * src/headerwindow.c
3570           src/logwindow.c
3571           src/messageview.c
3572           src/sourcewindow.c: set wmclass when creating windows.
3573
3574 2002-01-04
3575
3576         * src/compose.c: compose_wrap_line_all(): fixed the bug that
3577           caused infinite loop when wrapping certain patterns of quoted text.
3578
3579 2002-01-02
3580
3581         * src/imap.c: imap_parse_envelope(): put the assertion after
3582           imap_parse_address() to prevent segmentation fault.
3583
3584 2001-12-31
3585
3586         * src/folderview.c
3587           src/mainwindow.c: modified some labels of menu items.
3588         * src/ldif.c: put the return value of fgetc() in a gint.
3589         * src/importldif.c: don't brace null strings with _().
3590         * src/compose.c: moved the position of Subject entry to the last.
3591           Reorganized the menu.
3592           compose_draft_cb(): added 'keep editing after saving to draft'
3593           feature.
3594
3595 2001-12-30
3596
3597         * src/mainwindow.c: reorganization of main menu. Removed 'Summary'
3598           menu. Moved 'Help' menu to just the right of 'Configuration'.
3599           Removed 'File - Close' menu item.
3600
3601 2001-12-25
3602
3603         * src/mainwindow.c: some menu reorganization.
3604         * AUTHORS: updated. Added more contributors.
3605         * src/account.c: account_row_moved(): new. Moves displayed row to
3606           the appropriate position when up / down button are pressed.
3607           account_clist_set(): move displayed row to the appropriate position.
3608         * src/compose.c
3609           src/mainwindow.c: set title and wmclass when creating windows.
3610
3611 2001-12-24
3612
3613         * src/gtkstext.c: fixed a bug that didn't show block cursor
3614           correctly. Removed unnecessary GdkGC copy. Fixed cursor
3615           coordinate.
3616         * src/compose.c
3617           src/gtkutils.[ch]
3618           src/textview.[ch]
3619           src/undo.c: modified to use GtkSText.
3620         * src/menu.h: added #include <gtk/gtkmenu.h>.
3621
3622 2001-12-23
3623
3624         * acconfig.h
3625           configure.in: added XIM checking for GTK+.
3626         * src/gtkstext.[ch]: new. Copied GtkText in GTK+ and renamed.
3627
3628 2001-12-22
3629
3630         * src/filter.c: added #include <sys/types.h>.
3631
3632 2001-12-21
3633
3634         * src/template.c: template_write_config(): fixed a typo.
3635         * src/compose.c: toolbar_linewrap_cb(): call compose_wrap_line_all().
3636         * src/filter.[ch]
3637           src/prefs_filter.c: supported regular expression (thanks to
3638           Yukihiro Nakai).
3639         * src/undo.c: undo_paste_clipboard_cb(): fixed a bug that broke
3640           undo state when pasted clipboard was empty.
3641           undo_check_size(): use g_list_last().
3642           undo_undo()
3643           undo_redo(): fixed NULL checking and made a bit of optimization.
3644           Some code cleanups.
3645         * src/prefs_common.c: changed the default value of linewrap length
3646           to 72.
3647
3648 2001-12-20
3649
3650         * reorganization of pixmap management.
3651         * src/stock_pixmap.[ch]: new. This module manages all static pixmaps.
3652         * modified every files which directly use pixmaps data to use
3653           stock_pixmap_*().
3654         * src/undo.[ch]: renamed undo_set_undo_change_funct() to
3655           undo_set_change_state_func(), and changed its argument from
3656           GtkWidget* to gpointer.
3657           undo_merge(): code cleanup.
3658         * src/compose.c: renamed compose_set_undo() to
3659           compose_undo_state_changed().
3660
3661 2001-12-19
3662
3663         * src/account.c: account_find_from_address(): made it case
3664           insensitive.
3665         * src/addressbook.c: addressbook_create(): set wmclass.
3666         * src/compose.c: compose_insert_file(): supported DOS/Win/Mac line
3667           break.
3668         * src/importldif.c
3669           src/ldif.[ch]: merged from the claws branch.
3670         * src/importldif.c: removed some warnings.
3671           imp_ldif_field_list_toggle(): fixed button checking.
3672           imp_ldif_dialog_create(): minor layout fix.
3673         * src/ldif.c: removed some warnings.
3674         * INSTALL
3675           INSTALL.jp: updated confirmation list.
3676         * src/vcard.c:
3677           vcard_read_file()
3678           vcard_test_read_file(): fixed a memory leak of tagtemp.
3679           Some code cleanups (decreasing the indent level).
3680         * src/addrindex.c
3681           src/jpilot.[ch]
3682           src/syldap.[ch]: disabled runtime library checking because JPilot
3683           and LDAP libraries are linked on the build time, and the program
3684           doesn't execute without them anyway.
3685         * src/addressbook.c
3686           src/addrindex.c: changed "J-Pilot" to "JPilot".
3687           Removed warning for atoi().
3688
3689 2001-12-18
3690
3691         * src/procmsg.c: procmsg_empty_trash()
3692           src/mainwindow.c: main_window_empty_trash(): empty trash only if
3693           it contains some messages.
3694         * src/imap.c: search_array_str(): new.
3695           imap_status(): fixed a bug that didn't parse the command response
3696           correctly.
3697
3698 2001-12-18
3699
3700         * merged undo function (by Jens Oberender).
3701         * src/undo.[ch]: new.
3702           undo_insert_text_cb(): fix for multibyte characters (obtain the
3703           number of letters instead of bytes).
3704         * src/compose.[ch]: added the code for undo.
3705         * src/prefs_common.[ch]: added the interface for setting undo level.
3706
3707 2001-12-16
3708
3709         * src/compose.c: compose_template_apply()
3710           src/prefs_template.c: prefs_template_clist_set_row()
3711           src/template.c: template_write_config(): don't replace To: and
3712           Subject: entry in composition window if they are empty.
3713
3714 2001-12-16
3715
3716         * version 0.6.6
3717
3718 2001-12-15
3719
3720         * src/folderview.c: folderview_drag_motion_cb(): fixed a DnD bug.
3721         * src/ldif.c: ldif_get_line(): ignore CR.
3722         * src/mimeview.c: mimeview_show_message(): search also text/html
3723           for first text part.
3724
3725 2001-12-14
3726
3727         * src/prefs_account.c: prefs_account_save_config_all(): fixed a bug
3728           that didn't update accountrc if account_list == NULL (thanks to
3729           Watanabe).
3730
3731 2001-12-14
3732
3733         * src/utils.h: added the macro Xstrcat_a() that concatenates
3734           two strings and return alloca'd string.
3735         * src/imap.c: imap_scan_tree_recursive(): fixed a bug that didn't
3736           handle folder name which includes some spaces correctly
3737           (based on the patch from Willem van Engen (thanks!)).
3738         * src/compose.c: compose_wrap_line_all(): fixed the crash when
3739           wrapping long lines if linewrap quotation is disabled and
3740           a word spanning more than one line.
3741
3742 2001-12-14
3743
3744         * applied the Tobias' patch with modification (thanks!).
3745         * src/imap.[ch]:
3746           imap_msg_set_perm_flags()
3747           imap_msg_unset_perm_flags(): new. They set permanent flags to
3748           a IMAP message.
3749         * src/compose.c
3750           src/summaryview.c: set flags on IMAP server when flags are changed.
3751
3752 2001-12-11
3753
3754         * src/gtkutils.[ch]: gtkut_container_remove(): new. It's a wrapper
3755           of gtk_container_remove() for workaround of a bug in
3756           Gtk{Text,Entry} (thanks to Sergey Vlasov).
3757         * src/compose.c
3758           src/mainwindow.c
3759           src/messageview.c
3760           src/mimeview.c
3761           src/summaryview.c
3762           src/textview.c: replaced gtk_container_remove() with
3763           gtkut_container_remove(), and removed previous partial fix.
3764
3765 2001-12-09
3766
3767         * src/prefs_account.c: prefs_account_apply(): fixed a bug that
3768           checked user ID on "local", but didn't on IMAP4.
3769         * src/imap.c: imap_session_get(): fixed a crash bug when
3770           rfolder->session == NULL.
3771         * Makefile.am: changed the arguments of tar from 'chojf' to
3772           '--bzip2 -chof'.
3773         * src/summaryview.c: summary_toggle_view(): disclaim the selection
3774           of textview before removing vpaned.
3775
3776 2001-12-08
3777
3778         * src/messageview.c: messageview_change_view_type(): disclaim the
3779           selection before removing textview. This solves the mysterious
3780           copy-paste disability (thanks to Melvin Hadasht).
3781         * src/textview.c: textview_set_font(): use
3782           gtk_editable_claim_selection() instead of
3783           gtk_editable_select_region().
3784
3785 2001-12-06
3786
3787         * src/prefs_template.c: prefs_template_window_create(): supported
3788           address completion on the To: entry.
3789
3790 2001-12-04
3791
3792         * src/folder.c:
3793           folder_count_total_msgs()
3794           folder_count_total_msgs_func(): use g_node_traverse() to traverse
3795           GNode.
3796
3797 2001-12-03
3798
3799         * src/compose.c: fixed a bug that empty body was refused.
3800         * src/prefs_template.c: fixed a bug that didn't set To: entry
3801           correctly. Display error dialog if format is illegal.
3802         * src/prefs_common.c
3803           src/quote_fmt_lex.l
3804           src/quote_fmt_parse.y: changed parenthesis "( )" to curly braces
3805           "{ }" to prevent confusion on using parenthesis.
3806         * src/html.c: html_get_parenthesis(): ignore CSS / script stuff.
3807
3808 2001-11-29
3809
3810         * src/prefs_template.c: added colon to the header labels.
3811
3812 2001-11-28
3813
3814         * src/compose.c
3815           src/prefs_template.c
3816           src/template.[ch]: added To field to the template.
3817
3818 2001-11-27
3819
3820         * src/textview.c: textview_show_part(): use first found
3821           message/rfc822 header.
3822         * src/folderview.c: added "Search messages..." to the context menu.
3823         * src/prefs_common.c: prefs_quote_description_create(): added
3824           description for characters which need to be escaped.
3825
3826 2001-11-26
3827
3828         * src/compose.c: compose_wrap_line_all(): more merging from claws.
3829           GET_CHAR(): renamed GET_TEXT() and made it more generic.
3830           Modified compose_wrap_line() and compose_wrap_line_all() to use
3831           GET_CHAR().
3832         * src/textview.c: textview_show_part(): show the header of nested
3833           RFC822 attachment correctly.
3834
3835 2001-11-25
3836
3837         * src/folder.[ch]
3838           src/main.c: added --status option to get new, unread and total
3839           message count from a running Sylpheed (merged from claws).
3840           prohibit_duplicate_launch(): output '\n' only once.
3841
3842 2001-11-23
3843
3844         * src/compose.c
3845           src/gtkutils.[ch]: merged the new wrapping function.
3846           gtkut_text_str_compare_n()
3847           gtkut_text_str_compare()
3848           gtkut_text_is_uri_string(): backport from the GtkSText in the
3849           claws branch, and made modification.
3850         * src/prefs_template.c
3851           src/template.[ch]: added Subject to the template.
3852
3853 2001-11-22
3854
3855         * src/compose.c: compose_write_headers(): added missing parenthesis
3856           that generated invalid custom header (thanks to Masaaki Noro).
3857           Allow Sender: custom header.
3858
3859 2001-11-20
3860
3861         * src/procheader.c: procheader_date_parse(): workaround for
3862           RFC-incompliant Date header.
3863
3864 2001-11-20
3865
3866         * src/addrbook.c: removed redundant functions, and fixed generation
3867           of spurious address book file names.
3868         * src/addrindex.c: V-Card -> vCard.
3869
3870 2001-11-19
3871
3872         * src/textview.c: get_email_part(): replaced isalnum() with
3873           the macro IS_ASCII_ALNUM() which restricts the range of
3874           characters to 7bit ASCII (thanks to Shimamoto).
3875         * src/utils.c: remote_tzoffset_sec(): workaround for malformed
3876           timezone offset.
3877
3878 2001-11-18
3879
3880         * src/textview.c: textview_show_part(): show headers on nested
3881           muitipart text.
3882
3883 2001-11-17
3884
3885         * src/imap.c: imap_session_get()
3886           src/news.c: news_session_get(): fixed segfault when reconnection
3887           failed.
3888         * src/grouplistdialog.c: removed redundant code, and expand nodes
3889           that doesn't match the pattern.
3890
3891 2001-11-16
3892
3893         * src/compose.c: modified so that it sends message when any of
3894           To:, Cc:, Bcc:, or Newsgroups: fields have valid recipient.
3895           compose_check_for_valid_recipient(): new.
3896         * src/grouplistdialog.c: improved the UI.
3897           Added appropriate description and search button.
3898           Search doesn't get group list again.
3899
3900 2001-11-15
3901
3902         * src/news.[ch]: news_session_get(): update the last access time
3903           correctly.
3904           news_group_list_free(): new.
3905         * src/grouplistdialog.c: free resources correctly.
3906
3907 2001-11-15
3908
3909         * src/folderview.c
3910           src/grouplistdialog.[ch]: more merging of new newsgroup
3911           subscription dialog.
3912         * src/news.[ch]: renamed news_remove_group_list() to
3913           news_remove_group_list_cache().
3914
3915 2001-11-14
3916
3917         * src/defs.h: added MAX_ENTRY_LENGTH definition.
3918         * src/compose.c: compose_add_entry_field(): create new entry with
3919           max length.
3920
3921 2001-11-13
3922
3923         * src/grouplistdialog.c: made non-leaf node selectable.
3924           Give the complete newsgroup name for each nodes.
3925
3926 2001-11-13
3927
3928         * src/grouplistdialog.c
3929           src/news.[ch]: merging of new newsgroup subscription dialog
3930           (still in progress. Don't use it yet!).
3931
3932 2001-11-12
3933
3934         * src/utils.[ch]: decode_uri(): new. It decodes URL-encoded strings.
3935         * src/compose.[ch]: compose_new_with_recipient(): accept mailto
3936           URL.
3937           compose_entries_set(): new. It parses mailto URL and put each
3938           values into the entries.
3939
3940 2001-11-12
3941
3942         * src/compose.c: compose_forward(): fixed a bug that forward
3943           quote mark wasn't used (thanks to Hironori IWANE).
3944         * src/codeconv.[ch]
3945           src/mainwindow.c
3946           src/prefs_common.c: added Thai encodings (thanks to Manrat
3947           Chobchuen).
3948
3949 2001-11-08
3950
3951         * src/socket.c: sock_connect_by_hostname(): removed h_errno.
3952         * src/session.h
3953           src/defs.h
3954           src/imap.[ch]
3955           src/news.c: added last_access_time to Session.
3956           imap_session_get(): check connection only when access interval
3957           has been exceeded.
3958
3959 2001-11-07
3960
3961         * version 0.6.5
3962
3963 2001-11-07
3964
3965         * src/socket.c: ssl_gets(): use SSL_peek.
3966         * updated NEWS and AUTHORS.
3967         * Makefile.am: fixed release target.
3968
3969 2001-11-06
3970
3971         * src/template.c: changed the format of template file to
3972           RFC2822-like.
3973         * src/compose.c: compose_template_apply(): freeze the text widget
3974           while inserting strings.
3975
3976 2001-11-05
3977
3978         * po/POTFILES.in: removed src/template_select.c.
3979         * src/summaryview.c: summary_set_header()
3980           src/address.c: address_parse_str()
3981           src/filter.c: filter_read_str()
3982           src/news.c: news_parse_xover()
3983           src/procheader.c: procheader_get_fromname()
3984           src/utils.c: subject_compare():
3985           replaced Xalloca() + strcpy() with Xstrdup_a().
3986         * src/inputdialog.[ch]: added combo mode.
3987           input_dialog_combo(): new.
3988         * src/prefs_common.[ch]: added MIME open command setting.
3989           prefs_common_{read, save}_config(): read / write command history.
3990         * src/mimeview.c: mimeview_open_with(): use combo input dialog.
3991         * src/utils.[ch]: add_history(): history list management function.
3992
3993 2001-11-04
3994
3995         * src/compose.c: select templates from the menu.
3996           compose_set_template_menu(): new.
3997           compose_reflect_prefs_all(): new.
3998           compose_template_apply(): new. Use dummy MsgInfo for parsing.
3999         * src/template.[ch]: store template list to the static heap.
4000           template_get_config(): new.
4001           template_set_config(): new.
4002         * src/prefs_template.c: don't store template list to the global area.
4003         * src/template_select.[ch]: removed.
4004         * src/quote_fmt_parse.y: check folderitem when quoting messages.
4005         * src/mh.c: mh_add_msg(): try to copy file whenever link() failed
4006           (thanks to OSHIRO Naoki).
4007
4008 2001-11-03
4009
4010         * src/utils.[ch]: get_template_dir(): new.
4011         * src/template.c: use get_template_dir().
4012
4013 2001-11-02
4014
4015         * src/prefs_template.c: modified the dialog layout.
4016           Added symbol description button.
4017         * src/summaryview.c: show an arrow mark to the column of the sort
4018           target.
4019           summary_set_column_titles(): new.
4020         * INSTALL
4021           INSTALL.jp
4022           README
4023           README.jp
4024           TODO
4025           TODO.jp: updated the documents.
4026
4027 2001-11-02
4028
4029         * src/Makefile.am: add missing checkbox_{on, off}.xpm.
4030         * src/textview.c: textview_key_pressed()
4031           src/mimeview.c: mimeview_key_pressed()
4032           src/summaryview.c: summary_key_pressed(): delete messages with
4033           Delete key.
4034
4035 2001-11-01
4036
4037         * src/socket.c: ssl_gets(): fixed a bug that caused infinite loop
4038           when SSL_read() returned 0.
4039         * src/utils.[ch]: strcrchomp(): new. It removes CR from the tail
4040           of strings.
4041         * src/quote_fmt_parse.y: convert CRLF to LF when inserting messages.
4042           Add prototype of yylex() to suppress the warning.
4043         * merged the template function.
4044         * src/prefs_template.[ch]
4045           src/template.[ch]
4046           src/template_select.[ch]: new.
4047           Renamed prefs_templates_* -> prefs_template_*.
4048         * src/compose.c: added template menu. Added replyinfo to Compose.
4049         * src/mainwindow.c: added template setting menu.
4050         * src/quote_fmt_lex.l: output literal tab and return as is.
4051         * src/prefs_common.c: changed the pref. name of quote format to
4052           'reply_quote_{mark, format}' and 'fw_quote_{mark, format}'.
4053
4054 2001-10-31
4055
4056         * src/prefs_common.[ch]: added Quote tab, and moved the quote
4057           setting from Compose tab.
4058         * merged the new quote format parser.
4059         * src/quote_fmt_lex.h
4060           src/quote_fmt.h
4061           src/quote_fmt_lex.l
4062           src/quote_fmt_parse.y: new files for quote format parser.
4063         * configure.in: added checks for lex and yacc.
4064         * src/compose.c: compose_quote_file(), compose_quote_parse_fmt():
4065           removed.
4066           compose_quote_fmt(): new.
4067         * src/prefs_common.[ch]: added forward format setting to the
4068           Quote tab. Updated the quote description dialog.
4069         * src/quote_fmt_parse.y: fixed bugs that tried to read file even
4070           if they couldn't get text part.
4071
4072 2001-10-31
4073
4074         * src/pixmaps/checkbox_off.xpm
4075           src/pixmaps/checkbox_on.xpm: new.
4076         * src/account.c: display `get all' status with the checkbox pixmaps.
4077
4078 2001-10-30
4079
4080         * src/send.c: code cleanup. Pass account prefs structure instead
4081           of many arguments.
4082           Query password for SMTP AUTH if not specified (thanks to Mio).
4083
4084 2001-10-30
4085
4086         * src/procheader.c: procheader_parse(): fixed a bug that didn't
4087           parse multiple message-id in In-Reply-To: header correctly
4088           (thanks to KAJIWARA).
4089
4090 2001-10-29
4091
4092         * src/account.c: enabled 'Get all' setting by clicking the 'G'
4093           column of account list, and added some description.
4094         * src/prefs_common.c: prefs_send_create(): added a description
4095           for outgoing codeset.
4096
4097 2001-10-28
4098
4099         * src/prefs_account.[ch]: moved inbox entry to the receive tab,
4100           and added select button and short description.
4101         * src/Makefile.am: added SYSCONFDIR to CPPFLAGS.
4102         * src/procmime.c:
4103           procmime_get_mime_type_table()
4104           procmime_get_mime_type_list(): modified so that
4105           $(SYSCONFDIR)/mime.types (or /etc/mime.types if not found) and
4106           $(HOME)/.sylpheed/mime.types are read.
4107
4108 2001-10-27
4109
4110         * src/prefs_account.c: moved the address auto-setting to the compose
4111           tab.
4112           prefs_account_create(): removed gtk_widget_show_all() for proper
4113           window size.
4114         * src/prefs_common.c: changed "Program path" to "Command".
4115
4116 2001-10-26
4117
4118         * src/textview.c: textview_set_font(): support Russian charset
4119           on EUC-JP locale.
4120         * src/summaryview.c: summary_delete(): (hopefully) fixed the crash
4121           bug on deleting.
4122         * prefs_account.c
4123           prefs_common.c
4124           prefs_summary_column.c: minor improvements to the English.
4125         * src/main.c: get_queued_message_num(): don't output the warning
4126           when queueing folder is not found.
4127
4128 2001-10-21
4129
4130         * version 0.6.4
4131
4132 2001-10-21
4133
4134         * src/prefs_summary_column.[ch]:
4135           made prefs_summary_column_get_config() public.
4136         * src/summaryview.c: summary_ctree_create(): some code cleanup.
4137         * configure.in: moved the position of SSL checking after LDAP
4138           for linking problem.
4139
4140 2001-10-21
4141
4142         * src/mainwindow.c
4143           src/summaryview.c: allowed reedit in the outbox.
4144         * src/prefs_summary_column.[ch]: new. UI for setting summary
4145           columns.
4146         * src/mainwindow.[ch]: main_window_set_summary_column(): new.
4147           It calls summary_set_column_order().
4148         * src/summaryview.[ch]:
4149           summary_ctree_create(): new. separated from summary_create().
4150           summary_set_column_order(): new. It destroys the current
4151           CTree and replaces it with the new one.
4152
4153 2001-10-19
4154
4155         * src/smtp.[ch]: smtp_from(): abort if auth failed.
4156         * changed C++-style comments into C-style in some files, and
4157           removed unnecessary commented out codes.
4158         * src/addrcache.[ch]
4159           src/addressbook.c
4160           src/addrindex.[ch]
4161           src/jpilot.[ch]
4162           src/syldap.[ch]: updated the addressbook code, and fixed the
4163           thread bug of LDAP.
4164         * src/ldif.[ch]
4165           src/importldif.[ch]: new.
4166
4167 2001-10-18
4168
4169         * src/about.c: added some items to compiled-in features.
4170         * src/addr_compl.c: changed LOG_MESSAGE to debug_print.
4171         * src/addressbook.c: changed "V-Card" to "vCard".
4172           addressbook_edit_address_cb(): added
4173           invalidate_address_completion() to the point address is changed.
4174         * src/codeconv.c: changed C++-style comments into C-style.
4175
4176 2001-10-17
4177
4178         * src/compose.c: changed "Send" shortcut to Ctrl+Enter.
4179
4180 2001-10-16
4181
4182         * src/inc.c: fixed a bug that crashed sylpheed if Cancel button
4183           was clicked twice.
4184
4185 2001-10-16
4186
4187         * src/procmsg.c: procmsg_get_thread_tree(): complete the unfinished
4188           threads.
4189         * src/summaryview.c:
4190           summary_thread_init(): separated from summary_thread_build(). 
4191           summary_thread_build(): removed the codes for initialization.
4192           summary_set_ctree_from_list(): call summary_thread_init() instead
4193           of summary_thread_build().
4194           summary_filter(): fixed a bug that didn't moved messages despite
4195           of immediate execution setting.
4196
4197 2001-10-14
4198
4199         * src/procmsg.c: procmsg_get_thread_tree(): new. It generates the
4200           reversed thread tree from message list.
4201         * src/summaryview.c: summary_set_ctree_from_list(): prepend the
4202           node to the head instead of appending to the tail. This prevents
4203           the traverse of node list inside of the GtkCTree, and considerably
4204           speeds up the summary display (the order is O(n^2) -> O(n)).
4205
4206 2001-10-12
4207
4208         * src/prefs_common.c
4209           src/summaryview.[ch]: initial modification for reorderable columns.
4210
4211 2001-10-12
4212
4213         * src/procmsg.c: procmsg_get_mark_sum(), mark_sum_func(): fixed a
4214           memory leak.
4215         * src/folderview.c: folderview_button_pressed(): code cleanup, and
4216           turn sensitivity off if main window is locked.
4217         * src/syldap.c: syldap_read_data(): removed unnecessary and
4218           unportable sched_yield().
4219
4220 2001-10-11
4221
4222         * src/folderview.c: renamed "Update folder tree" context menu to
4223           "Rescan folder tree", and made "Update folder tree" only updates
4224           folder status.
4225           folderview_update_all_node(): don't show message dialog.
4226         * src/gtkutils.c: gtkut_widget_get_uposition()
4227           src/mainwindow.c: main_window_popup(): clip the coordinate to
4228           nonnegative value.
4229
4230 2001-10-10
4231
4232         * src/utils.c: to_human_readable(): made a bit of optimization.
4233         * src/summaryview.c: summary_delete(): fixed a focus problem.
4234           summary_find_{prev,next}_msg(): new. They find previous/next
4235           message that is not deleted.
4236         * src/prefs_filter.c: scroll CList automatically if moved row
4237           becomes not fully visible.
4238
4239 2001-10-09
4240
4241         * updated some autotool scripts.
4242         * src/codeconv.c: conv_encode_header(): fixed a bug that caused
4243           infinite loop when failed to convert encoding.
4244         * src/codeconv.[ch]: a fix for older version of libjconv
4245           (jconv_info_get_current_codeset() returned "EUCJP" instead of
4246           "EUC-JP").
4247
4248 2001-10-08
4249
4250         * version 0.6.3
4251
4252 2001-10-08
4253
4254         * src/compose.c: compose_write_to_file()
4255           src/codeconv.c: conv_codeset_strdup(): more workaround for
4256           libjconv problem on C locale.
4257         * src/editldap_basedn.c: fixed segfault when opening dialog.
4258         * src/utils.c: is_next_mbs()
4259           src/compose.c: compose_wrap_line(), compose_wrap_line_all():
4260           changed MB_CUR_MAX to MB_LEN_MAX for compliance to ANSI C.
4261         * configure.in: increased the reqired version of GPGME to 0.2.3.
4262         * src/pop.c: pop3_getauth_user_recv(): fixed a bug that closed
4263           the receive dialog when POP3 server refused normal authentication.
4264
4265 2001-10-07
4266
4267         * src/prefs_common.c: prefs_receive_create(): correction to English.
4268         * src/compose.c: compose_set_ext_editor_sensitive(): fixed a bug
4269           that didn't set the menu sensitivity correctly (thanks to
4270           Melvin Hadasht).
4271         * src/summaryview.c: delete messages permanently if the current
4272           folder is trash and 'delete' operation is executed.
4273           Fixed the bug that didn't select the last row correctly (thanks
4274           to Alfons Hoogervorst).
4275         * src/folder.[ch]: folder_item_remove_msgs(): new. It removes
4276           all messages given in the list.
4277
4278 2001-10-05
4279
4280         * src/summaryview.c: summary_show(): fixed a bug that didn't show
4281           message even if the 'open unread message on entering folder'
4282           option was turned on.
4283
4284 2001-10-03
4285
4286         * src/procmime.c: procmime_get_text_content(): supported HTML.
4287
4288 2001-10-02
4289
4290         * src/summaryview.[ch]: implemented new locking mechanism, and
4291           replaced every static locks with summary_lock(), summary_unlock(),
4292           and added locks to some extra functions.
4293           This fixes a bug that caused segfault when 'd' (delete) key
4294           was kept pressing.
4295
4296 2001-10-01
4297
4298         * src/addressbook.c: addressbook_folder_load_person(): fixed a bug
4299           that caused segfault (thanks to Stefaan A Eeckels).
4300
4301 2001-09-30
4302
4303         * src/textview.[ch]: added textview_set_position().
4304         * src/messageview.[ch]: added messageview_set_position().
4305         * src/addrbook.c
4306           src/addrcache.c
4307           src/addressadd.c
4308           src/addressbook.c
4309           src/addrindex.c
4310           src/addritem.c
4311           src/editaddress.c
4312           src/editbook.c
4313           src/editgroup.c
4314           src/editjpilot.c
4315           src/editldap.c
4316           src/editldap_basedn.c
4317           src/editvcard.c
4318           src/jpilot.c
4319           src/mgutils.c
4320           src/syldap.c
4321           src/vcard.c: converted C++-style comments into C-style one.
4322         * src/imap.c: QUOTE_IF_REQUIRED(): new macro. Copy string into
4323           new buffer and quote with double quotes if required.
4324           imap_status(), imap_cmd_login(), imap_cmd_list(),
4325           imap_cmd_do_select(), imap_cmd_create(), imap_cmd_delete(),
4326           imap_cmd_copy(): use QUOTE_IF_REQUIRED().
4327         * compose.c: compose_write_to_file(): workaround for the problem
4328           when using libjconv and 8bit codes cannot be converted on C
4329           locale.
4330         * codeconv.[ch]: added "ANSI_X3.4-1968" to encoding strings.
4331           conv_codeset_strdup(): don't convert if source and destination
4332           codeset are identical.
4333
4334 2001-09-30
4335
4336         * src/textview.[ch]: textview_search_string_backward(): new.
4337           Add the new member cur_pos to TextView.
4338           Connect button_press_event with gtk_signal_connect_after() to
4339           obtain the correct editable position.
4340
4341 2001-09-27
4342
4343         * src/folder.c: folder_write_list_recursive(): preserve unthreaded
4344           state.
4345
4346 2001-09-26
4347
4348         * src/summaryview.c: modified the layout of popup menu.
4349
4350 2001-09-25
4351
4352         * src/folder.c
4353           src/folder.h
4354           src/mainwindow.c
4355           src/summaryview.c: applied the patch from Alfons that allows
4356           threading setting for each folders (tnanks!).
4357
4358 2001-09-23
4359
4360         * src/message_search.[ch]: new. A Dialog for searching in current
4361           message.
4362         * src/gtkutils.[ch]: gtkut_text_match_string(): new. Compare the
4363           text in current position of GtkText and given wide-character
4364           string.
4365         * src/messageview.[ch]: messageview_search_string()
4366           src/textview.[ch]: textview_search_string(): return TRUE if
4367           found.
4368         * src/textview.[ch]: remember the beginning of body.
4369
4370 2001-09-21
4371
4372         * src/procmime.c: procmime_get_first_text_content(): modified so
4373           that it search entire MIME structure.
4374         * src/summary_search.c: summary_search_execute(): use
4375           strdup_mbstowcs() instead of macro. Display matched message.
4376
4377 2001-09-20
4378
4379         * src/inc.c: fix for background POP3 hangs and crashes (thanks to
4380           Sergey Vlasov).
4381         * src/summary_search.c: added body searching function.
4382         * src/procmime.[ch]: procmime_find_string(): changed arguments
4383           and return value. Added case sensitivity option.
4384
4385 2001-09-20
4386
4387         * src/procmime.[ch]:
4388           procmime_find_string()
4389           procmime_find_string_part(): new. It searchs the string from
4390           messages.
4391           Renamed procmime_get_text_part() to
4392           procmime_get_first_text_content().
4393           procmime_get_text_content(): new. It returns the text contents
4394           of the specified MIME part.
4395           procmime_mimeinfo_next(): new. It returns the next node of
4396           MimeInfo tree.
4397
4398 2001-09-19
4399
4400         * src/procmime.c: procmime_get_text_part(): modified so that it
4401           finds a text part in nested multipart message correctly.
4402         * src/procmime.h: added an example of MimeInfo structure.
4403         * src/mimeview.c: mimeview_show_message(): search the first text
4404           part.
4405
4406 2001-09-17
4407
4408         * src/mainwindow.c: ac_menu_popup_closed(): fixed the bug that
4409           caused segfault. Changed 'Preferences per account...' menu item.
4410
4411 2001-09-17
4412
4413         * version 0.6.2
4414
4415 2001-09-16
4416
4417         * src/addrindex.c: translate the "Common address" and "Personal
4418           address" from old addressbook.
4419
4420 2001-09-12
4421
4422         * src/utils.c: get_quote_level(): some optimization and bugfixes.
4423         * src/codeconv.[ch]: conv_get_current_locale(): new.
4424         * src/editaddress.c: edit_person_page_basic(): reverse the order
4425           of first and last name on some locales.
4426
4427 2001-09-11
4428
4429         * src/compose.c: applied the patch from Yasumatsu that reformats
4430           the current paragraph (thanks!). Modified so that it doesn't
4431           reformat quoted paragraphs.
4432           compose_create(): don't fill the entry automatically on reedit
4433           mode.
4434         * src/mainwindow.c
4435           src/summaryview.[ch]: added the "Mark all read" option.
4436           summary_mark_all_read(): new.
4437
4438 2001-09-10
4439
4440         * src/vcard.c
4441           src/mgutils.c
4442           src/syldap.c
4443           src/editldap.c
4444           src/editldap_basedn.c
4445           src/jpilot.c
4446           src/editjpilot.c: removed all warnings.
4447         * configure.in
4448           src/jpilot.[ch]: fixed the problem that failed to detect JPilot
4449           header files on the Debian system.
4450         * src/mainwindow.c
4451           src/summaryview.[ch]: enabled sorting by mark, unread, attachment,
4452           and color label. Enabled moving to next/prev flagged messages.
4453
4454 2001-09-09
4455
4456         * src/pixmaps/dir-close.xpm
4457           src/pixmaps/dir-open.xpm
4458           src/pixmaps/new.xpm
4459           src/pixmaps/unread.xpm: modified the color balance.
4460         * src/utils.[ch]: execute_sync(): new.
4461           execute_command_line(): added the arg for async mode.
4462         * src/inc.c: inc_mail(): use execute_command_line().
4463
4464 2001-09-08
4465
4466         * src/prefs.[ch]
4467           src/prefs_common.[ch]
4468           src/prefs_account.c: modified the layout. Added the option to
4469           launch the external editor automatically.
4470         * src/compose.c: launch the external editor automatically if the
4471           option is set.
4472
4473 2001-09-06
4474
4475         * src/Makefile.am: added extra xpm's.
4476
4477 2001-09-05
4478
4479         * src/addressbook.c: fixed a compilation problem when enabling
4480           LDAP.
4481           addressbook_open(): fixed a missing 'else'.
4482
4483 2001-09-04
4484
4485         * src/pixmaps/dir-close.xpm
4486           src/pixmaps/dir-open.xpm
4487           src/pixmaps/trash.xpm: replaced with the new blue icons.
4488         * merged Match Grun's new addressbook code.
4489         * src/pixmaps/address.xpm
4490           src/pixmaps/book.xpm
4491           src/pixmaps/category.xpm
4492           src/pixmaps/interface.xpm
4493           src/pixmaps/jpilot.xpm
4494           src/pixmaps/ldap.xpm
4495           src/pixmaps/vcard.xpm: new icons.
4496         * src/addrbook.[ch]
4497           src/addrcache.[ch]
4498           src/addressadd.[ch]
4499           src/addressitem.[ch]
4500           src/addrindex.[ch]
4501           src/addritem.[ch]
4502           src/editaddress.[ch]
4503           src/editbook.[ch]
4504           src/editgroup.[ch]
4505           src/editjpilot.[ch]
4506           src/editldap.[ch]
4507           src/editldap_basedn.[ch]
4508           src/editvcard.[ch]
4509           src/jpilot.[ch]
4510           src/mgutils.[ch]
4511           src/syldap.[ch]
4512           src/vcard.[ch]: new. Many fixes to remove the huge amount of
4513           warnings.
4514           addrbook_build_avail_email_vis(): fixed a memory leak.
4515
4516 2001-09-04
4517
4518         * NEWS: brought in the all of the changes previously put on the web.
4519
4520 2001-09-03
4521
4522         * src/mainwindow.c
4523           src/summaryview.c: modified the layout of menus.
4524         * src/mainwindow.c: ac_menu_popup_closed(): fixed a bug that didn't
4525           return a focus to the main window after selecting the account menu.
4526
4527 2001-09-03
4528
4529         * version 0.6.1
4530
4531 2001-09-03
4532
4533         * src/send.c: send_message_data(): fixed a bug that didn't process
4534           body part correctly.
4535
4536 2001-09-02
4537
4538         * src/inc.[ch]: changed inc_autocheck_(un)lock() to inc_(un)lock().
4539           inc_mail(), inc_all_account_mail(): return immediately if locked.
4540         * src/account.c
4541           src/prefs_common.c
4542           src/prefs_account.c: use inc_lock() and inc_unlock() instead of
4543           inc_autocheck_timer_{remove,set}().
4544         * src/summaryview.c: summary_set_colorlabel_color(): get the average
4545           of label color and selected fg color for visibility.
4546
4547 2001-09-01
4548
4549         * src/inc.[ch]: inc_autocheck_lock(), inc_autocheck_unlock(): new.
4550           They increase/decrease the lock count.
4551           inc_autocheck_func(): if locked, delay the autochecking 1 second.
4552           inc_autocheck_timer_set_interval(): set interval by its argument.
4553         * src/summaryview.c: summary_show(): lock the autochecking while
4554           processing.
4555         * src/main.c: app_will_exit(): remove autocheck timer.
4556         * acconfig.h
4557           src/defs.h: removed the definitions of PACKAGE and VERSION to
4558           prevent unnecessary compilation.
4559         * configure.in: changed AC_DEFINE_UNQUOTED of PACKAGE and VERSION
4560           to AC_SUBST, and added src/version.h to AC_OUTPUT.
4561         * src/version.h.in: new.
4562         * src/intl.h: changed dgettext() to gettext().
4563
4564 2001-08-31
4565
4566         * po/ja.po: fixed a typo that crashed Sylpheed with older version
4567           of GTK+.
4568         * configure.in: fixed a bug that didn't show results correctly.
4569           Fixed a bug that --enable-compface and --enable-jconv disabled
4570           the options.
4571         * src/procmsg.c: procmsg_send_queue(): don't abort when sending
4572           message failed.
4573         * src/compose.c: compose_write_headers(): add Bcc: header to the
4574           output file.
4575         * src/send.c: send_message_data(): new. Separated from
4576           send_message_smtp(). Remove Bcc: header before sending.