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