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