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