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