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