4d16c694dd8d144362cb3a0e32981b464bbdb3b2
[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.