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