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