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