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