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