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