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