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