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