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