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