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