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