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