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