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