update man page
[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     &