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