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