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