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