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