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