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