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