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