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