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