sync with 0.9.3cvs16
[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 characters (obtain the
3857           number of letters instead of bytes).
3858         * src/compose.[ch]: added the code for undo.
3859         * src/prefs_common.[ch]: added the interface for setting undo level.
3860
3861 2001-12-16
3862
3863         * src/compose.c: compose_template_apply()
3864           src/prefs_template.c: prefs_template_clist_set_row()
3865           src/template.c: template_write_config(): don't replace To: and
3866           Subject: entry in composition window if they are empty.
3867
3868 2001-12-16
3869
3870         * version 0.6.6
3871
3872 2001-12-15
3873
3874         * src/folderview.c: folderview_drag_motion_cb(): fixed a DnD bug.
3875         * src/ldif.c: ldif_get_line(): ignore CR.
3876         * src/mimeview.c: mimeview_show_message(): search also text/html
3877           for first text part.
3878
3879 2001-12-14
3880
3881         * src/prefs_account.c: prefs_account_save_config_all(): fixed a bug
3882           that didn't update accountrc if account_list == NULL (thanks to
3883           Watanabe).
3884
3885 2001-12-14
3886
3887         * src/utils.h: added the macro Xstrcat_a() that concatenates
3888           two strings and return alloca'd string.
3889         * src/imap.c: imap_scan_tree_recursive(): fixed a bug that didn't
3890           handle folder name which includes some spaces correctly
3891           (based on the patch from Willem van Engen (thanks!)).
3892         * src/compose.c: compose_wrap_line_all(): fixed the crash when
3893           wrapping long lines if linewrap quotation is disabled and
3894           a word spanning more than one line.
3895
3896 2001-12-14
3897
3898         * applied the Tobias' patch with modification (thanks!).
3899         * src/imap.[ch]:
3900           imap_msg_set_perm_flags()
3901           imap_msg_unset_perm_flags(): new. They set permanent flags to
3902           a IMAP message.
3903         * src/compose.c
3904           src/summaryview.c: set flags on IMAP server when flags are changed.
3905
3906 2001-12-11
3907
3908         * src/gtkutils.[ch]: gtkut_container_remove(): new. It's a wrapper
3909           of gtk_container_remove() for workaround of a bug in
3910           Gtk{Text,Entry} (thanks to Sergey Vlasov).
3911         * src/compose.c
3912           src/mainwindow.c
3913           src/messageview.c
3914           src/mimeview.c
3915           src/summaryview.c
3916           src/textview.c: replaced gtk_container_remove() with
3917           gtkut_container_remove(), and removed previous partial fix.
3918
3919 2001-12-09
3920
3921         * src/prefs_account.c: prefs_account_apply(): fixed a bug that
3922           checked user ID on "local", but didn't on IMAP4.
3923         * src/imap.c: imap_session_get(): fixed a crash bug when
3924           rfolder->session == NULL.
3925         * Makefile.am: changed the arguments of tar from 'chojf' to
3926           '--bzip2 -chof'.
3927         * src/summaryview.c: summary_toggle_view(): disclaim the selection
3928           of textview before removing vpaned.
3929
3930 2001-12-08
3931
3932         * src/messageview.c: messageview_change_view_type(): disclaim the
3933           selection before removing textview. This solves the mysterious
3934           copy-paste disability (thanks to Melvin Hadasht).
3935         * src/textview.c: textview_set_font(): use
3936           gtk_editable_claim_selection() instead of
3937           gtk_editable_select_region().
3938
3939 2001-12-06
3940
3941         * src/prefs_template.c: prefs_template_window_create(): supported
3942           address completion on the To: entry.
3943
3944 2001-12-04
3945
3946         * src/folder.c:
3947           folder_count_total_msgs()
3948           folder_count_total_msgs_func(): use g_node_traverse() to traverse
3949           GNode.
3950
3951 2001-12-03
3952
3953         * src/compose.c: fixed a bug that empty body was refused.
3954         * src/prefs_template.c: fixed a bug that didn't set To: entry
3955           correctly. Display error dialog if format is illegal.
3956         * src/prefs_common.c
3957           src/quote_fmt_lex.l
3958           src/quote_fmt_parse.y: changed parenthesis "( )" to curly braces
3959           "{ }" to prevent confusion on using parenthesis.
3960         * src/html.c: html_get_parenthesis(): ignore CSS / script stuff.
3961
3962 2001-11-29
3963
3964         * src/prefs_template.c: added colon to the header labels.
3965
3966 2001-11-28
3967
3968         * src/compose.c
3969           src/prefs_template.c
3970           src/template.[ch]: added To field to the template.
3971
3972 2001-11-27
3973
3974         * src/textview.c: textview_show_part(): use first found
3975           message/rfc822 header.
3976         * src/folderview.c: added "Search messages..." to the context menu.
3977         * src/prefs_common.c: prefs_quote_description_create(): added
3978           description for characters which need to be escaped.
3979
3980 2001-11-26
3981
3982         * src/compose.c: compose_wrap_line_all(): more merging from claws.
3983           GET_CHAR(): renamed GET_TEXT() and made it more generic.
3984           Modified compose_wrap_line() and compose_wrap_line_all() to use
3985           GET_CHAR().
3986         * src/textview.c: textview_show_part(): show the header of nested
3987           RFC822 attachment correctly.
3988
3989 2001-11-25
3990
3991         * src/folder.[ch]
3992           src/main.c: added --status option to get new, unread and total
3993           message count from a running Sylpheed (merged from claws).
3994           prohibit_duplicate_launch(): output '\n' only once.
3995
3996 2001-11-23
3997
3998         * src/compose.c
3999           src/gtkutils.[ch]: merged the new wrapping function.
4000           gtkut_text_str_compare_n()
4001           gtkut_text_str_compare()
4002           gtkut_text_is_uri_string(): backport from the GtkSText in the
4003           claws branch, and made modification.
4004         * src/prefs_template.c
4005           src/template.[ch]: added Subject to the template.
4006
4007 2001-11-22
4008
4009         * src/compose.c: compose_write_headers(): added missing parenthesis
4010           that generated invalid custom header (thanks to Masaaki Noro).
4011           Allow Sender: custom header.
4012
4013 2001-11-20
4014
4015         * src/procheader.c: procheader_date_parse(): workaround for
4016           RFC-incompliant Date header.
4017
4018 2001-11-20
4019
4020         * src/addrbook.c: removed redundant functions, and fixed generation
4021           of spurious address book file names.
4022         * src/addrindex.c: V-Card -> vCard.
4023
4024 2001-11-19
4025
4026         * src/textview.c: get_email_part(): replaced isalnum() with
4027           the macro IS_ASCII_ALNUM() which restricts the range of
4028           characters to 7bit ASCII (thanks to Shimamoto).
4029         * src/utils.c: remote_tzoffset_sec(): workaround for malformed
4030           timezone offset.
4031
4032 2001-11-18
4033
4034         * src/textview.c: textview_show_part(): show headers on nested
4035           muitipart text.
4036
4037 2001-11-17
4038
4039         * src/imap.c: imap_session_get()
4040           src/news.c: news_session_get(): fixed segfault when reconnection
4041           failed.
4042         * src/grouplistdialog.c: removed redundant code, and expand nodes
4043           that doesn't match the pattern.
4044
4045 2001-11-16
4046
4047         * src/compose.c: modified so that it sends message when any of
4048           To:, Cc:, Bcc:, or Newsgroups: fields have valid recipient.
4049           compose_check_for_valid_recipient(): new.
4050         * src/grouplistdialog.c: improved the UI.
4051           Added appropriate description and search button.
4052           Search doesn't get group list again.
4053
4054 2001-11-15
4055
4056         * src/news.[ch]: news_session_get(): update the last access time
4057           correctly.
4058           news_group_list_free(): new.
4059         * src/grouplistdialog.c: free resources correctly.
4060
4061 2001-11-15
4062
4063         * src/folderview.c
4064           src/grouplistdialog.[ch]: more merging of new newsgroup
4065           subscription dialog.
4066         * src/news.[ch]: renamed news_remove_group_list() to
4067           news_remove_group_list_cache().
4068
4069 2001-11-14
4070
4071         * src/defs.h: added MAX_ENTRY_LENGTH definition.
4072         * src/compose.c: compose_add_entry_field(): create new entry with
4073           max length.
4074
4075 2001-11-13
4076
4077         * src/grouplistdialog.c: made non-leaf node selectable.
4078           Give the complete newsgroup name for each nodes.
4079
4080 2001-11-13
4081
4082         * src/grouplistdialog.c
4083           src/news.[ch]: merging of new newsgroup subscription dialog
4084           (still in progress. Don't use it yet!).
4085
4086 2001-11-12
4087
4088         * src/utils.[ch]: decode_uri(): new. It decodes URL-encoded strings.
4089         * src/compose.[ch]: compose_new_with_recipient(): accept mailto
4090           URL.
4091           compose_entries_set(): new. It parses mailto URL and put each
4092           values into the entries.
4093
4094 2001-11-12
4095
4096         * src/compose.c: compose_forward(): fixed a bug that forward
4097           quote mark wasn't used (thanks to Hironori IWANE).
4098         * src/codeconv.[ch]
4099           src/mainwindow.c
4100           src/prefs_common.c: added Thai encodings (thanks to Manrat
4101           Chobchuen).
4102
4103 2001-11-08
4104
4105         * src/socket.c: sock_connect_by_hostname(): removed h_errno.
4106         * src/session.h
4107           src/defs.h
4108           src/imap.[ch]
4109           src/news.c: added last_access_time to Session.
4110           imap_session_get(): check connection only when access interval
4111           has been exceeded.
4112
4113 2001-11-07
4114
4115         * version 0.6.5
4116
4117 2001-11-07
4118
4119         * src/socket.c: ssl_gets(): use SSL_peek.
4120         * updated NEWS and AUTHORS.
4121         * Makefile.am: fixed release target.
4122
4123 2001-11-06
4124
4125         * src/template.c: changed the format of template file to
4126           RFC2822-like.
4127         * src/compose.c: compose_template_apply(): freeze the text widget
4128           while inserting strings.
4129
4130 2001-11-05
4131
4132         * po/POTFILES.in: removed src/template_select.c.
4133         * src/summaryview.c: summary_set_header()
4134           src/address.c: address_parse_str()
4135           src/filter.c: filter_read_str()
4136           src/news.c: news_parse_xover()
4137           src/procheader.c: procheader_get_fromname()
4138           src/utils.c: subject_compare():
4139           replaced Xalloca() + strcpy() with Xstrdup_a().
4140         * src/inputdialog.[ch]: added combo mode.
4141           input_dialog_combo(): new.
4142         * src/prefs_common.[ch]: added MIME open command setting.
4143           prefs_common_{read, save}_config(): read / write command history.
4144         * src/mimeview.c: mimeview_open_with(): use combo input dialog.
4145         * src/utils.[ch]: add_history(): history list management function.
4146
4147 2001-11-04
4148
4149         * src/compose.c: select templates from the menu.
4150           compose_set_template_menu(): new.
4151           compose_reflect_prefs_all(): new.
4152           compose_template_apply(): new. Use dummy MsgInfo for parsing.
4153         * src/template.[ch]: store template list to the static heap.
4154           template_get_config(): new.
4155           template_set_config(): new.
4156         * src/prefs_template.c: don't store template list to the global area.
4157         * src/template_select.[ch]: removed.
4158         * src/quote_fmt_parse.y: check folderitem when quoting messages.
4159         * src/mh.c: mh_add_msg(): try to copy file whenever link() failed
4160           (thanks to OSHIRO Naoki).
4161
4162 2001-11-03
4163
4164         * src/utils.[ch]: get_template_dir(): new.
4165         * src/template.c: use get_template_dir().
4166
4167 2001-11-02
4168
4169         * src/prefs_template.c: modified the dialog layout.
4170           Added symbol description button.
4171         * src/summaryview.c: show an arrow mark to the column of the sort
4172           target.
4173           summary_set_column_titles(): new.
4174         * INSTALL
4175           INSTALL.jp
4176           README
4177           README.jp
4178           TODO
4179           TODO.jp: updated the documents.
4180
4181 2001-11-02
4182
4183         * src/Makefile.am: add missing checkbox_{on, off}.xpm.
4184         * src/textview.c: textview_key_pressed()
4185           src/mimeview.c: mimeview_key_pressed()
4186           src/summaryview.c: summary_key_pressed(): delete messages with
4187           Delete key.
4188
4189 2001-11-01
4190
4191         * src/socket.c: ssl_gets(): fixed a bug that caused infinite loop
4192           when SSL_read() returned 0.
4193         * src/utils.[ch]: strcrchomp(): new. It removes CR from the tail
4194           of strings.
4195         * src/quote_fmt_parse.y: convert CRLF to LF when inserting messages.
4196           Add prototype of yylex() to suppress the warning.
4197         * merged the template function.
4198         * src/prefs_template.[ch]
4199           src/template.[ch]
4200           src/template_select.[ch]: new.
4201           Renamed prefs_templates_* -> prefs_template_*.
4202         * src/compose.c: added template menu. Added replyinfo to Compose.
4203         * src/mainwindow.c: added template setting menu.
4204         * src/quote_fmt_lex.l: output literal tab and return as is.
4205         * src/prefs_common.c: changed the pref. name of quote format to
4206           'reply_quote_{mark, format}' and 'fw_quote_{mark, format}'.
4207
4208 2001-10-31
4209
4210         * src/prefs_common.[ch]: added Quote tab, and moved the quote
4211           setting from Compose tab.
4212         * merged the new quote format parser.
4213         * src/quote_fmt_lex.h
4214           src/quote_fmt.h
4215           src/quote_fmt_lex.l
4216           src/quote_fmt_parse.y: new files for quote format parser.
4217         * configure.in: added checks for lex and yacc.
4218         * src/compose.c: compose_quote_file(), compose_quote_parse_fmt():
4219           removed.
4220           compose_quote_fmt(): new.
4221         * src/prefs_common.[ch]: added forward format setting to the
4222           Quote tab. Updated the quote description dialog.
4223         * src/quote_fmt_parse.y: fixed bugs that tried to read file even
4224           if they couldn't get text part.
4225
4226 2001-10-31
4227
4228         * src/pixmaps/checkbox_off.xpm
4229           src/pixmaps/checkbox_on.xpm: new.
4230         * src/account.c: display `get all' status with the checkbox pixmaps.
4231
4232 2001-10-30
4233
4234         * src/send.c: code cleanup. Pass account prefs structure instead
4235           of many arguments.
4236           Query password for SMTP AUTH if not specified (thanks to Mio).
4237
4238 2001-10-30
4239
4240         * src/procheader.c: procheader_parse(): fixed a bug that didn't
4241           parse multiple message-id in In-Reply-To: header correctly
4242           (thanks to KAJIWARA).
4243
4244 2001-10-29
4245
4246         * src/account.c: enabled 'Get all' setting by clicking the 'G'
4247           column of account list, and added some description.
4248         * src/prefs_common.c: prefs_send_create(): added a description
4249           for outgoing codeset.
4250
4251 2001-10-28
4252
4253         * src/prefs_account.[ch]: moved inbox entry to the receive tab,
4254           and added select button and short description.
4255         * src/Makefile.am: added SYSCONFDIR to CPPFLAGS.
4256         * src/procmime.c:
4257           procmime_get_mime_type_table()
4258           procmime_get_mime_type_list(): modified so that
4259           $(SYSCONFDIR)/mime.types (or /etc/mime.types if not found) and
4260           $(HOME)/.sylpheed/mime.types are read.
4261
4262 2001-10-27
4263
4264         * src/prefs_account.c: moved the address auto-setting to the compose
4265           tab.
4266           prefs_account_create(): removed gtk_widget_show_all() for proper
4267           window size.
4268         * src/prefs_common.c: changed "Program path" to "Command".
4269
4270 2001-10-26
4271
4272         * src/textview.c: textview_set_font(): support Russian charset
4273           on EUC-JP locale.
4274         * src/summaryview.c: summary_delete(): (hopefully) fixed the crash
4275           bug on deleting.
4276         * prefs_account.c
4277           prefs_common.c
4278           prefs_summary_column.c: minor improvements to the English.
4279         * src/main.c: get_queued_message_num(): don't output the warning
4280           when queueing folder is not found.
4281
4282 2001-10-21
4283
4284         * version 0.6.4
4285
4286 2001-10-21
4287
4288         * src/prefs_summary_column.[ch]:
4289           made prefs_summary_column_get_config() public.
4290         * src/summaryview.c: summary_ctree_create(): some code cleanup.
4291         * configure.in: moved the position of SSL checking after LDAP
4292           for linking problem.
4293
4294 2001-10-21
4295
4296         * src/mainwindow.c
4297           src/summaryview.c: allowed reedit in the outbox.
4298         * src/prefs_summary_column.[ch]: new. UI for setting summary
4299           columns.
4300         * src/mainwindow.[ch]: main_window_set_summary_column(): new.
4301           It calls summary_set_column_order().
4302         * src/summaryview.[ch]:
4303           summary_ctree_create(): new. separated from summary_create().
4304           summary_set_column_order(): new. It destroys the current
4305           CTree and replaces it with the new one.
4306
4307 2001-10-19
4308
4309         * src/smtp.[ch]: smtp_from(): abort if auth failed.
4310         * changed C++-style comments into C-style in some files, and
4311           removed unnecessary commented out codes.
4312         * src/addrcache.[ch]
4313           src/addressbook.c
4314           src/addrindex.[ch]
4315           src/jpilot.[ch]
4316           src/syldap.[ch]: updated the addressbook code, and fixed the
4317           thread bug of LDAP.
4318         * src/ldif.[ch]
4319           src/importldif.[ch]: new.
4320
4321 2001-10-18
4322
4323         * src/about.c: added some items to compiled-in features.
4324         * src/addr_compl.c: changed LOG_MESSAGE to debug_print.
4325         * src/addressbook.c: changed "V-Card" to "vCard".
4326           addressbook_edit_address_cb(): added
4327           invalidate_address_completion() to the point address is changed.
4328         * src/codeconv.c: changed C++-style comments into C-style.
4329
4330 2001-10-17
4331
4332         * src/compose.c: changed "Send" shortcut to Ctrl+Enter.
4333
4334 2001-10-16
4335
4336         * src/inc.c: fixed a bug that crashed sylpheed if Cancel button
4337           was clicked twice.
4338
4339 2001-10-16
4340
4341         * src/procmsg.c: procmsg_get_thread_tree(): complete the unfinished
4342           threads.
4343         * src/summaryview.c:
4344           summary_thread_init(): separated from summary_thread_build(). 
4345           summary_thread_build(): removed the codes for initialization.
4346           summary_set_ctree_from_list(): call summary_thread_init() instead
4347           of summary_thread_build().
4348           summary_filter(): fixed a bug that didn't moved messages despite
4349           of immediate execution setting.
4350
4351 2001-10-14
4352
4353         * src/procmsg.c: procmsg_get_thread_tree(): new. It generates the
4354           reversed thread tree from message list.
4355         * src/summaryview.c: summary_set_ctree_from_list(): prepend the
4356           node to the head instead of appending to the tail. This prevents
4357           the traverse of node list inside of the GtkCTree, and considerably
4358           speeds up the summary display (the order is O(n^2) -> O(n)).
4359
4360 2001-10-12
4361
4362         * src/prefs_common.c
4363           src/summaryview.[ch]: initial modification for reorderable columns.
4364
4365 2001-10-12
4366
4367         * src/procmsg.c: procmsg_get_mark_sum(), mark_sum_func(): fixed a
4368           memory leak.
4369         * src/folderview.c: folderview_button_pressed(): code cleanup, and
4370           turn sensitivity off if main window is locked.
4371         * src/syldap.c: syldap_read_data(): removed unnecessary and
4372           unportable sched_yield().
4373
4374 2001-10-11
4375
4376         * src/folderview.c: renamed "Update folder tree" context menu to
4377           "Rescan folder tree", and made "Update folder tree" only updates
4378           folder status.
4379           folderview_update_all_node(): don't show message dialog.
4380         * src/gtkutils.c: gtkut_widget_get_uposition()
4381           src/mainwindow.c: main_window_popup(): clip the coordinate to
4382           nonnegative value.
4383
4384 2001-10-10
4385
4386         * src/utils.c: to_human_readable(): made a bit of optimization.
4387         * src/summaryview.c: summary_delete(): fixed a focus problem.
4388           summary_find_{prev,next}_msg(): new. They find previous/next
4389           message that is not deleted.
4390         * src/prefs_filter.c: scroll CList automatically if moved row
4391           becomes not fully visible.
4392
4393 2001-10-09
4394
4395         * updated some autotool scripts.
4396         * src/codeconv.c: conv_encode_header(): fixed a bug that caused
4397           infinite loop when failed to convert encoding.
4398         * src/codeconv.[ch]: a fix for older version of libjconv
4399           (jconv_info_get_current_codeset() returned "EUCJP" instead of
4400           "EUC-JP").
4401
4402 2001-10-08
4403
4404         * version 0.6.3
4405
4406 2001-10-08
4407
4408         * src/compose.c: compose_write_to_file()
4409           src/codeconv.c: conv_codeset_strdup(): more workaround for
4410           libjconv problem on C locale.
4411         * src/editldap_basedn.c: fixed segfault when opening dialog.
4412         * src/utils.c: is_next_mbs()
4413           src/compose.c: compose_wrap_line(), compose_wrap_line_all():
4414           changed MB_CUR_MAX to MB_LEN_MAX for compliance to ANSI C.
4415         * configure.in: increased the reqired version of GPGME to 0.2.3.
4416         * src/pop.c: pop3_getauth_user_recv(): fixed a bug that closed
4417           the receive dialog when POP3 server refused normal authentication.
4418
4419 2001-10-07
4420
4421         * src/prefs_common.c: prefs_receive_create(): correction to English.
4422         * src/compose.c: compose_set_ext_editor_sensitive(): fixed a bug
4423           that didn't set the menu sensitivity correctly (thanks to
4424           Melvin Hadasht).
4425         * src/summaryview.c: delete messages permanently if the current
4426           folder is trash and 'delete' operation is executed.
4427           Fixed the bug that didn't select the last row correctly (thanks
4428           to Alfons Hoogervorst).
4429         * src/folder.[ch]: folder_item_remove_msgs(): new. It removes
4430           all messages given in the list.
4431
4432 2001-10-05
4433
4434         * src/summaryview.c: summary_show(): fixed a bug that didn't show
4435           message even if the 'open unread message on entering folder'
4436           option was turned on.
4437
4438 2001-10-03
4439
4440         * src/procmime.c: procmime_get_text_content(): supported HTML.
4441
4442 2001-10-02
4443
4444         * src/summaryview.[ch]: implemented new locking mechanism, and
4445           replaced every static locks with summary_lock(), summary_unlock(),
4446           and added locks to some extra functions.
4447           This fixes a bug that caused segfault when 'd' (delete) key
4448           was kept pressing.
4449
4450 2001-10-01
4451
4452         * src/addressbook.c: addressbook_folder_load_person(): fixed a bug
4453           that caused segfault (thanks to Stefaan A Eeckels).
4454
4455 2001-09-30
4456
4457         * src/textview.[ch]: added textview_set_position().
4458         * src/messageview.[ch]: added messageview_set_position().
4459         * src/addrbook.c
4460           src/addrcache.c
4461           src/addressadd.c
4462           src/addressbook.c
4463           src/addrindex.c
4464           src/addritem.c
4465           src/editaddress.c
4466           src/editbook.c
4467           src/editgroup.c
4468           src/editjpilot.c
4469           src/editldap.c
4470           src/editldap_basedn.c
4471           src/editvcard.c
4472           src/jpilot.c
4473           src/mgutils.c
4474           src/syldap.c
4475           src/vcard.c: converted C++-style comments into C-style one.
4476         * src/imap.c: QUOTE_IF_REQUIRED(): new macro. Copy string into
4477           new buffer and quote with double quotes if required.
4478           imap_status(), imap_cmd_login(), imap_cmd_list(),
4479           imap_cmd_do_select(), imap_cmd_create(), imap_cmd_delete(),
4480           imap_cmd_copy(): use QUOTE_IF_REQUIRED().
4481         * compose.c: compose_write_to_file(): workaround for the problem
4482           when using libjconv and 8bit codes cannot be converted on C
4483           locale.
4484         * codeconv.[ch]: added "ANSI_X3.4-1968" to encoding strings.
4485           conv_codeset_strdup(): don't convert if source and destination
4486           codeset are identical.
4487
4488 2001-09-30
4489
4490         * src/textview.[ch]: textview_search_string_backward(): new.
4491           Add the new member cur_pos to TextView.
4492           Connect button_press_event with gtk_signal_connect_after() to
4493           obtain the correct editable position.
4494
4495 2001-09-27
4496
4497         * src/folder.c: folder_write_list_recursive(): preserve unthreaded
4498           state.
4499
4500 2001-09-26
4501
4502         * src/summaryview.c: modified the layout of popup menu.
4503
4504 2001-09-25
4505
4506         * src/folder.c
4507           src/folder.h
4508           src/mainwindow.c
4509           src/summaryview.c: applied the patch from Alfons that allows
4510           threading setting for each folders (tnanks!).
4511
4512 2001-09-23
4513
4514         * src/message_search.[ch]: new. A Dialog for searching in current
4515           message.
4516         * src/gtkutils.[ch]: gtkut_text_match_string(): new. Compare the
4517           text in current position of GtkText and given wide-character
4518           string.
4519         * src/messageview.[ch]: messageview_search_string()
4520           src/textview.[ch]: textview_search_string(): return TRUE if
4521           found.
4522         * src/textview.[ch]: remember the beginning of body.
4523
4524 2001-09-21
4525
4526         * src/procmime.c: procmime_get_first_text_content(): modified so
4527           that it search entire MIME structure.
4528         * src/summary_search.c: summary_search_execute(): use
4529           strdup_mbstowcs() instead of macro. Display matched message.
4530
4531 2001-09-20
4532
4533         * src/inc.c: fix for background POP3 hangs and crashes (thanks to
4534           Sergey Vlasov).
4535         * src/summary_search.c: added body searching function.
4536         * src/procmime.[ch]: procmime_find_string(): changed arguments
4537           and return value. Added case sensitivity option.
4538
4539 2001-09-20
4540
4541         * src/procmime.[ch]:
4542           procmime_find_string()
4543           procmime_find_string_part(): new. It searchs the string from
4544           messages.
4545           Renamed procmime_get_text_part() to
4546           procmime_get_first_text_content().
4547           procmime_get_text_content(): new. It returns the text contents
4548           of the specified MIME part.
4549           procmime_mimeinfo_next(): new. It returns the next node of
4550           MimeInfo tree.
4551
4552 2001-09-19
4553
4554         * src/procmime.c: procmime_get_text_part(): modified so that it
4555           finds a text part in nested multipart message correctly.
4556         * src/procmime.h: added an example of MimeInfo structure.
4557         * src/mimeview.c: mimeview_show_message(): search the first text
4558           part.
4559
4560 2001-09-17
4561
4562         * src/mainwindow.c: ac_menu_popup_closed(): fixed the bug that
4563           caused segfault. Changed 'Preferences per account...' menu item.
4564
4565 2001-09-17
4566
4567         * version 0.6.2
4568
4569 2001-09-16
4570
4571         * src/addrindex.c: translate the "Common address" and "Personal
4572           address" from old addressbook.
4573
4574 2001-09-12
4575
4576         * src/utils.c: get_quote_level(): some optimization and bugfixes.
4577         * src/codeconv.[ch]: conv_get_current_locale(): new.
4578         * src/editaddress.c: edit_person_page_basic(): reverse the order