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