* fix some of the tedious value checking, as specified in
[modest] / ChangeLog2
1 2007-08-01  Murray Cumming  <murrayc@murrayc.com>
2
3         * src/modest-tny-account-store.c: (show_password_warning_only),
4         (show_wrong_password), (request_password_and_wait), (get_password),
5         (modest_tny_account_store_alert): Remove the (incomplete anyway) 
6         attempts to show UI only in the main context, which used g_idle_add() 
7         and mainloops, because tinymail now guarantees that it only calls these 
8         callbacks in the mainloop with the gdk lock. This makes everything much 
9         simpler.
10
11 2007-08-01  Murray Cumming  <murrayc@murrayc.com>
12
13         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
14         Handle TNY_ACCOUNT_ERROR_TRY_CONNECT_SERVICE_UNAVAILABLE in the same 
15         way as TNY_ACCOUNT_ERROR_TRY_CONNECT_HOST_LOOKUP_FAILED, showing an 
16         error dialog, instead of ignoring it.
17
18 2007-08-01  Murray Cumming  <murrayc@murrayc.com>
19
20         * src/maemo/modest-msg-view-window.c:
21         (modest_msg_view_window_get_header),
22         (modest_msg_view_window_last_message_selected):
23         Added comments to explain the use of priv->header_model.
24         * src/modest-ui-dimming-rules.c:
25         (modest_ui_dimming_rules_on_open_msg),
26         (modest_ui_dimming_rules_on_mark_as_read_msg),
27         (modest_ui_dimming_rules_on_mark_as_unread_msg),
28         (modest_ui_dimming_rules_on_remove_attachments),
29         (_invalid_attach_selected), (_selected_msg_marked_as):
30         Renamed _marked_as_deleted() to _selected_message_is_marked_as_deleted(), 
31         and changed the parameter to a ModestMainWindow to make it clearer that 
32         it never uses any other kind of window.
33         Added _message_is_marked_as_deleted() for examining a ModestMsgViewWindow 
34         instead of the selected message.
35         I notice that much of the dimming code and the ModestMsgViewWindow code 
36         hard-codes the assumption that the viewed message is always selected in 
37         the header view. This does not seem wise or simple.
38
39         (modest_ui_dimming_rules_on_delete_msg): For a ModestMsgViewWindow, 
40         examine the actual message instead of whatever might be selected 
41         in the header view. This stops the delete toolbar button and menu item
42         from being dimmed when opening a message view the search UI, 
43         partially fixing projects.maemo.org bug NB#63811.
44
45         However, when actually deleting, I now get this warning:
46         "tny_header_set_flags: This is a header instance for a new message. 
47         Only priority and attachment flags are supported"
48
49 2007-07-30  Johannes Schmid <johannes.schmid@openismus.com>
50
51         * src/modest-ui-actions.c: (modest_ui_actions_on_send):
52         
53         Show account wizard if no accounts are defined while sending
54         (automatic sending after the account wizard finished does not
55         work because it takes some time until the account manager
56         synchronizes everything. (projects.maemo.org NB#62792)
57         
58 2007-07-30  Murray Cumming  <murrayc@murrayc.com>
59
60         * src/modest-tny-account-store.c: (on_account_removed),
61         (on_account_changed): Emit the ACCOUNT_UPDATE signal so that the 
62         account is removed from the View menu. We have TnyAccountStore 
63         and ModestTnyAccountStore signals that seem very similar, but this 
64         seems to work for now.
65
66         * src/maemo/modest-main-window.c:
67         (on_show_account_action_activated): Prevent dereference 
68         of a NULL if the accoutn does not really exist, though that 
69         should not happen anymore.
70
71         This fixes projects.maemo.org bug NB#64606.
72
73 2007-07-30  Murray Cumming  <murrayc@murrayc.com>
74
75         * src/modest-ui-actions.c: (run_account_setup_wizard),
76         (modest_ui_actions_on_accounts): Revert a change that set these 
77         to modal dialogs, freezing the UI when they show secondary dialogs.
78         This fixed projects.maemo.org bug NB#64519.
79
80 2007-07-27  Murray Cumming  <murrayc@murrayc.com>
81
82         * src/widgets/modest-header-view-render.c:
83         (_modest_header_view_compact_header_cell_data):
84         Some checks and initialization to try to deal with a crash, 
85         probably ineffective.
86
87 2007-07-27  Murray Cumming  <murrayc@murrayc.com>
88
89         * src/maemo/modest-maemo-utils.c:
90         (modest_maemo_utils_get_supported_secure_authentication_methods):
91         Make sure that we have a connection, asking the user for one 
92         if necessary.
93         * src/maemo/modest-main-window.c: (modest_main_window_on_show): 
94         Check for a connection before showing the wizard, because 
95         the wizard needs a connection to check for server capabilities.
96
97 2007-07-27  Murray Cumming  <murrayc@murrayc.com>
98
99         * src/maemo/modest-account-view-window.c:
100         (on_new_button_clicked): Remember the wizard dialog instance, 
101         so we can just present it again if necessary. This prevents 
102         multiple windows from appearing if you click again quickly on the 
103         New button before the dialog appears, fixing projects.maemo.org 
104         bug NB#64169.
105
106 2007-07-27  Murray Cumming  <murrayc@murrayc.com>
107
108         * src/maemo/modest-main-window.c: (modest_main_window_on_show):
109         Offer a connection dialog if there is no connection when 
110         starting modest. This should fix projects.maemo.org bug NB#61134.
111
112 2007-07-27  Murray Cumming  <murrayc@murrayc.com>
113
114         * src/maemo/modest-msg-edit-window.c: (replace_with_attachments):
115         Reverted my last commit. I was able to fix the build by doing 
116         apt-get install wpeditor0 (replacing other wpeditor packages) and 
117         an explicit apt-get install wpeditor-dev to upgrade the -dev 
118         package.
119
120 2007-07-27  Murray Cumming  <murrayc@murrayc.com>
121
122         * src/maemo/modest-msg-edit-window.c: (replace_with_attachments):       
123         Commented out the use of wp_text_buffer_replace_image() 
124         because it does not exist, to break the build. Added a TODO for it.
125
126 2007-07-26  Murray Cumming  <murrayc@murrayc.com>
127
128         * src/modest-tny-account-store.c: (recreate_all_accounts):
129         Recreate them even if they were NULL before. I guess something 
130         else was already creating them before, or this would never 
131         have worked.
132         (modest_tny_account_store_get_server_account): Make sure that 
133         the tny accounts have been created before trying to find one.
134         This allows libmodest_dbus_client_compose_mail() to work 
135         when the UI is not yet visible.
136         This is probably useful in other cases too.
137
138         (get_password): When the password is wrong after it is entered 
139         in the protected password dialog, show an info banner (in an 
140         idle handler) before showing the protected password dialog 
141         again.
142
143 2007-07-26  Murray Cumming  <murrayc@murrayc.com>
144
145         * src/modest-ui-actions.h:
146         * src/modest-ui-actions.c: Added 
147         modest_do_refresh_current_folder() containing some code from 
148         modest_ui_actions_on_send_receive().
149         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_receive):
150         Call modest_do_refresh_current_folder() before refreshing the 
151         requested account, as in modest_ui_actions_on_send_receive(). 
152         This is strange, but seems to be necessary to show new mails.
153         Now new emails are finally visible in the UI when downloaded 
154         via the automatic update interval, fixing bug NB#57458.
155         This also works because bug NB#57458 has been fixed somehow.
156
157 2007-07-26  Murray Cumming  <murrayc@murrayc.com>
158
159         * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_filter):
160         printf more details when we get unhandled D-Bus methods, because 
161         it is interesting.
162
163         * src/modest-mail-operation.c: (update_account_thread):
164         Comment out the tny_camel_pop_store_account_reconnect(), because this 
165         is apparently no longer needed, and it did not work before anyway. 
166         See the comment in the code.
167
168         * src/modest-search.c: (modest_search_folder): Ignore deleted emails, 
169         by checking the header flags. This fixes projects.maemo.org bug 
170         NB#64225.
171
172 2007-07-25  Murray Cumming  <murrayc@murrayc.com>
173
174         * src/maemo/modest-maemo-utils.h: 
175         * src/maemo/modest-maemo-utils.c: Added 
176         modest_maemo_show_information_note_in_main_context_and_forget().
177         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
178         Use the new function to show simple error dialogs in the main 
179         context, though question dialogs are still in the current context, 
180         which is unfortunately usually not the main context. This should 
181         fix some hangs.
182
183 2007-07-25  Murray Cumming  <murrayc@murrayc.com>
184
185         * src/modest-tny-account-store.c: (get_password):
186         Never save the entered username and password in gconf, 
187         because the UI spec says we should not. This helps 
188         slightly with projects.maemo.org bug NB#63671.
189
190 2007-07-25  Murray Cumming  <murrayc@murrayc.com>
191
192         * src/widgets/modest-msg-edit-window.h:
193         * src/maemo/modest-msg-edit-window.c: (create_stream_for_uri):
194         Moved some code here to make it simpler.
195         (modest_msg_edit_window_attach_file_one): Renamed from 
196         modest_msg_edit_window_attach_file_interactive().
197         (modest_msg_edit_window_offer_attach_file): Renamed from 
198         modest_msg_edit_window_attach_file() and used 
199         modest_msg_edit_window_attach_file_one() instead of 
200         copy/pasting the code. The old code for one was not using 
201         GnomeVFS. This allows use of smb:// URLs when using send-as 
202         from external applications, fixing bug NB#63741.
203
204         (modest_msg_edit_window_insert_image),
205         (modest_msg_edit_window_add_attachment_clicked):
206         * src/modest-ui-actions.c: (modest_ui_actions_on_attach_file):
207         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_compose_mail):
208         Adapted to the new function names.
209
210 2007-07-25  Murray Cumming  <murrayc@murrayc.com>
211
212         (modest_platform_set_update_interval): Set the alarm recurrence 
213         fields so that auto-update does not just happen the first time.
214         This should have fixed projects.maemo.org bug NB#63938.
215
216         When this happens you can see a printf when the D-Bus method is 
217         called:
218         GLIB DEBUG default - debug: modest_dbus_req_handler: method received: SendReceive
219
220         However, I do not actually seem to get new POP messages even when 
221         clicking the refresh button manually. A restart gets them. 
222         This might be a problem in today's tinymail only.
223
224 2007-07-24  Murray Cumming  <murrayc@murrayc.com>
225
226         * src/maemo/modest-maemo-global-settings-dialog.c:
227         (current_connection):
228         Avoid a crash (probably only in scratchbox) when strcmp()ing a 
229         NULL when closing the dialog.
230
231 2007-07-24  Murray Cumming  <murrayc@murrayc.com>
232
233         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_delete_message):
234         Remove the hacky send/receive that didn't work, and instead 
235         refilter the treemodel to make the deleted email really vanish from 
236         the UI (though the delete-from-menu code does has commented out 
237         the code that does that). This fixes projects.maemo.org bug 
238         NB#62859.
239
240 2007-07-24  Murray Cumming  <murrayc@murrayc.com>
241
242         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_delete_message):
243         Try a couple of tricks to force the treeview to update (
244         poke the folder, and do a send/receive refresh), but the deleted 
245         email still appears with a strike-through instead of really being 
246         removed.
247
248 2007-07-23  Murray Cumming  <murrayc@murrayc.com>
249
250         * src/dbus_api/modest-dbus-callbacks.c:
251         (add_single_folder_to_list): Ignore TnyMergeFolder folders, 
252         because their ID is not human-readable (see the comment about 
253         improvements needed to the osso-email-interface API) and 
254         TnyMergeFolder::get_id_func() currently crashes with DBC enabled. 
255
256 2007-07-23  Murray Cumming  <murrayc@murrayc.com>
257
258         * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_handler),
259         (add_folders_to_list), (on_dbus_method_get_folders),
260         (modest_dbus_req_filter):
261         * src/maemo/modest-maemo-utils.c:
262         (on_camel_account_get_supported_secure_authentication):
263         * src/maemo/modest-main-window.c: (modest_main_window_set_style),
264         (on_header_view_focus_in):
265         * src/modest-email-clipboard.c: (modest_email_clipboard_set_data):
266         * src/modest-formatter.c: (modest_formatter_create_body_part):
267         * src/modest-mail-operation.c: (recurse_folders),
268         (update_account_thread), (get_msgs_full_thread),
269         (modest_mail_operation_get_msgs_full),
270         (modest_mail_operation_xfer_msgs):
271         * src/modest-search.c: (search_mime_part_and_child_parts),
272         (modest_search_account), (modest_search_all_accounts):
273         * src/modest-tny-account.c:
274         (modest_tny_account_get_special_folder), (recurse_folders):
275         * src/modest-tny-local-folders-account.c:
276         (modest_tny_local_folders_account_query_passes):
277         * src/modest-tny-msg.c: (copy_mime_part),
278         (modest_tny_msg_find_body_part_from_mime_part):
279         * src/modest-tny-send-queue.c: (modest_tny_send_queue_cancel),
280         (modest_tny_send_queue_try_to_send):
281         * src/modest-ui-actions.c: (modest_ui_actions_on_delete_message),
282         (_modest_ui_actions_open), (download_uncached_messages),
283         (reply_forward), (modest_ui_actions_on_copy),
284         (modest_ui_actions_on_details), (has_retrieved_msgs),
285         (msgs_move_to_confirmation), (open_msg_for_purge_cb),
286         (do_headers_action):
287         * src/modest-ui-dimming-rules.c: (_already_opened_msg),
288         (_selected_msg_marked_as), (_msg_download_completed),
289         (_selected_msg_sent_in_progress):
290         * src/widgets/modest-attachments-view.c:
291         (modest_attachments_view_set_message):
292         * src/widgets/modest-msg-view.c: (find_cid_image):
293         * tests/check_folder-transfer.c: (find_folders):
294         * tests/check_update-account.c: (func):
295         * tests/dbus_api/test_get_folders.c: (main):
296         Checked all uses of tny_iterator_get_current(), making sure 
297         that the object is unreferenced (3 or 4 places did not), 
298         and adding checks for NULL.
299
300 2007-07-23  Murray Cumming  <murrayc@murrayc.com>
301
302         * src/dbus_api/modest-dbus-callbacks.c:
303         (on_idle_open_default_inbox): Make sure that the application UI is 
304         visible.
305         * src/maemo/easysetup/modest-easysetup-wizard.c:
306         (on_entry_invalid_character): Show the word whitespace instead 
307         of (null) in the banner when whitespace was entered.
308         (show_error): Add a comment that  this does not work in 
309         Maemo Bora, though we do not know why.
310
311 2007-07-23  Murray Cumming  <murrayc@murrayc.com>
312
313         * src/modest-tny-account.c:
314         (modest_tny_account_get_special_folder): Use an if instead of 
315         an assert for when the parent account name is NULL, because this 
316         might be causing a crash in projects.maemo.org bug 63192.
317         * src/modest-mail-operation.c:
318         (modest_mail_operation_send_new_mail_cb),
319         (modest_mail_operation_remove_folder): unref the folder that is 
320         returned from modest_tny_account_get_special_folder().
321
322 2007-07-23  Murray Cumming  <murrayc@murrayc.com>
323
324         * src/modest-ui-actions.c:
325         (modest_ui_actions_on_password_requested):
326         Show mail_ib_login_cancelled info banner when the user cancels 
327         the protected password dialog, to fix projects.maemo.org 
328         bug NB#63617.
329
330 2007-07-23  Murray Cumming  <murrayc@murrayc.com>
331
332         * src/maemo/modest-account-settings-dialog.c:
333         (create_page_outgoing): Put this page in a GtkScrolledWindow, 
334         matching the UI mock-up in the UI spec, and allowing access 
335         to all widgets even when the on-screen keyboard is active.
336
337 2007-07-23  Murray Cumming  <murrayc@murrayc.com>
338
339         Reverted this previous commit from Johannes, 
340         because the scrollbars are always visible and because 
341         I think we only need it on onepage of the account 
342         settings, not the account wizard.
343         (I wrote the wrong instructions in the bug.)
344
345         * src/maemo/easysetup/modest-easysetup-wizard.c:
346         Added scrollbars to account wizard dialog.
347         Fixed projects.maemo.org NB #62744
348
349 2007-07-22  Johannes Schmid <johannes.schmid@openismus.com>
350
351         * src/maemo/easysetup/modest-easysetup-wizard.c:
352         (create_page_user_details):
353         Use auto-cap for name (projects.maemo.org NB#63716)
354         * src/widgets/modest-account-view.c: (on_account_busy_changed):
355
356 2007-07-22  Armin Burgmeier  <armin@openismus.com>
357
358         * src/maemo/modest-ui-actions.c: Use current account instead of
359         default account for creating viewer windows, so that the viewer
360         window knows to which account the viewed message belongs.
361
362         * src/maemo/modest-msg-view-window.c: Destroy the window when the
363         corresponding account is deleted. This fixes projects.maemo.org bug
364         NB#62936.
365
366 2007-07-18  Armin Burgmeier  <armin@openismus.com>
367
368         * src/maemo/modest-connection-specific-smtp-edit-window.c: Don't let
369         the dialog close after entering an invalid port number and clicking
370         OK. This fixes projects.maemo.org bug NB#63602.
371
372 2007-07-18  Armin Burgmeier  <armin@openismus.com>
373
374         * src/modest-tny-account-store.c:
375         (get_server_accounts): Set parent modest account name for each
376         connection-specific transport account so that special folders of such
377         an account can be looked up. This fixes a crash when changing account
378         settings. This might also be related to projects.maemo.org bug
379         NB#63594.
380
381 2007-07-16  Armin Burgmeier  <armin@openismus.com>
382
383         * src/modest-ui-actions.c: Added a button to create a folder to the
384         move-to dialog. This fixes projects.maemo.org bug NB#.
385
386 2007-07-16  Johannes Schmid <johannes.schmid@openismus.com>
387
388         * src/maemo/easysetup/modest-easysetup-wizard.c:
389         Added scrollbars to account wizard dialog.
390         Fixed projects.maemo.org NB #62744
391
392 2007-07-16  Murray Cumming  <murrayc@murrayc.com>
393
394         * src/widgets/modest-msg-view.h:
395         * src/widgets/modest-msg-view.c:
396         Added modest_msg_view_get_message_is_empty() but this needs 
397         to be implemented.
398         * src/maemo/modest-msg-edit-window.c: (message_is_empty):
399         Check if there is any text in the message yet.
400         But this needs to be implemented properly.
401         (modest_msg_edit_window_toggle_find_toolbar):
402         * src/maemo/modest-msg-view-window.c:
403         (modest_msg_view_window_toggle_find_toolbar):
404         Show a banner warning if there is no text to search, when 
405         trying to start a search. This partially fixes 
406         projects.maemo.org bug NB#62350.
407
408 2007-07-13  Murray Cumming  <murrayc@murrayc.com>
409
410         * src/modest-mail-operation.c: (update_account_thread):
411         Initialized num_new_headers to fix the build.
412
413 2007-07-13  Murray Cumming  <murrayc@murrayc.com>
414
415         * src/modest-account-mgr.c: (modest_account_mgr_account_names):
416         Ignore modest accounts whose server accounts don't exist in gconf.
417         This prevents us trying to create TnyAccount instances for those 
418         server accounts when the server account has been removed from gconf, 
419         but the parent modest account has not yet been removed from modest.
420         I don't know why this is only noticeable now. It was probably just 
421         a harmeless g_warning() anyway.
422
423 2007-07-13  Murray Cumming  <murrayc@murrayc.com>
424
425         * src/modest-ui-dimming-rules.c: (_selected_folder_is_root):
426         Fix my previous commit, to avoid unrefing a NULL TnyFolderStore.
427
428 2007-07-12  Armin Burgmeier  <armin@openismus.com>
429
430         * src/maemo/modest-main-window.c: Make default account appear bold
431         in view, tools/send & receive and toolbar/send & receive SCM menus.
432         This fixes projects.maemo.org bug NB#59010.
433
434 2007-07-12  Murray Cumming  <murrayc@murrayc.com>
435
436         * src/modest-ui-dimming-rules.c: (_selected_folder_is_root):
437         Add a short-cut, by checking if the folder store is an account.
438         This ensures that the Sort menu item and toolbar is dimmed for 
439         the local-folders account root item, fixing 
440         projects.maemo.org bug NB#62545.
441
442 2007-07-12  Murray Cumming  <murrayc@murrayc.com>
443
444         * src/modest-tny-account-store.c: (get_password):
445         Show the password dialog (via the signal) only in the mainloop, via 
446         an idle handler that we wait for. This could theoretically prevent 
447         hangs, though I worry that it could introduce some too.
448
449 2007-07-12  Murray Cumming  <murrayc@murrayc.com>
450
451         * src/gnome/modest-platform.c: (modest_platform_connect_and_wait):
452         * src/maemo/modest-platform.c: 
453         (modest_platform_connect_and_wait):
454         Take a TnyAccount* parameter and try to set it to online 
455         (a TnyCamel-only API), because tinymail sets accounts to offline 
456         when the user cancels a password dialog, and doesn't ask again until 
457         it has been set to online.
458         However, this is commented out because it causes a hang now.
459
460         (modest_platform_connect_and_wait_if_network_account):
461         * src/modest-mail-operation.c:
462         (modest_mail_operation_update_account):
463         * src/modest-platform.h:
464         * src/modest-ui-actions.c: (_modest_ui_actions_open),
465         (download_uncached_messages), (modest_ui_actions_on_send): Adapted.
466
467 2007-07-12  Armin Burgmeier  <armin@openismus.com>
468
469         * src/modest-error.h: Added MODEST_MAIL_OPERATION_FOLDER_EXISTS error.
470
471         * src/modest-mail-operation.c:
472         * src/modest-ui-actions.c: Check for already existing folder before
473         querying the server, show error message from camel if the request
474         still fails. This fixes projects.maemo.org bug NB#58701.
475
476 2007-07-12  Murray Cumming  <murrayc@murrayc.com>
477
478         * src/modest-tny-account-store.h:
479         * src/modest-tny-account-store.c: 
480         Added modest_tny_account_store_forget_password_in_memory(),
481         (get_server_accounts): Called modest_tny_account_store_forget_password_in_memory() 
482         when creating a new account, so that new passwords will be used, instead of 
483         us thinking that it's a second request as a result of a failed password again.
484
485 2007-07-12  Murray Cumming  <murrayc@murrayc.com>
486
487         * src/dbus_api/modest-dbus-callbacks.c:
488         (on_idle_open_message): If the message is in drafts then open it 
489         in an edit window instead of a view window. This fixes 
490         projects.maemo.org bug NB#63005.
491
492 2007-07-12  Murray Cumming  <murrayc@murrayc.com>
493
494         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message):
495         Avoided a harmless g_warning().
496
497 2007-07-12  Murray Cumming  <murrayc@murrayc.com>
498
499         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message),
500         Pass the modest account name, not the TnyAccount display name to 
501         modest_msg_view_window_new() so that the reply feature works,
502         fixing projects.maemo.org bug NB#62892.
503
504         * src/gnome/modest-msg-view-window.c: (modest_msg_view_window_new),
505         (modest_msg_view_window_new_with_header_model):
506         * src/maemo/modest-msg-view-window.c:
507         (modest_msg_view_window_new_with_header_model),
508         (modest_msg_view_window_new):
509         * src/modest-ui-actions.c: (reply_forward):
510         * src/widgets/modest-msg-view-window.h:
511         * src/widgets/modest-window.c: (modest_window_set_active_account):
512         Rename an account parameter to modest_account_name to make this clearer.
513
514 2007-07-11  Murray Cumming  <murrayc@murrayc.com>
515
516         * src/modest-ui-actions.h:
517         * src/modest-ui-actions.c: (headers_action_delete): Moved some code into 
518         modest_do_message_delete().
519         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_delete_message):
520         Call modest_do_message_delete(), hoping that this would cause messages 
521         to be really deleted from search instead of just marked with strike through.
522         Does not seem to help.
523
524 2007-07-11  Armin Burgmeier  <armin@openismus.com>
525
526         * src/widgets/maemo-folder-view.c (modest_folder_view_on_map): Set
527         priv->reselect to FALSE prior to calling
528         modest_folder_view_select_first_inbox_or_local() to prevent endless
529         recursion and thus a crash on startup.
530
531 2007-07-11  Armin Burgmeier  <armin@openismus.com>
532
533         * src/maemo/modest-account-settings-dialog.h: Include
534         <gtk/gtknotebook.h> to fix the build (at least for me).
535
536         * src/maemo/modest-platform.c (modest_platform_run_new_folder_dialog):
537         Use "New FolderN" as default suggested name if "New folder" already
538         exists, with N being the first free number, though never exceed "New
539         folder99" in which case we just fall back to "New Folder" even though
540         it already exists. This fixes projects.maemo.org bug NB#58663.
541
542 2007-07-11  Murray Cumming  <murrayc@murrayc.com>
543
544         * src/maemo/modest-account-view-window.c: (on_new_button_clicked):
545         Do not use gtk_dialog_run() to avoid modality hang problems. This fixes 
546         projects.maemo.org bug NB#62778.
547
548 2007-07-11  Murray Cumming  <murrayc@murrayc.com>
549
550         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
551         Ignore the wrong (for now) secure-smtp setting in the presets - 
552         just default to requiring secure authentication for SMTP, because 
553         that is most common.
554
555 2007-07-11  Johannes Schmid <johannes.schmid@openismus.com>
556
557         * src/widgets/modest-folder-view.c: (filter_row)
558         Do not show drafts folder (see UI specs)
559
560 2007-07-11  Johannes Schmid <johannes.schmid@openismus.com>
561
562         * src/modest-ui-actions.c:
563         Remove call to show_non_move_folders(TRUE) which was moved to a wrong
564         place and also not necessary.
565         
566         * src/widgets/modest-folder-view.c: (filter_row)
567         Guess folder type and hide Sent & Outbox if necessary.
568         Fixed project.maemo.org NB#57328
569
570 2007-07-11  Murray Cumming  <murrayc@murrayc.com>
571
572         * src/modest-ui-actions.h:
573         * src/modest-ui-actions.c:
574         (modest_ui_actions_on_delete_message):
575         Move some code into a new 
576         modest_ui_actions_refresh_message_window_after_delete() 
577         function so we can use it from elsewhere.
578
579         * src/dbus_api/modest-dbus-callbacks.c:
580         (on_idle_delete_message), (on_delete_message): Used an idle 
581         handler, as we do for the other D-Bus method handlers.
582         Call modest_ui_actions_refresh_message_window_after_delete() 
583         if the deleted message was open in a window. This fixed 
584         projects.maemo.org bug NB#62862.
585
586 2007-07-11  Murray Cumming  <murrayc@murrayc.com>
587
588         * src/modest-main.c: (main): Only show the UI at the start if 
589         the showui command line option was given. For instance,
590         run-standalone src/modest showui
591         Otherwise, we wait for the top_application D-Bus method to 
592         be sent by hildon-desktop when the application is selected 
593         from the menu.
594         This allows us to run without a UI when osso-global-search 
595         uses our D-Bus methods.
596
597 2007-07-11  Murray Cumming  <murrayc@murrayc.com>
598
599         * src/dbus_api/modest-dbus-api.h: Added a define for a 
600         top-application D-Bus method.
601         * src/dbus_api/modest-dbus-callbacks.c: 
602         (on_top_application),
603         (modest_dbus_req_handler): Handle the top-application D-Bus 
604         method, which might be an undocumented D-Bus signal sent by 
605         hildon-desktop when it starts the application from the menu.
606         But I am not sure and I need to test it on the device, because 
607         my scratchbox does not have the application in the menu now.
608         This method shows the main window, so that it can be invisible 
609         when started, for instance, just for email searching from 
610         osso-global-search.
611
612         * src/maemo/modest-main-window.c: (restore_settings),
613         (modest_main_window_new): Do not show the window immediately 
614         upon creation. We show it later.
615         * src/modest-widget-memory.c: (save_settings_paned):
616         Try (unsuccessfully) to avoid saving the paned position when 
617         it is not even visible. 
618         (restore_settings_paned): Do not allow a silly paned position.
619         This seems necessary when not showing the window at first.
620
621         * tests/dbus_api/Makefile.am:
622         * tests/dbus_api/test_top_application.c: (main): Test for the 
623         new D-Bus method.
624
625 2007-07-10  Murray Cumming  <murrayc@murrayc.com>
626
627         * src/modest-ui-dimming-rules.c:
628         (modest_ui_dimming_rules_on_new_msg),
629         (modest_ui_dimming_rules_on_reply_msg),
630         (modest_ui_dimming_rules_on_delete_msg),
631         (modest_ui_dimming_rules_on_details),
632         (modest_ui_dimming_rules_on_view_window_move_to),
633         (modest_ui_dimming_rules_on_view_previous),
634         (modest_ui_dimming_rules_on_view_next),
635         (_invalid_folder_for_purge): Added checks before 
636         casting the window. This looks like an actual 
637         logic error in _invalid_folder_for_purge(), because it 
638         tries to use a ModestMainWindow as a message window.
639
640 2007-07-10  Murray Cumming  <murrayc@murrayc.com>
641
642         * src/maemo/modest-account-settings-dialog.c:
643         (show_error): Use the same implementation as in 
644         modest-easysetup-wizard.c:
645         (on_entry_invalid_character): The logical ID contains a %s. 
646         Guessed what it should be.
647         (on_entry_max), (check_data), (on_response): Adapt to 
648         changed show_error().
649         (create_page_account_details): Really call 
650         modest_validating_entry_set_func() on the correct widgets.
651         * src/maemo/easysetup/modest-easysetup-wizard.c:
652         (on_entry_invalid_character): Fix the logical ID here too.
653  (create_page_account_details),
654         (create_page_user_details):
655         Really call 
656         modest_validating_entry_set_func() on the correct widgets.
657
658         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
659         Do not try to use the account if it is NULL.
660
661 2007-07-10  Johannes Schmid <johannes.schmid@openismus.com>
662
663         * src/modest-ui-actions.c: (create_move_to_dialog),
664         (modest_ui_actions_on_main_window_move_to),
665         (modest_ui_actions_on_msg_view_window_move_to):
666         * src/widgets/modest-folder-view.c: (modest_folder_view_init),
667         (filter_row), (modest_folder_view_show_non_move_folders):
668         * src/widgets/modest-folder-view.h:
669
670         Hide Sent & Outbox folder in "move to"-dialog. Does not work for
671         the Sent folder yet as it does not report the correct folder type.
672
673 2007-07-10  Johannes Schmid <johannes.schmid@openismus.com>
674
675         * src/maemo/modest-msg-edit-window.c: (init_window):
676         Fixed bora build
677
678 2007-07-10   Murray Cumming  <murrayc@murrayc.com>
679
680         * src/maemo/easysetup/modest-easysetup-wizard.c: (show_error):
681         Take a parent widget instead of a parent window, and 
682         implement this with hildon_banner_show_information() instead.
683         Non-Maemo builds can just ifdef that there.
684         This fixed projects.maemo.org bug NB#62766.
685
686         (on_entry_invalid_character): Use show_error() again instead 
687         of using hildon directly, and use the _CS() macro to use the correct 
688         translation domain.
689         (create_account), (check_for_supported_auth_methods), (on_entry_max):
690         Pass a widget instead od a window to show_error().
691
692 2007-07-10  Murray Cumming  <murrayc@murrayc.com>
693
694         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
695         Adapt to the changed tinymail API, using the new TnyAccount* parameter.
696         This allows us to show the server name in the error message, fixing 
697         projects.maemo.org bug NB#62904.
698         Also, use the appropriate logical ID message for the account protocol.
699
700 2007-07-10  Murray Cumming  <murrayc@murrayc.com>
701
702         * src/modest-tny-account-store.c: (on_idle_wrong_password):
703         A compilation fix, though the build wasn't broken for me.
704
705 2007-07-09  Murray Cumming  <murrayc@murrayc.com>
706
707         * src/modest-ui-actions.c: (modest_ui_actions_on_send_receive):
708         Do not try to unref a NULL folder store, to avoid a runtime warning.
709         This seems to happen sometimes when changing accounts settings.
710
711 2007-07-09  Murray Cumming  <murrayc@murrayc.com>
712
713         * src/modest-tny-account-store.c:
714         (modest_tny_account_store_instance_init),
715         (modest_tny_account_store_finalize),
716         (on_account_settings_hide), (on_idle_wrong_password):
717         Use a GHashTable to ensure that we only show one account settings 
718         dialog per modest account. This avoids us having a dialog open for 
719         both the store and transport accounts, or due to repeated get_password() 
720         calls that shouldn't happen anyway.
721
722 2007-07-09  Murray Cumming  <murrayc@murrayc.com>
723
724         * src/maemo/modest-maemo-utils.c: (on_hide),
725         (modest_maemo_show_dialog_and_forget): Handle the response, because 
726         the window is not even hidden by default.
727
728         * src/maemo/modest-account-view-window.c: (on_edit_button_clicked):
729         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts):
730         Use modest_maemo_show_dialog_and_forget() instead of gtk_dialog_run() 
731         which seems to prevent some modality problems.
732
733         * src/maemo/modest-main-window.c: (on_sendqueue_error_happened):
734         Ignore user cancellation errors.
735
736         * src/modest-account-mgr-helpers.h:
737         * src/modest-account-mgr-helpers.c:
738         Added modest_server_account_get_password() and 
739         modest_server_account_get_has_password() to avoid direct use of 
740         conf enums.
741
742         * src/maemo/modest-account-settings-dialog.h:
743         * src/maemo/modest-account-settings-dialog.c:
744         (modest_account_settings_dialog_init): Store the notebook so we can 
745         use it later.
746         Added modest_account_settings_dialog_switch_to_user_info().
747
748         * src/modest-tny-account-store.c: 
749         (get_password): When the password in the account settings is wrong (we think), 
750         show the relevant page of the account settings dialog, in the mainloop.
751         However, we currently get many of these at once because cancel does not 
752         seem to cancel.
753         (forget_password): Do not forget the password 
754         from the account settings, because this causes side-effects when 
755         tinymail seems to call it at strange time, maybe because of how we 
756         are cancelling get_password().
757         (modest_tny_account_store_alert): Ignore user cancellations.
758
759 2007-07-09  Murray Cumming  <murrayc@murrayc.com>
760
761         * src/maemo/modest-maemo-utils.h:
762         * src/maemo/modest-maemo-utils.c: 
763         Added modest_maemo_show_information_note_and_forget() for use instead of 
764         gtk_dialog_run() when the response is not needed, to avoid an extra 
765         mainloop which could cause a hang.
766
767         * src/maemo/modest-main-window.c: (on_sendqueue_error_happened):
768         Use the logical IDs for the error message, though they are not 
769         specific enough. Note that I used modest_maemo_show_information_note_and_forget() 
770         because gtk_dialog_run() caused a hang here (the window did not close).
771         This fixes projects.maemo.org bug NB#62646.
772
773 2007-07-09  Murray Cumming  <murrayc@murrayc.com>
774
775         * src/modest-account-mgr-helpers.h:
776         * src/modest-account-mgr-helpers.c:
777         Added modest_account_mgr_get_store_protocol().
778
779         * src/maemo/modest-account-view-window.c:
780         (on_delete_button_clicked): Show different warning text depending on 
781         the protocol (IMAP or POP) as per the UI spec. Use a HildonNote instead 
782         of a GtkDialog, which fixes the truncation, fixing projects.maemo.org bug 
783         NB#59037.
784
785 2007-07-09  Murray Cumming  <murrayc@murrayc.com>
786
787         * src/maemo/modest-msg-edit-window.c:
788         (modest_msg_edit_window_attach_file): Set the file chooser dialog title 
789         as per the UI spec. This fixes proejcts.maemo.org bug NB#59056.
790
791 2007-07-07  Armin Burgmeier  <armin@openismus.com>
792
793         * src/maemo/easysetup/modest-easysetup-wizard.c: Translate
794         ckdg_ib_maximum_characters_reached from correct package.
795
796         * src/modest-ui-actions.c: Show an error message when a folder could
797         not be created. Tinymail does not give us specific error codes about
798         what has gone wrong, so we assume that a folder with that name
799         already exists, though there might be other reasons.
800
801 2007-07-06  Murray Cumming <murrayc@murrayc.com>
802
803         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
804         Use the new TNY_ACCOUNT_ERROR_TRY_CONNECT_CERTIFICATE error code to 
805         give a more exact error message that can be partly translated.
806
807 2007-07-05  Murray Cumming <murrayc@murrayc.com>
808
809         * src/maemo/modest-address-book.c:
810         (select_email_addrs_for_contact): Specify a default window size for the 
811         select-email-address dialog, so that it is probably big enough for the 
812         title. This should fix projects.maemo.org bug NB#62277.
813
814 2007-07-05  Murray Cumming <murrayc@murrayc.com>
815
816         * src/maemo/easysetup/modest-easysetup-wizard.c:
817         (create_page_complete_easysetup): Use 
818         gtk_widget_set_size() request to ensure that the text wraps 
819         even in osso 1.1.
820
821 2007-07-05  Johannes Schmid <johannes.schmid@openismus.com>
822
823         * src/maemo/easysetup/modest-easysetup-wizard.c:
824         (on_entry_invalid_character), (create_page_account_details),
825         (create_page_user_details):
826         Use new API of ModestValidatingEntry. But for some reason the banner is
827         not shown. I will have to investigate that further.
828
829         * src/widgets/modest-validating-entry.c: (on_insert_text),
830         (modest_validating_entry_set_func):
831         * src/widgets/modest-validating-entry.h:
832         Added a new callback function to be able to react to prevented 
833         characters whitespaces to e.g show a banner.
834
835 2007-07-05  Armin Burgmeier  <armin@openismus.com>
836
837         * src/maemo/modest-account-settings-dialog.c: Use the notify::value
838         notification of HildonNumberEditor instead of remembering the port
839         number. Thanks to Johannes for pointing this out.
840
841 2007-07-05  Johannes Schmid <johannes.schmid@openismus.com>
842
843         * src/maemo/easysetup/modest-easysetup-wizard.c:
844         Check if there are any user changes before showing a confirmation
845         dialog (projects.maemo.org NB#60946)
846
847 2007-07-05  Armin Burgmeier  <armin@openismus.com>
848
849         * src/maemo/modest-account-settings-dialog.c: Remember custom port
850         number at the beginning of the dialog and set the modified flag at the
851         end if the port number has changed. This is necessary because
852         HildonNumberEditor does not support notification when the value has
853         changed.
854
855 2007-07-05  Murray Cumming <murrayc@murrayc.com>
856
857         * src/modest-ui-actions.c:
858         (modest_ui_actions_on_main_window_move_to): Check whether the source folder needs 
859         a connection before asking anything else. Correct the check for the destination 
860         folder so that it succeeds when online.
861         This fixed projects.maemo.org bug NB#61645.
862
863 2007-07-05  Murray Cumming <murrayc@murrayc.com>
864
865         * src/modest-ui-actions.c: (modest_ui_actions_on_send):
866         Call modest_platform_connect_and_wait() to ask for a connection if necessary, 
867         to fix projects.maemo.org bug NB#62439.
868
869 2007-07-05  Murray Cumming <murrayc@murrayc.com>
870
871         * src/modest-tny-account.c: (on_connection_status_changed):
872         Really do not use tny_device_force_offline() here. See the previous comment.
873
874 2007-07-04  Murray Cumming <murrayc@murrayc.com>
875
876         * src/modest-tny-account.c: (on_connection_status_changed):
877         Do not use tny_device_force_offline() when tinymail says that something 
878         went wrong with the connection. It seems to report this unnecessarily.
879
880 2007-07-04  Murray Cumming <murrayc@murrayc.com>
881
882         * src/maemo/modest-connection-specific-smtp-window.c:
883         (modest_connection_specific_smtp_window_init):
884         Use gtk_widget_set_size_request(), because gtk_label_set_max_width_chars()
885         does not seem to have any effect in osso 1.1 (though it works in 
886         Maemo Bora). This fixes bug projects.maemo.org NB#59212.
887
888 2007-07-04  Johannes Schmid <johannes.schmid@openismus.com>
889
890         * src/maemo/modest-connection-specific-smtp-window.c:
891         Fix UI specification problems with projects.meamo.org NB#60479
892
893 2007-07-04   Murray Cumming <murrayc@murrayc.com>
894
895         * src/modest-ui-actions.c: (open_msg_cb): Add a printf() to provide a 
896         clue when this has failed, because the error dialog is not always shown 
897         (at least in earlier version).
898         
899         (modest_ui_actions_get_msgs_full_error_handler): prinf() the actual 
900         GError message, because the generic error dialog is not helpful.
901         I am getting
902         'This message is not currently available (can't let a new connection go online)'
903         when trying to open an IMAP message.
904         
905         (_modest_ui_actions_open): Offer a connection when some messages would 
906         have to be downloaded and we are offline.
907
908 2007-07-04  Johannes Schmid <johannes.schmid@openismus.com>
909
910         * src/widgets/modest-folder-view.c:
911         Don't check for MERGE type anymore as we use the correct type
912         now.
913         NOTE: For the last two changes you need to update your tinymail copy
914         because of API changes!
915
916 2007-07-04  Johannes Schmid <johannes.schmid@openismus.com>
917
918         * src/modest-tny-local-folders-account.c:
919         Set the folder type for the TnyMergeFolder to TNY_MERGE_FOLDER_OUTBOX
920         (see projects.maemo.org NB#61580)
921
922 2007-07-04  Murray Cumming <murrayc@murrayc.com>
923
924         * src/modest-tny-account.c: (on_connection_status_changed):
925         Commented out the call to modest_platform_connect_and_wait() because this 
926         seems to always hang, and I would like to know if this is the only thing 
927         that causes a hang when showing the connection dialog.
928         It is not very useful anyway.
929
930 2007-07-04  Murray Cumming <murrayc@murrayc.com>
931
932         * src/maemo/modest-msg-view-window.c:
933         (modest_msg_view_window_select_next_message):
934         
935         * src/modest-platform.h:
936         * src/maemo/modest-platform.c: 
937         Added modest_platform_connect_and_wait(), which calls 
938         tny_maemo_conic_device_connect() always in the main thread, by calling it 
939         in an idle handler and waiting for the idle handler to run. It should be 
940         in the main thread because it uses GTK+ UI code. It just returns TRUE 
941         if the device is already online.
942         
943         There is some nasty code to ensure that subsequent calls to 
944         modest_platform_connect_and_wait() just wait for the first one to finish, 
945         by checking repeatedly in another idle handler. This is necessary, 
946         because other threads (or even the main thread, via another idle handler) 
947         can call modest_platform_connect_and_wait() while 
948         modest_platform_connect_and_wait() is running.
949         
950         (modest_platform_connect_and_wait_if_network_account),
951         (modest_platform_connect_and_wait_if_network_folderstore):
952         Convenience functions that calls modest_platform_connect_and_wait() if 
953         the account or folder might want network access.
954         
955         * src/modest-mail-operation.c:
956         (modest_mail_operation_update_account):
957         * src/modest-ui-actions.c: (download_uncached_messages),
958         (modest_ui_actions_on_rename_folder), (delete_folder),
959         (modest_ui_actions_on_main_window_move_to),
960         (modest_ui_actions_on_msg_view_window_move_to):
961         * src/widgets/modest-folder-view.c:
962         (drag_and_drop_from_folder_view):
963         Offer a connection if we are offline.
964         
965         * src/modest-tny-account.c: (on_connection_status_changed): 
966         Document this as only handling errors during network operations in progress,
967         and replace the idle code with a simple call to 
968         modest_platform_connect_and_wait(), which does this instead.
969
970 2007-07-03  Murray Cumming <murrayc@murrayc.com>
971
972         * src/modest-tny-account.c:
973         (modest_tny_account_get_special_folder): (util_on_idle),
974         Handle the GError so we can see when tny_folder_store_get_folders() 
975         fails, as it currently does while something else is connecting.
976         
977         Added util_run_in_main_thread_and_wait() 
978         which uses an idlen handler and mainloop to ensure that the function 
979         is called in the main thread.
980         (on_connection_status_changed): Use util_run_in_main_thread_and_wait() 
981         to make sure that we call attempt the connection in the mainloop only, 
982         which might solve some hangs.
983         
984 2007-07-03  Murray Cumming <murrayc@murrayc.com>
985
986         (modest_tny_account_store_get_tny_account_by): Do not allow accounts to 
987         be found by their display name. This is never useful.
988         * src/modest-tny-account-store.c: (on_account_removed): Find the account 
989         by its ID, instead of trying to use its ID as its display name.
990         
991         * src/modest-tny-account-store.h:
992         * src/modest-tny-account.c:
993         (modest_tny_account_get_special_folder): Add a g_warning() when 
994         tny_folder_store_get_folders() returns an empty list for the maildir.
995         
996         * src/modest-tny-send-queue.c: (modest_tny_send_queue_get_outbox):
997         Add a g_warning() when this returns NULL, because that it not allowed 
998         by tinymail.
999
1000 2007-07-02  Armin Burgmeier  <armin@openismus.com>
1001
1002         * src/maemo/easysetup/modest-easysetup-wizard.c: Added a confirmation
1003         note when trying to cancel the wizard. This fixes projects.maemo.org
1004         bug NB#60946.
1005
1006 2007-07-02  Murray Cumming  <murrayc@murrayc.com>
1007
1008         * src/modest-tny-account.h:
1009         * src/modest-tny-account.c:
1010         (modest_tny_account_new_from_server_account),
1011         (modest_tny_account_new_from_server_account_name),
1012         (modest_tny_account_new_from_account): Added a TnyCamelSession parameter, 
1013         because this must now be set before setting the proto. This is usd in 
1014         modest_tny_account_new_from_server_account(). It avoids a (maybe harmless) 
1015         warning in camel_session_get_service() caused by 
1016         tny_camel_transport_account_prepare().
1017         
1018         * src/modest-tny-account-store.c: (get_server_accounts): Pass the new 
1019         session parameter.
1020
1021 2007-06-30  Johannes Schmid <johannes.schmid@openismus.com>
1022
1023         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1024         (on_value_changed),
1025         (modest_connection_specific_smtp_edit_window_init):
1026         
1027         Fixed project.maemo.org bug NB#60479 by using "notify::value" instead 
1028         of "changed" for now
1029
1030 2007-06-29  Murray Cumming  <murrayc@murrayc.com>
1031
1032         * src/modest-tny-account.c: 
1033         (modest_tny_account_new_from_server_account):
1034         Handle the TnyAccount::"connection-status-changed" signal, which tinymail 
1035         now uses to request a connection when it needs one, and which it uses 
1036         to tell us that something is wrong with the connection, so we can force 
1037         the accounts offline to prevent further problems.
1038         
1039         * src/modest-defs.h:
1040         * src/modest-init.c: (init_default_settings):
1041         * src/modest-mail-operation.c:
1042         (modest_mail_operation_update_account):
1043         * src/modest-main.c: (on_show): Do not try to connect explicitly on startup.
1044         This should not be necessary anymore. Do not set the conf key that 
1045         determined this (it was always TRUE and not set anywhere else).
1046         
1047         * src/modest-ui-actions.h: Remove unused and unimplemented 
1048         modest_ui_actions_on_online_toggle_toggled().
1049
1050 2007-06-29  Murray Cumming  <murrayc@murrayc.com
1051
1052         * src/maemo/modest-main-window.c: (connect_signals):
1053         Don't connect to delete_event twice. Maybe this was harmless.
1054
1055 2007-06-29  Murray Cumming  <murrayc@murrayc.com
1056
1057         * libmodest-dbus-client/libmodest-dbus-client.c: Improved the documentation slightly.
1058         * src/modest-mail-operation.c: (modest_mail_operation_xfer_folder):
1059         Debug output to give some more clue when a folder move is not allowed.
1060
1061 2007-06-28  Murray Cumming  <murrayc@murrayc.com
1062
1063         * src/modest-tny-account.c: (on_modest_file_system_info),
1064         (modest_tny_account_get_mmc_account_name):
1065         Always call the callback, without checking whether the name has changed.
1066         * src/widgets/modest-folder-view.c: (strings_are_equal),
1067         (on_model_foreach_set_name), (on_get_mmc_account_name),
1068         (text_cell_data): Compare the name here, and use the name from 
1069         the account rather than from the 
1070         TNY_GTK_FOLDER_STORE_TREE_MODEL_NAME_COLUMN because that will be wrong 
1071         if the name was changed after the account was added to the model.
1072         That's a tinymail bug but not one that I want to fix now.
1073
1074         This finally fixes projects.maemo.org bug NB#59301.
1075
1076 2007-06-27  Armin Burgmeier  <armin@openismus.com>
1077
1078         * src/modest-mail-operation.c: Fixed a crash when canceling a mail
1079         receive operation.
1080
1081 2007-06-27  Murray Cumming  <murrayc@murrayc.com
1082
1083         * src/modest-tny-account.h:
1084         * src/modest-tny-account.c: 
1085         Added modest_tny_account_get_mmc_account_name(), to set the memory 
1086         card name asynchronously for the given account and then notify.
1087         (modest_tny_account_new_for_local_folders): Use this new function instead 
1088         of using hildon_file_system_info_async_new() directly.
1089         
1090         * src/widgets/modest-folder-view.c: (text_cell_data):
1091         Use modest_tny_account_get_mmc_account_name() to get the real name, calling 
1092         gtk_tree_model_row_changed() when it is available.
1093         
1094         This should fix projects.maemo.org bug NB#59301.
1095
1096 2007-06-27  Murray Cumming  <murrayc@murrayc.com
1097
1098         * src/modest-mail-operation.c: (update_account_thread),
1099         (get_msgs_full_thread): Fix typo failures in the revert
1100         to fix the build.
1101
1102 2007-06-27  Murray Cumming  <murrayc@murrayc.com
1103
1104         * src/maemo/modest-maemo-global-settings-dialog.c:
1105         (idle_select_default_focus):
1106         * src/modest-mail-operation.c: (idle_notify_progress),
1107         (idle_notify_progress_once), (set_last_updated_idle),
1108         (update_account_thread), (get_msgs_full_thread):
1109         * src/widgets/modest-attachment-view.c: (get_size_idle_func):
1110         * src/widgets/modest-header-view.c:
1111         (idle_notify_headers_count_changed_destroy),
1112         (idle_notify_headers_count_changed):
1113         Reverted the additions of gdk_threads_enter/leave(), in case this 
1114         helps with a startup hang on the device.
1115
1116 2007-06-26  Armin Burgmeier  <armin@openismus.com>
1117
1118         * src/maemo/modest-maemo-utils.c: Replaced a busy wait while waiting
1119         for supported secure authentication methods from server by
1120         gtk_dialog_run(), saving CPU time and a potential race condition.
1121
1122 2007-06-26  Armin Burgmeier  <armin@openismus.com>
1123
1124         * src/maemo/modest-maemo-utils.h: 
1125         * src/maemo/modest-maemo-utils.c: Added a
1126         ModestMaemoUtilsGetSupportedSecureAuthenticationError with CANCELED as
1127         only error code to tell the calling code when the user canceled the
1128         operation.
1129
1130         * src/maemo/modest-account-settings-dialog.h:
1131         * src/maemo/modest-account-settings-dialog.c:
1132         * src/maemo/easysetup/modest-easysetup-wizard.c: Do not show an error
1133         message if the retrieval of secure authentication methods was canceled
1134         by the user. Perform the check before saving anything to configuration
1135         to not end up with half-committed configuration changes, do not show
1136         a "Saving to configuration failed" note when authentication methods
1137         could not be retrieved.
1138
1139         * src/maemo/modest-main-window.c: Fixed a crash on startup when built
1140         with old hildon.
1141
1142 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1143
1144         * src/dbus_api/modest-dbus-callbacks.c: (add_folders_to_list):
1145         Only return the first level of folders under accounts, because the 
1146         osso-global-search UI spec doesn't want the rest.
1147         This fixed projects.maemo.org bug NB#61811.
1148
1149 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1150
1151         * src/modest-tny-account-store.c:
1152         * src/modest-tny-account-store.h:
1153         Added modest_tny_account_is_memory_card_account().
1154         * src/maemo/modest-main-window.c: (create_details_widget):
1155         Show the same information items for the memory card as we show for the 
1156         local-folders, to fix projects.maemo.org bug NB#59307.
1157
1158 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1159
1160         * src/modest-tny-account-store.c: (get_password):
1161         Added some checks for NULL to maybe prevent crashes, though I think 
1162         it was Philip's last commit that actually prevented the crash here 
1163         when creating a first new account.
1164         But the new account is still not usable (no messages are shown) 
1165         until a restart of the application.
1166
1167 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1168
1169         * src/maemo/modest-maemo-global-settings-dialog.c:
1170         (idle_select_default_focus):
1171         * src/modest-mail-operation.c: (idle_notify_progress),
1172         (idle_notify_progress_once), (idle_notify_update_account_queue),
1173         (set_last_updated_idle), (update_account_thread),
1174         (notify_get_msgs_full), (get_msgs_full_destroyer),
1175         (get_msgs_full_thread):
1176         * src/widgets/modest-attachment-view.c: (get_size_idle_func):
1177         * src/widgets/modest-header-view.c:
1178         (idle_notify_headers_count_changed_destroy),
1179         (idle_notify_headers_count_changed):
1180         Use gdk_threads_enter() and gdk_threads_enter_leave() in 
1181         all idle handlers, because some other thread could be blocking 
1182         the GDK lock, so that it can do GUI stuff.
1183
1184 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1185
1186         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_mail_to),
1187         (on_idle_compose_mail), (on_compose_mail), (on_idle_open_message),
1188         (on_idle_send_receive), (on_idle_open_default_inbox):
1189         * src/maemo/modest-msg-edit-window.c:
1190         (modest_msg_edit_window_attach_file_noninteractive):
1191         Use gdk_threads_enter() and gdk_threads_leave() in all the idle handlers, 
1192         to prevent a hang. I don't quite understand why these are necessary, 
1193         beause we should already be in the main loop. I guess something outside 
1194         of the main loop is taking the lock.
1195         
1196         * tests/dbus_api/test_compose_mail.c: (main): Use file:// prefixes so 
1197         we are really using URIs, and use files that are more likely to exist.
1198
1199 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1200
1201         * tests/dbus_api/Makefile.am: Fix the build of the tests. This was 
1202         necessary because configure.ac now defines different variables.
1203
1204 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1205
1206         * libmodest-dbus-client/libmodest-dbus-client.c:
1207         * libmodest-dbus-client/libmodest-dbus-client.h:
1208         Removed libmodest_dbus_client_send_mail() because it is not used by anything.
1209         libmodest_dbus_client_compose_mail() is what things actually use.
1210         
1211         * src/dbus_api/modest-dbus-api.h:
1212         * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_handler):
1213         * tests/dbus_api/Makefile.am:
1214         * tests/dbus_api/test_send_mail.c: Removed the MODEST_DBUS_METHOD_SEND_MAIL
1215         D-Bus method.
1216
1217 2007-06-26  Murray Cumming  <murrayc@murrayc.com>
1218
1219         * src/modest-init.c: (modest_init_local_folders):
1220         For memory-card (or other non local-folders) maildir accounts, 
1221         always create an Archive folder, so that there is somewhere to put 
1222         messages. This should be less confusing, because the user does not need 
1223         to guess that the need to create a folder.
1224
1225 2007-06-25  Johannes Schmid <johannes.schmid@openismus.com>
1226
1227         * src/maemo/easysetup/modest-wizard-dialog.c: (init):
1228         Fixed icon size by using (50, 50) which is the same as defined by
1229         newer hildon-libs
1230
1231 2007-06-25  Armin Burgmeier  <armin@openismus.com>
1232
1233         * src/widgets/modest-window-mgr.c:
1234         * src/modest-init.c:
1235         * configure.ac: Correctly recognize hildon-notify presence and fixed
1236         the build without it being installed.
1237
1238 2007-06-25  Murray Cumming  <murrayc@murrayc.com>
1239
1240         * libmodest-dbus-client/libmodest-dbus-client.c:
1241         (libmodest_dbus_client_search): Fix the build. Sorry.
1242         * src/modest-ui-actions.c: (modest_ui_actions_on_new_msg),
1243         (reply_forward_cb): Initialize variables to fix the build.
1244         
1245         * src/modest-tny-account-store.c:
1246         (modest_tny_account_store_get_tny_account_by): Fix the account URI 
1247         comparison (a silly typo) so that email search results can be opened 
1248         when there are more than one account.
1249
1250 2007-06-25  Murray Cumming  <murrayc@murrayc.com>
1251
1252         * libmodest-dbus-client/libmodest-dbus-client.c:
1253         (libmodest_dbus_client_search),
1254         (libmodest_dbus_client_get_folders): Use large timeouts (2 minutes) 
1255         instead of 1 second, because the search gets folders and messages from 
1256         the server, which can take a long time. When it times out, 
1257         osso-global-search will report no results.
1258         
1259         We need to specify whether we should search only cached information 
1260         (maybe with a user preference), and the osso-email-search-plugin
1261         API should really be improved to allow that option, and to allow results 
1262         to be delivered asynchronously in batches.
1263
1264 2007-06-25  Murray Cumming  <murrayc@murrayc.com>
1265
1266         * src/maemo/easysetup/modest-wizard-dialog.c: (init):
1267         Fix a typo to fix the osso 1.1. build. See the TODO comment though -
1268         GTK_ICON_SIZE_DIALOG is probably the wrong size.
1269
1270 2007-06-25  Murray Cumming  <murrayc@murrayc.com>
1271
1272         * src/modest-search.c: (modest_search_folder): Ignore a seach folder 
1273         that is an empty string. D-Bus seems to give us these instead of NULL.
1274
1275 2007-06-25  Johannes Schmid <johannes.schmid@openismus.com>
1276
1277         * src/dbus_api/modest-dbus-callbacks.c:
1278         * src/maemo/easysetup/modest-easysetup-wizard.h:
1279         * src/maemo/easysetup/modest-wizard-dialog.c: (init):
1280         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1281         (modest_connection_specific_smtp_edit_window_init):
1282         * src/maemo/modest-maemo-global-settings-dialog.c:
1283         (on_range_error):
1284         * src/maemo/modest-maemo-utils.c:
1285         (modest_maemo_utils_setup_images_filechooser):
1286         * src/maemo/modest-main-window.c: (create_details_widget):
1287         * src/maemo/modest-msg-edit-window.c:
1288         (modest_msg_edit_window_attach_file_noninteractive),
1289         (modest_msg_edit_window_color_button_change),
1290         (modest_msg_edit_window_set_zoom):
1291         * src/modest-mail-operation.c: (update_account_thread):
1292         * src/modest-tny-account-store.c:
1293         * src/modest-tny-account.c:
1294         * src/widgets/modest-global-settings-dialog.c:
1295         * src/widgets/modest-window.h:
1296         
1297         Fixed build on bora!
1298
1299 2007-06-25  Murray Cumming  <murrayc@murrayc.com>
1300
1301         * src/dbus_api/modest-dbus-callbacks.c: (on_dbus_method_search):
1302         * src/modest-search.c: (modest_search_folder),
1303         (modest_search_all_accounts): Actually search only in the specified folder, 
1304         doing a simple match on the folder ID.
1305         * src/modest-search.h: Added a folder field to the ModestSearch struct, 
1306         and added some documentation.
1307
1308 2007-06-22  Armin Burgmeier  <armin@openismus.com>
1309
1310         * src/maemo/modest-maemo-utils.h:
1311         * src/maemo/modest-maemo-utils.c: Added a GError parameter to
1312         modest_maemo_utils_get_supported_secure_authentication_methods.
1313
1314         * src/maemo/easysetup/modest-easysetup-wizard.c:
1315         * src/maemo/modest-account-settings-dialog.c: Show correct error if
1316         one occured, not just "Server does not support secure authentication".
1317
1318 2007-06-22  Murray Cumming  <murrayc@murrayc.com>
1319
1320         * src/modest-tny-account-store.c: (get_password):
1321         Restored the call to tny_account_set_user() because Philip seems to have 
1322         stopped this from crashing (by not using the freed string). It still does 
1323         not work, but now we can test it.
1324
1325 2007-06-22  Murray Cumming  <murrayc@murrayc.com>
1326
1327         * src/maemo/modest-msg-edit-window.c: (init_window):
1328         Comment out use of an uninitialzed GtkScrolledWindow variable, 
1329         to fix the build and stop a crash. Yet again.
1330
1331 2007-06-22  Murray Cumming  <murrayc@murrayc.com>
1332
1333         * src/modest-tny-account-store.c: (get_password):
1334         Remove the call to tny_account_set_user() because this actually crashes.
1335         As mentioned in the last commit, it is known to not work anyway.
1336
1337 2007-06-22  Murray Cumming  <murrayc@murrayc.com>
1338
1339         * src/modest-tny-account-store.c: (get_password):
1340         Use tny_account_set_username() to tell tinymail that the username might 
1341         have changed too. But tinymail ignores this: see projects.maemo.org 
1342         bug #61463.
1343         * src/modest-ui-actions.c:
1344         (modest_ui_actions_on_password_requested): Remove the useless attempt to 
1345         reset the connection when changing the username, and improve the comments.
1346         Save the changed username to gconf at least, so it is used when Modest is 
1347         restarted.
1348
1349 2007-06-21  Murray Cumming  <murrayc@murrayc.com>
1350
1351         * src/dbus_api/modest-dbus-callbacks.c: (add_folders_to_list):
1352         Do not use a query, so that we get all folders, including for POP and 
1353         local-folders. They work as search criteria too.
1354         This fixes projects.maemo.org bug NB#57740.
1355
1356 2007-06-21  Murray Cumming  <murrayc@murrayc.com>
1357
1358         * src/maemo/modest-platform.c: (modest_platform_on_new_msg):
1359         Comment out the use of hildon_notification_set_sound() because it is 
1360         not declared, to fix the build. Warnings are serious, people.
1361
1362 2007-06-21  Armin Burgmeier  <armin@openismus.com>
1363
1364         * src/maemo/modest-maemo-utils.h:
1365         * src/maemo/modest-maemo-utils.c: Added a username parameter to the
1366         modest_maemo_utils_get_supported_secure_authentication_methods()
1367         to query authentication methods for a specific user. This should fix
1368         projects.maemo.org bug NB#61369.
1369
1370         * src/maemo/easysetup/modest-easysetup-wizard.c:
1371         * src/maemo/modest-account-settings-dialog.c: Adjusted calls to that
1372         function.
1373
1374 2007-06-21  Murray Cumming  <murrayc@murrayc.com>
1375
1376         * libmodest-dbus-client/libmodest-dbus-client.h:
1377         * libmodest-dbus-client/libmodest-dbus-client.c:
1378         (modest_dbus_message_iter_get_search_hit),
1379         (libmodest_dbus_client_search):
1380         Reorganised and commented this.
1381         Removed modest_search_hit_free() from the public API because it 
1382         is not needed.
1383         
1384         Added libmodest_dbus_client_get_folders() and 
1385         modest_folder_result_list_free().
1386         
1387         * src/dbus_api/modest-dbus-api.h:
1388         * src/dbus_api/modest-dbus-callbacks.c: 
1389         (modest_dbus_req_filter): Commented. Moved most code to 
1390         on_dbus_method_search() and added on_dbus_method_get_folders().
1391
1392         * src/maemo/modest-platform.c: (modest_platform_init): Commented the use 
1393         of the extra D-Bus handler.
1394         
1395         * tests/dbus_api/Makefile.am:
1396         * tests/dbus_api/test_get_folders.c: New test for 
1397         libmodest_dbus_client_get_folders(). This seems to return an empty list 
1398         at the moment. That could be the same error that causes the message list 
1399         to be empty sometimes.
1400         This should help with projects.maemo.org bug NB#57740.
1401
1402 2007-06-21  Armin Burgmeier  <armin@openismus.com>
1403
1404         * src/modest-mail-operation.c: Do not call
1405         modest_mail_operation_queue_cancel_all() in _cancel() but do instead
1406         notify the operation's end after having set the status to CANCELED for
1407         the operation queue to listen on. This fixes a deadlock when there
1408         were mail operations in the queue during its finalization.
1409
1410         * src/modest-singletons.c: Reordered uninitialization of the account
1411         manager to happen after the mail operation queue was uninitialized
1412         because the mail operation's in the queue might still try to access
1413         the account manager (see modest_mail_operation_notify_end()). This
1414         fixes a potential crash when terminating the application.
1415
1416 2007-06-21  Murray Cumming  <murrayc@murrayc.com>
1417
1418         * src/modest-search.c: 
1419         (search_mime_part_and_child_parts): Moved some code here so we 
1420         can search recursively in child folders.
1421         (modest_search_folder): Search in the message as a mime part, instead 
1422         of just its child mime parts.
1423         (read_chunk), (search_mime_part_ogs):
1424         Check how many bytes were read, to prevent an endless loop.
1425         Searching in message bodies now works. This finishes the fix for 
1426         projects.maemo.org bug NB#61007.
1427
1428 2007-06-20  Murray Cumming  <murrayc@murrayc.com>
1429
1430         * src/modest-ui-actions.c: (modest_ui_actions_on_details):
1431         Add a g_warning when the item is not a folder.
1432         
1433         * src/modest-ui-dimming-rules.c:
1434         (modest_ui_dimming_rules_on_details): Dim the Email/Details menu item
1435         when selected item is not a folder (for instance, an account), because 
1436         the UI spec only talks about folders.
1437         I am not sure what the UI spec wants, so this might not totally fix 
1438         projects.maemo.org bug NB#60794.
1439         
1440 2007-06-20  Murray Cumming  <murrayc@murrayc.com>
1441
1442         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
1443         (load_from_file): Sort the list. The unsorted list would be more noticeable 
1444         in non-English locales.
1445         
1446         * src/maemo/modest-msg-edit-window.c:
1447         (modest_msg_edit_window_attach_file): Initialize a variable to avoid a
1448         warning and fix the build.
1449         
1450         * src/maemo/modest-progress-bar-widget.c:
1451         (modest_progress_bar_widget_set_progress): Avoid a division by zero, to 
1452         avoid a g_warning, and probably to avoid a crash.
1453
1454 2007-06-20  Murray Cumming  <murrayc@murrayc.com>
1455
1456         * src/modest-search.c: (modest_search_folder): Check for a GError 
1457         when calling tny_folder_get_headers(), to show that this is not the cause 
1458         of later failure.
1459
1460 2007-06-20  Murray Cumming  <murrayc@murrayc.com>
1461
1462         * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_filter):
1463         Actually set the body query instead of the subject query.
1464         
1465         * src/modest-search.c: (search_mime_part_ogs),
1466         (search_mime_part_strcmp): Remove extra space from the text/* regex,
1467         which would probably cause it to fail if we got this far.
1468                 
1469         (modest_search_folder): Use simple #ifdefs instead of the function pointer, 
1470         to simplify the code.
1471         Warn when tny_mime_part_get_parts() returns an empty list, which seems to 
1472         be causing search-in-body to fail.
1473
1474 2007-06-20  Murray Cumming  <murrayc@murrayc.com>
1475
1476         * libmodest-dbus-client/libmodest-dbus-client.h: Document the folder 
1477         struct item.
1478         * src/dbus_api/modest-dbus-callbacks.c: (find_message_by_url):
1479         Better debug message when the folder cannot be found.
1480         This should help with fixing projects.maemo.org bug #61287.
1481         * src/modest-search.c: (add_hit): Do not leak the furl string.
1482
1483 2007-06-20  Murray Cumming  <murrayc@murrayc.com>
1484
1485         * src/modest-ui-actions.c:
1486         (modest_ui_actions_on_folder_selection_changed): 
1487         Do not special-case TNY_MERGE_FOLDER here, because 
1488         modest_tny_folder_get_account() already does that. This fixes 
1489         projects.maemo.org bug NB#60955 (The smtp connections dialog was not 
1490         shown when the Outbox was selected).
1491
1492 2007-06-19  Murray Cumming,,,  <murrayc@murrayc.com>
1493
1494         * libmodest-dbus-client/libmodest-dbus-client.c:
1495         (_dbus_iter_get_string_or_null): Initialize the string variable in 
1496         case this helps with Dirk's crash.
1497
1498 2007-06-19  Murray Cumming  <murrayc@murrayc.com>
1499
1500         * src/dbus_api/modest-dbus-api.h: Add the attachments enum for send_mail, 
1501         though it is not implemented yet (this function is maybe not even used),
1502         to avoid breaking ABI in future.
1503         * libmodest-dbus-client/libmodest-dbus-client.c:
1504         (get_attachments_string): Moved some code into this generic function.
1505         (libmodest_dbus_client_send_mail): Corrected the documentation. This really 
1506         sends email. It is maybe not used.
1507         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_mail),
1508         (on_send_mail): Use attachments.
1509         
1510         * src/widgets/modest-msg-edit-window.h: Improve the documentation.
1511         * src/maemo/modest-msg-edit-window.c:
1512         (modest_msg_edit_window_attach_file_noninteractive): Convert the URI to 
1513         a filename before using it, to fix projects.maemo.org bug NB#58233.
1514
1515 2007-06-19  Murray Cumming  <murrayc@murrayc.com>
1516
1517         * src/modest-ui-actions.c: (modest_ui_actions_on_copy):
1518         Initialize the continue_download variable to fix the build, and probably
1519         to fix randome behaviour.
1520
1521 2007-06-18  Armin Burgmeier  <armin@openismus.com>
1522
1523         * src/modest-tny-send-queue.h:
1524         * src/modest-tny-send-queue.c: Keep track of the status of messages in
1525         the queue so we can later show it in the UI. Replaced
1526         modest_tny_send_queue_msg_is_being_sent() by
1527         modest_tny_send_queue_get_msg_status().
1528
1529         * src/modest-ui-dimming-rules.c: Adjust for the replaced function.
1530
1531         * src/modest-tny-account.c: Changed a cast to gpointer* to one to
1532         gpointer. This probably was not harmful, but just to be sure.
1533
1534 2007-06-18  Murray Cumming  <murrayc@murrayc.com>
1535
1536         * src/maemo/modest-platform.c: (modest_platform_activate_uri):
1537         Fix the build, but leave the function broken on Bora, because
1538         hildon_uri_action_get_service() does not exist. 
1539         osso_uri_action_get_service() does not exist either, it seems.
1540
1541 2007-06-18  Murray Cumming  <murrayc@murrayc.com>
1542
1543         * src/modest-tny-account.c:
1544         (modest_tny_account_new_from_server_account):
1545         Uncommented the url debug output again, because it is useful for 
1546         debugging, as I said in the comment.
1547
1548 2007-06-18  Murray Cumming  <murrayc@murrayc.com>
1549
1550         * configure.ac: Do not require hildon-notify for Maemo Bora. It is not 
1551         available.
1552         * src/modest-init.c: (modest_init_init_ui): Do not call notify_init() 
1553         for Mameo Bora, to fix the build.
1554         
1555 2007-06-17  Johannes Schmid <johannes.schmid@openismus.com>
1556
1557         * configure.ac:
1558         Fixed build with hildon < 0.99
1559         
1560         * src/maemo/modest-account-view-window.c: (on_edit_button_clicked):
1561         Check if the selected account is busy instead of checking all accounts
1562         
1563         * src/modest-account-mgr-priv.h:
1564         * src/modest-account-mgr.c: (modest_account_mgr_class_init),
1565         (modest_account_mgr_init), (compare_account_name),
1566         (modest_account_mgr_set_account_busy),
1567         (modest_account_mgr_account_is_busy):
1568         * src/modest-account-mgr.h:
1569         Added busy information to the account manager. It possible to
1570         set an account to busy or not busy now.
1571         
1572         * src/modest-mail-operation.c: (modest_mail_operation_finalize),
1573         (modest_mail_operation_update_account),
1574         (modest_mail_operation_notify_end):
1575                 Set the account to busy/not busy depending on the operation state.
1576
1577         * src/widgets/modest-account-view.c:
1578         (modest_account_view_finalize), (get_last_updated_string),
1579         (update_account_view), (on_account_busy_changed), (init_view):
1580         Show string "Refreshing..." if the account is currently busy.
1581
1582         All this fixes projects.maemo.org bug NB#59711
1583
1584 2007-06-14  Armin Burgmeier  <armin@openismus.com>
1585
1586         * src/widgets/modest-attachments-view.h:
1587         * src/widgets/modest-attachments-view.c: Added
1588         modest_attachments_view_has_attachments() and fixed coordinate
1589         transformation in get_att_view_at_coords(). This fixes attachment
1590         selection.
1591
1592         * src/widgets/modest-msg-view.c: Make use of
1593         modest_attachments_view_has_attachments() to decide whether to show
1594         attachments in the header.
1595
1596 2007-06-14  Johannes Schmid <johannes.schmid@openismus.com>
1597
1598         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1599         (on_change), (on_combo_security_changed),
1600         (modest_connection_specific_smtp_edit_window_init),
1601         (modest_connection_specific_smtp_edit_window_set_connection),
1602         (modest_connection_specific_smtp_edit_window_is_dirty):
1603         * src/maemo/modest-connection-specific-smtp-edit-window.h:
1604         * src/maemo/modest-connection-specific-smtp-window.c:
1605         (on_button_edit):
1606         
1607         Show an comfirmation dialog for the smpt-edit-window if there are
1608         unsaved changes and the user hits cancel.
1609         (projects.maemo.org bug NB#60479)
1610
1611 2007-06-14  Armin Burgmeier  <armin@openismus.com>
1612
1613         * src/maemo/easysetup/modest-easysetup-wizard.c:
1614         * src/maemo/modest-account-settings-dialog.c: Show "invalid email
1615         address" info in banner instead of node, and select all the text as
1616         per UI spec. This fixes projects.maemo.org bug NB#60550.
1617
1618 2007-06-14  set REAL_NAME environment variable  <set EMAIL_ADDRESS environment variable>
1619
1620         reviewed by: <delete if not using a buddy>
1621
1622         * src/maemo/modest-main-window.c: (_on_msg_count_changed):
1623         * src/modest-ui-actions.c: (folder_refreshed_cb):
1624
1625 2007-06-14  Murray Cumming  <murrayc@murrayc.com>
1626
1627         * src/widgets/modest-folder-view.c: (filter_row):
1628         Explictly filter out the per-account outbox accounts. I don't know why 
1629         these only sometimes show up, but now they should never show up in the UI.
1630         This should fix projects.maemo.org bug NB#60160.
1631
1632 2007-06-14  Murray Cumming  <murrayc@murrayc.com>
1633
1634         * src/maemo/modest-main-window.c: (set_toolbar_mode): Prevent a warning
1635         when the toolbar does not exist yet.
1636         * src/modest-widget-memory.c: (save_settings_header_view):
1637         Added g_warnings() to help us to discover when we are trying to set 
1638         an empty columns list in gconf.
1639
1640 2007-06-14  Murray Cumming  <murrayc@murrayc.com>
1641
1642         * src/modest-init.h:
1643         * src/modest-init.c: 
1644         Added modest_init_get_default_header_view_column_ids().
1645
1646         * src/modest-widget-memory.c: (restore_settings_header_view):
1647         Use the new function to get defaults, if the gconf key is empty, 
1648         instead of not creating any columns. This seems to fix the 
1649         empty right-hand pane problems.
1650         
1651         * src/widgets/modest-header-view.h: Improved documentation.
1652
1653 2007-06-13  Murray Cumming  <murrayc@murrayc.com>
1654
1655         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
1656         Revert the use of the display name as the account name, because this
1657         is generally wrong and would break the code that follows.
1658
1659 2007-06-13  Johannes Schmid <johannes.schmid@openismus.com>
1660
1661         * src/maemo/easysetup/modest-easysetup-wizard.c:
1662         (check_for_supported_auth_methods), (on_before_next),
1663         (create_account):
1664         
1665         More correct fix for projects.maemo.org bug NB# 58991
1666         Do not longer accept AUTH_PASSWORD as secure method and choose
1667         correct method when creating the account.
1668
1669 2007-06-13  Johannes Schmid <johannes.schmid@openismus.com>
1670
1671         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
1672         Fixed projects.maemo.org bug NB# 58991
1673
1674 2007-06-13  Murray Cumming  <murrayc@murrayc.com>
1675
1676         * src/modest-init.c: (modest_init_init_core),
1677         (modest_init_local_folders): Fixed compilation errors.
1678
1679 2007-06-13  Murray Cumming  <murrayc@murrayc.com>
1680
1681         * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in:
1682         Remove unnecessary lib/include, though it is good in principle when needed.
1683         
1684         * src/modest-init.c: (modest_init_one_local_folder),
1685         (modest_init_local_folders):
1686         * src/modest-init.h: Initialize the .modest library for memory cards, 
1687         instead of just doing nothing for them. This should allow us to create 
1688         folders there, fixing projects.maemo.org bug NB#59297.
1689
1690 2007-06-13  Murray Cumming  <murrayc@murrayc.com>
1691
1692         * libmodest-dbus-client/libmodest-dbus-client.c:
1693         (libmodest_dbus_client_send_mail), (libmodest_dbus_client_mail_to),
1694         (libmodest_dbus_client_compose_mail),
1695         (libmodest_dbus_client_open_message),
1696         (libmodest_dbus_client_send_and_receive),
1697         (libmodest_dbus_client_open_default_inbox):  Improved debug messages.
1698         
1699         * src/dbus_api/modest-dbus-callbacks.c: (find_message_by_url),
1700         (on_idle_open_message), (modest_dbus_req_handler),
1701         (search_result_to_message), (modest_dbus_req_filter):
1702         * src/modest-search.c: (add_hit), (modest_search_folder),
1703         (modest_search_all_accounts): Improved debug messages.
1704         
1705         * tests/dbus_api/test_open_message.c: (main): Improved comments.
1706         
1707         * src/modest-tny-account-store.c:
1708         (modest_tny_account_store_get_tny_account_by): Initialize a variable to 
1709         fix the build.
1710
1711 2007-06-13  Murray Cumming  <murrayc@murrayc.com>
1712
1713
1714 2007-06-12  Murray Cumming  <murrayc@murrayc.com>
1715
1716         * src/modest-tny-account-store.c: (get_server_accounts):
1717         Call modest_tny_local_folders_account_add_merged_outbox_folders() 
1718         even when there are no accounts, so that the Outbox folder is always 
1719         visible. This fixes projects.maemo.org bug NB#60158.
1720
1721 2007-06-12   Murray Cumming  <murrayc@murrayc.com>
1722
1723         * src/maemo/modest-main-window.c: (create_details_widget):
1724         Use the mcen_va_never logical ID.
1725
1726 2007-06-12  Murray Cumming  <murrayc@murrayc.com>
1727
1728         * src/dbus_api/modest-dbus-api.h:
1729         * src/dbus_api/modest-dbus-callbacks.c:
1730         (on_idle_open_default_inbox), (on_open_default_inbox),
1731         (modest_dbus_req_handler):
1732         Added a new OpenDefaultInbox method.
1733         
1734         * libmodest-dbus-client/libmodest-dbus-client.h:
1735         * libmodest-dbus-client/libmodest-dbus-client.c:
1736         Added libmodest_dbus_client_open_default_inbox() to call the new 
1737         dbus method. This should be useful to projects.maemo.org bug NB#57214,
1738         though it should maybe be used by a new osso-email-interface function.
1739         
1740         * tests/dbus_api/Makefile.am:
1741         * tests/dbus_api/test_open_default_inbox.c: Added a test for the new 
1742         function.
1743
1744 2007-06-12  Murray Cumming  <murrayc@murrayc.com>
1745
1746         * src/modest-account-mgr.c: (on_key_change): Append to the list, not to 
1747         NULL, so that the signals get all the keys. This should not actually 
1748         change any behaviour because we currently update everything when anything 
1749         changes.
1750
1751 2007-06-12  Murray Cumming  <murrayc@murrayc.com>
1752
1753         * src/widgets/modest-folder-view.c: (text_cell_data),
1754         (icon_cell_data), (filter_row), (on_selection_changed), (cmp_rows),
1755         (find_inbox_iter): If tinymail tells us that the folder is 
1756         a non-specific TNY_FOLDER_TYPE_NORMAL then do an extra check on the name.
1757         This causes the inbox to be selected at startup, fixing part of 
1758         projects.maemo.org bug NB#56305.
1759
1760         * src/modest-ui-dimming-rules.c:
1761         (modest_ui_dimming_rules_on_tools_smtp_servers):
1762         * src/modest-ui-dimming-rules.h: Added a callback function to dim 
1763         the SMTP servers menu item.
1764         * src/maemo/modest-main-window-ui-dimming.h: Used the function, so 
1765         that the SMTP Servers menu item is dimmed when there are no accounts, 
1766         as a future version of the UI spec will require. This fixes 
1767         projects.maemo.org bug NB#56305.
1768
1769 2007-06-11  Johannes Schmid <johannes.schmid@openismus.com>
1770
1771         * src/maemo/modest-maemo-utils.c:
1772         (modest_maemo_utils_get_supported_secure_authentication_methods):
1773         Added label to dialog instead of unreadable title
1774         
1775         * src/maemo/modest-main-window.c: (sync_accounts_cb),
1776         (modest_main_window_new):
1777         Fixed projects.maemo.org bug NB#58576 by moving previous fix out of
1778         dead code.
1779         
1780         * src/modest-account-mgr.c: (modest_account_mgr_has_accounts):
1781         * src/modest-account-mgr.h:
1782         Added method to avoid code duplication
1783         
1784         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts),
1785         (modest_ui_actions_on_send_receive):
1786         Use modest_account_mgr_has_accounts
1787
1788 2007-06-11  Murray Cumming  <murrayc@murrayc.com>
1789
1790         * src/maemo/easysetup/modest-presets.c:
1791         (modest_presets_get_info_server_security): Do not report secure auth 
1792         if there is none.
1793         * src/modest-protocol-info.c: Use the defines for the gconf key names 
1794         for secure authentication. This was not working because we were writing 
1795         Password and reading password, and the check was case sensitive.
1796         With this, gmail now works for receiving and sending when created via 
1797         easysetup.
1798
1799 2007-06-11  Murray Cumming  <murrayc@murrayc.com>
1800
1801         * src/maemo/easysetup/modest-presets.c:
1802         (modest_presets_get_info_server_security): Correct the key name for 
1803         SecureSmtp, because it seems to be case-sensitive.
1804         * src/maemo/easysetup/modest-wizard-dialog.c: (create_title):
1805         Do not try to get the 0th notebook page if there are 0 pages, to 
1806         avoid a g_warning().
1807
1808 2007-06-11  Murray Cumming  <murrayc@murrayc.com>
1809
1810         * src/maemo/modest-platform.c: (modest_platform_on_new_msg):
1811         Prevent use of the new notification feature for now, because it currently 
1812         shows one dialog for each new email, which is annoying.
1813
1814 2007-06-11  Murray Cumming  <murrayc@murrayc.com>
1815
1816         * src/maemo/easysetup/modest-easysetup-provider-combo-box.c:
1817         (easysetup_provider_combo_box_fill): Ask for the providers for mmc=0 
1818         when no country was selected, so that we show the global ones.
1819         * src/maemo/easysetup/modest-presets.c:
1820         (modest_presets_get_providers): Return only the global providers, not 
1821         all providers when mmc=0 was requested.
1822
1823 2007-06-11  Murray Cumming  <murrayc@murrayc.com>
1824
1825         * src/maemo/easysetup/modest-easysetup-provider-combo-box.c:
1826         (easysetup_provider_combo_box_fill): Remove debug code that showed the 
1827         provider ID in the combo.
1828         
1829         * src/maemo/easysetup/modest-wizard-dialog.c: (create_title):
1830         Do not show the page numbers, because it would be confusing when we add 
1831         the 2 extra pages for the custom setup, when the user chooses the "Other"
1832         provider. This fixes projects.maemo.org bug NB#59028
1833         
1834         * src/modest-init.c: (modest_init_init_core),
1835         (modest_init_local_folders):
1836         * src/modest-init.h:
1837         * src/modest-tny-account.c:
1838         (modest_tny_account_new_for_local_folders): Do not create default folders 
1839         for the memory card. This should fix projects.maemo.org bug NB#59328.
1840
1841 2007-06-11  Murray Cumming  <murrayc@murrayc.com>
1842
1843         * src/modest-account-mgr.c: (modest_account_mgr_finalize):
1844         Free the changed_conf_keys string items. They are already freed in the 
1845         idle handler if that runs first.
1846
1847 2007-06-11  Murray Cumming  <murrayc@murrayc.com>
1848
1849         * src/modest-ui-actions.c:
1850         (modest_ui_actions_on_password_requested): Check that the server name 
1851         is not NULL, because I just saw a password dialog with (null) as the 
1852         server name.
1853
1854         * src/modest-tny-folder.[h|c]: Added 
1855         modest_tny_folder_is_memory_card_folder().
1856         * src/modest-ui-dimming-rules.c:
1857         (modest_ui_dimming_rules_on_new_folder): Do not dim the new folder context 
1858         menu item for memory cards, as per the UI spec (section 7.4). This should 
1859         fix projects.maemo.org bug NB#59297.
1860
1861 2007-06-10  Johannes Schmid <johannes.schmid@openismus.com>
1862
1863         * src/maemo/modest-main-window.c: (sync_accounts_cb):
1864         Fixed projects.maemo.org bug NB#58576 (not yet activated as there
1865         is another problem with the code, see Murray's comment at line 772)
1866
1867 2007-06-08  Murray Cumming  <murrayc@murrayc.com>
1868
1869         * src/maemo/easysetup/modest-easysetup-country-combo-box.h:
1870         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
1871         (on_model_foreach_release), (easysetup_country_combo_box_finalize),
1872         (load_from_file), (easysetup_country_combo_box_init),
1873         (easysetup_country_combo_box_get_active_country_ids),
1874         (on_model_foreach_select_id): Store a GSList* of IDs in the model row, 
1875         instead of just one ID, to avoid duplicate country names in the UI.
1876
1877         * src/maemo/easysetup/modest-easysetup-provider-combo-box.h:
1878         * src/maemo/easysetup/modest-easysetup-provider-combo-box.c:
1879         (easysetup_provider_combo_box_fill): Adapt to use a list rather than 
1880         a single ID, avoiding duplicate providers.
1881         * src/maemo/easysetup/modest-easysetup-wizard.c:
1882         (on_combo_account_country): Adapt to use a list.
1883
1884 2007-06-08  Murray Cumming  <murrayc@murrayc.com>
1885
1886         * src/modest-account-mgr-priv.h: Added a timeout id and a GSList of 
1887         keys changed in the last X seconds.
1888         
1889         * src/modest-account-mgr.h:
1890         * src/modest-account-mgr.c: (on_timeout_notify_changes),
1891         (on_key_change), (modest_account_mgr_class_init),
1892         (modest_account_mgr_init), (modest_account_mgr_finalize):
1893         As the keys are changed, save them in a GSList* and signal that GSList* 
1894         further every X seconds, to batch changes, to allow us to do just one 
1895         update per batch. This should fix bug projects.maemo.org bug NB#56472 and 
1896         bug NB#56941 and other (UI-blocking) delays when changing account settings.
1897         
1898         * src/modest-tny-account-store.c: (on_account_changed): Adapted to 
1899         changed signal signature.
1900         
1901         * src/modest-conf.c: (modest_conf_set_list),
1902         (modest_conf_on_change): Reenable notification.
1903         
1904         (modest_conf_maemo_fake_on_change): Comment out the hack that 
1905         notified immediately instead of asynchronously.
1906         
1907         * src/widgets/modest-account-view.h: 
1908         * src/widgets/modest-account-view.c:
1909         (update_account_view): Select the previously-selected account ID, 
1910         if possible. This fixes projects.maemo.org bug NB#56933.
1911         
1912         (on_account_changed), (on_account_removed),
1913         (modest_account_view_select_account):
1914         
1915         Remove the block/unblock functions 
1916         because they were not useful.
1917         
1918         * src/maemo/modest-account-view-window.c:
1919         (on_delete_button_clicked), (on_edit_button_clicked),
1920         (on_new_button_clicked): Remove the use of the non-working block/unblock.
1921
1922 2007-06-08  Murray Cumming  <murrayc@murrayc.com>
1923
1924         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
1925         Improve the error dialog to show Incorrect Account Settings, which seems 
1926         clearer, and say that the internal error message (to be removed from the 
1927         dialog later) is often misleading.
1928         I have confirmed that projects.maemo.org bug NB#58543 is no longer a problem.
1929         
1930         * src/modest-tny-account.c:
1931         (modest_tny_account_new_from_server_account): Uncomment the printf of the 
1932         URL because this is so useful for debugging on the device.
1933         
1934         * src/widgets/modest-serversecurity-combo-box.c:
1935         (modest_serversecurity_combo_box_fill): Correct a logical ID.
1936
1937 2007-06-08  Murray Cumming  <murrayc@murrayc.com>
1938
1939         * src/modest-mail-operation.c:
1940         (modest_mail_operation_send_new_mail):
1941         Added a comment about a nasty but apparently harmless message. Details 
1942         added to the wiki g_warnings() page.
1943
1944 2007-06-08  Murray Cumming  <murrayc@murrayc.com>
1945
1946         * src/modest-tny-send-queue.c: (modest_tny_send_queue_add),
1947         (modest_tny_send_queue_class_init):
1948         Do not use the priv struct because it is empty, to avoid g_warnings 
1949         about a non-existant priv struct.
1950         
1951         * src/modest-tny-account-store.c:
1952         (modest_tny_account_store_get_server_account),
1953         (modest_tny_account_store_get_transport_account_for_open_connection
1954         ): Do not try to get transport server accounts for local folders, 
1955         because they don't have any. This avoids a g_warning().
1956         
1957         * src/maemo/modest-main-window.c:
1958         (modest_main_window_notify_send_receive_initied),
1959         (on_configuration_key_changed):
1960         * src/maemo/modest-msg-edit-window.c: (on_delete_event):
1961         * src/modest-defs.h:
1962         * src/modest-mail-operation.c:
1963         (modest_mail_operation_update_account):
1964         * src/modest-tny-account-store.h:
1965         * src/modest-tny-account.c:
1966         (modest_tny_account_get_special_folder),
1967         (modest_tny_account_new_for_local_folders),
1968         (modest_tny_account_new_for_per_account_local_outbox_folder):
1969         * src/modest-tny-folder.c: (modest_tny_folder_is_local_folder):
1970         * src/modest-tny-local-folders-account.c:
1971         (add_account_folders_to_merged_folder):
1972         * src/modest-ui-actions.c: (modest_ui_actions_on_new_msg),
1973         (reply_forward_cb), (modest_ui_actions_on_save_to_drafts),
1974         (modest_ui_actions_on_send):
1975         * src/widgets/modest-folder-view.c: (update_model):
1976         Rename MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID to 
1977         MODEST_LOCAL_FOLDERS_ACCOUNT_ID and rename 
1978         modest_tny_account_store_get_tny_account_by_account() to 
1979         modest_tny_account_store_get_server_account() to make the code clearer.
1980
1981 2007-06-07  Marcus Bauer  <marcusb@openismus.com>
1982
1983         * src/dbus_api/modest-dbus-api.h:
1984         changed MODEST_DBUS_NAME in order to get dbus auto-activation to work
1985         * src/maemo/modest-msg-edit-window.c:
1986         (modest_msg_edit_window_attach_file_noninteractive):
1987         added g_warning in case the file to be attached does not exist
1988         * tests/dbus_api/test_compose_mail.c: (main):
1989         removed obsolete comment, added generic files as test case
1990
1991 2007-06-07  Murray Cumming  <murrayc@murrayc.com>
1992
1993         * src/modest-tny-account-store.c: (get_server_accounts): 
1994         Create the local folders account only once, not once for each outbox, and 
1995         not only when there are some outboxes.
1996
1997 2007-06-07  Murray Cumming  <murrayc@murrayc.com>
1998
1999         * src/widgets/modest-folder-view.c: (update_model): Comment out some 
2000         code that is causing a crash at startup. Sergio says that he is fixing this.
2001
2002 2007-06-07  Johannes Schmid <johannes.schmid@openismus.com>
2003
2004         * src/maemo/easysetup/modest-easysetup-wizard.c: (on_before_next):
2005         * src/maemo/modest-account-settings-dialog.c:
2006         (create_page_outgoing),
2007         (modest_account_settings_dialog_set_account_name),
2008         (save_configuration):
2009         - Fixed handling of the "Use secure authentication" toggle to comply with
2010         the ui specification. See also projects.maemo.org bug NB#58400
2011         
2012         - Restore the Secure connection setting combo correctly when loading
2013         the settings dialog
2014         
2015         * src/maemo/modest-maemo-utils.c:
2016         (on_camel_account_get_supported_secure_authentication),
2017         (modest_maemo_utils_get_supported_secure_authentication_methods):
2018         Fixed a crasher if operation is canceled
2019         
2020         * src/modest-protocol-info.c: (modest_protocol_info_is_secure),
2021         (modest_protocol_info_auth_is_secure):
2022         * src/modest-protocol-info.h:
2023         
2024         Added two new methods to determine if a protocol/auth method is secure/encrypted in 
2025         the sense of the "Use secure authentication" toggle.
2026
2027 2007-06-07  Murray Cumming  <murrayc@murrayc.com>
2028
2029         * src/modest-tny-account-store.h:
2030         * src/modest-tny-account-store.c:
2031         Added modest_tny_account_store_get_local_folders_account().
2032         
2033         * src/modest-tny-folder.h:
2034         * src/modest-tny-folder.c:
2035         (modest_tny_folder_get_account):
2036         Added this replacement for tny_folder_get_account() which returns 
2037         the local-folders account for TnyMergeFolders, to avoid the 
2038         warning about the unimplemented get_account_func() vfunc().
2039         
2040         (modest_tny_folder_get_rules),
2041         * src/modest-ui-actions.c:
2042         (modest_ui_actions_on_folder_selection_changed):
2043         * src/modest-mail-operation.c:
2044         (modest_mail_operation_remove_folder),
2045         (modest_mail_operation_xfer_folder),
2046         (modest_mail_operation_rename_folder),
2047         (modest_mail_operation_get_msg),
2048         (modest_mail_operation_get_msgs_full),
2049         (modest_mail_operation_remove_msg),
2050         (modest_mail_operation_xfer_msgs),
2051         (modest_mail_operation_refresh_folder):
2052         Use modest_tny_folder_get_account() instead of tny_folder_get_account().
2053         
2054 2007-06-07  Murray Cumming  <murrayc@murrayc.com>
2055
2056         * src/modest-account-mgr-helpers.c: (get_security_for_conf_string),
2057         (modest_server_account_set_security): 
2058         * src/modest-defs.h: Add comments explaining that our 
2059         UI spec means TLS when it says Normal, so these do not look like errors.
2060         
2061         * src/modest-tny-account.c:
2062         (modest_tny_account_new_from_server_account): Use the new tinymail 
2063         'wrapped' option for regular SSL, and use the new tinymail 'tls' option 
2064         for TLS. This should fix projects.maemo.org bug NB#58460.
2065
2066 2007-06-06  Murray Cumming  <murrayc@murrayc.com>
2067
2068         * src/maemo/easysetup/modest-easysetup-wizard.c:
2069         (create_account): Correct the position of the gconf sanity check warning.
2070         (on_button_edit_advanced_settings): Show the dialog immediately, instead 
2071         of using the g_idle_add() hack, because this does not seem to be necessary 
2072         on osso 1.1. It might even work on Maemo Bora if the problems were actually 
2073         caused by something other than maemo's gconf.
2074         This fixes projects.maemo.org bug #59022.
2075
2076 2007-06-06  Murray Cumming  <murrayc@murrayc.com>
2077
2078         * src/modest-account-mgr-helpers.c:
2079         (modest_account_mgr_get_default_account): Do not check that the account 
2080         exists if there is no default account (NULL), to fix a runtime warning.
2081
2082 2007-06-06  Murray Cumming  <murrayc@murrayc.com>
2083
2084         * src/widgets/modest-folder-view.c: (update_model):
2085         Do not unref the treemodel before we have finished with it.
2086         This prevents a valgrind warning and an occasional crash at startup.
2087         
2088 2007-06-06  Marcus Bauer  <marcusb@openismus.com>
2089
2090         * libmodest-dbus-client/libmodest-dbus-client.h:
2091         added libmodest_dbus_client_compose_mail()
2092         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_compose_mail),
2093         (on_compose_mail):
2094         added functions needed for SendAsMail() functionality
2095         * src/maemo/modest-msg-edit-window.c:
2096         (modest_msg_edit_window_attach_file_noninteractive):
2097         non interactively attaching files to message edit window
2098         * src/widgets/modest-msg-edit-window.h:
2099         * tests/dbus_api/Makefile.am:
2100         added test_compose_mail.c
2101         * tests/dbus_api/test_compose_mail.c: (main):
2102
2103 2007-06-05  Johannes Schmid <johannes.schmid@openismus.com>
2104
2105         * src/modest-account-view.c:
2106         Fixed bug projects.maemo.org bug NB#59307
2107
2108 2007-06-05  Johannes Schmid <johannes.schmid@openismus.com>
2109
2110         * src/maemo/easysetup/modest-easysetup-wizard.c:
2111         (get_serverport_incoming), (on_before_next), (create_account):
2112         * src/maemo/modest-account-settings-dialog.c:
2113         (modest_account_settings_dialog_set_account_name):
2114         * src/maemo/modest-maemo-utils.c:
2115         (on_camel_account_get_supported_secure_authentication_status),
2116         (on_camel_account_get_supported_secure_authentication),
2117         (on_secure_auth_cancel),
2118         (modest_maemo_utils_get_supported_secure_authentication_methods):
2119
2120         Implemented security authentication for settings and easysetup.
2121
2122 2007-06-05  Murray Cumming  <murrayc@murrayc.com>
2123
2124         * src/maemo/modest-main-window.c: (create_details_widget):
2125         Show the total size for memory card accounts too, instead of showing 
2126         the name again. Fixes bug projects.maemo.org bug NB#59307.
2127
2128 2007-06-05  Murray Cumming  <murrayc@murrayc.com>
2129
2130         * src/Makefile.am:
2131         * src/modest-tny-simple-folder-store.c:
2132         * src/modest-tny-simple-folder-store.h: Removed.
2133         
2134         * src/modest-tny-local-folders-account.h
2135         * src/modest-tny-local-folders-account.c: Added a derived TnyAccount 
2136         for the local-folders maildir, with an extra TnyMergedFolder containing 
2137         the folders of the per-account outbox store accounts.
2138         * src/modest-tny-account-store.c: (get_server_accounts):
2139         Add the outboxes to the special local folders account after creating it.
2140                 
2141         * src/modest-tny-account.c:
2142         (modest_tny_account_new_for_local_folders): Create the derived 
2143         account when creating the main local-folders account.
2144         
2145         * src/maemo/modest-main-window.c: (create_details_widget),
2146         (modest_main_window_set_contents_style):
2147         Adapted to the use of the derived account instead of the folder store.
2148         
2149         * src/modest-ui-actions.c:
2150         (modest_ui_actions_on_folder_selection_changed):
2151         * src/modest-ui-dimming-rules.c:
2152         (modest_ui_dimming_rules_on_new_folder):
2153         * src/widgets/modest-folder-view.c: (text_cell_data),
2154         (icon_cell_data), (filter_row), (update_model),
2155         (get_cmp_rows_type_pos):
2156         
2157
2158         * src/modest-tny-send-queue.c: (modest_tny_send_queue_new): 
2159         Do not get the priv struct, because no priv struct has been set, 
2160         to avoid a runtime warning.
2161         
2162         * src/maemo/modest-platform.c: (modest_platform_show_help): Replace 
2163         #ifelse with #else, to fix a warning, to fix the build.
2164         
2165         
2166 2007-06-05  Christian Kellner  <ckellner@openismus.com> 
2167
2168         * libmodest-dbus-client/libmodest-dbus-client.c:
2169         Fix small typo in doc (why do you always see them
2170         AFTER committing stuff?)
2171
2172
2173 2007-06-05  Christian Kellner  <ckellner@openismus.com> 
2174
2175         * libmodest-dbus-client/libmodest-dbus-client.c:
2176         (libmodest_dbus_client_search):
2177         Initialize hit list with NULL. Also set folder list 
2178         to "" if NULL was supplied. 
2179         Add documentation.
2180
2181 2007-06-03  Christian Kellner  <ckellner@openismus.com> 
2182
2183         * libmodest-dbus-client/libmodest-dbus-client.c:
2184         (modest_search_hit_list_free):
2185         Make it save to call it with NULL.
2186
2187         * src/dbus_api/modest-dbus-callbacks.c:
2188         * src/modest-search.c:
2189         Return full ModestSearchHits as the search result list not TnyHeader
2190         since can't be around withouth the correspoding TnyFolder.
2191
2192 2007-06-03  Johannes Schmid <johannes.schmid@openismus.com>
2193
2194         * src/maemo/easysetup/modest-easysetup-wizard.c: (on_before_next):
2195         Added currently commented code to check for secure auth
2196         
2197         * src/maemo/modest-account-settings-dialog.c: (on_response),
2198         (save_configuration), (show_ok):
2199         Fixed projects.maemo.org bugs NB #59248 and #59251
2200         
2201         * src/maemo/modest-maemo-utils.c:
2202         (on_camel_account_get_supported_secure_authentication_status),
2203         (on_camel_account_get_supported_secure_authentication),
2204         (modest_maemo_utils_get_supported_secure_authentication_methods):
2205         * src/maemo/modest-maemo-utils.h:
2206         Moved get_supported_secure_authentication() method here to be able
2207         to use it from easysetup wizard.
2208         
2209         * src/modest-pair.c: (on_pair_compare_as_string):
2210         Should compare string with first part of pair and not
2211         strcmp pairs which will crash.
2212         
2213         * src/modest-protocol-info.c:
2214         (modest_protocol_info_protocol_is_store):
2215         * src/modest-protocol-info.h:
2216         Added modest_protocol_info_get_auth_protocol_name()
2217
2218 2007-06-03  Armin Burgmeier  <armin@openismus.com>
2219
2220         * src/modest-mail-operation.c:
2221         (modest_mail_operation_get_msgs_full): Set priv->account also when
2222         only retrieving a single message. This avoids a crash when canceling
2223         the operation.
2224
2225         (modest_mail_operation_notify_end): Do not explicitely remove the
2226         operation from the queue but only emit the progress_changed signal.
2227         The queue itself listens to that signal to remove the operation when
2228         it is finished. This reduces coupling and removes a potential deadlock
2229         when modest_mail_operation_notify_end() is called from the queue
2230         itself. If that is a problem performance-wise, I would suggest to
2231         implement a status-changed signal or something.
2232
2233         * src/modest-mail-operation-queue.c: Make sure to never call a
2234         function from another file while the queue is locked. This (hopefully)
2235         fixes another deadlock when exiting the application while retrieving
2236         mail.
2237
2238 2007-06-03  Johannes Schmid <johannes.schmid@openismus.com>
2239
2240         * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_filter):
2241         Fixed build if libogs is not available
2242         
2243 2007-06-03  Christian Kellner  <ckellner@openismus.com>
2244
2245         * libmodest-dbus-client/libmodest-dbus-client.h:
2246         * libmodest-dbus-client/libmodest-dbus-client.c:
2247         (libmodest_dbus_client_delete_message):
2248         Implement deletion of messages (Client side).
2249
2250         (modest_search_hit_free),
2251         (modest_search_hit_list_free):
2252         Utility functions to free the result hits.
2253
2254         * src/dbus_api/modest-dbus-api.h:
2255         * src/dbus_api/modest-dbus-callbacks.c:
2256         (on_delete_message),
2257         (modest_dbus_req_handler):
2258         Implement deletion of messages (Server side).
2259         
2260         * tests/dbus_api/test_search.c: (main):
2261         Free the hits.
2262
2263         * tests/dbus_api/Makefile.am:
2264         * tests/dbus_api/test_delete_message:
2265         Add little test for the message deletion logic
2266
2267 2007-06-03  Armin Burgmeier  <armin@openismus.com>
2268
2269         * src/modest-mail-operation-queue.c: Fixed a deadlock in finalize()
2270         when the operation queue was not empty. projects.maemo.org bug
2271         NB#58976.
2272
2273 2007-06-03  Armin Burgmeier  <armin@openismus.com>
2274
2275         * src/widgets/modest-account-view.c
2276         (on_account_default_toggled): Toggle default account column
2277         explicitely instead of waiting for gconf notification (which is
2278         currently ignored). This should fix projects.maemo.org bug NB#56910
2279         for now. It should probably be removed when gconf notifications are
2280         re-enabled.
2281
2282 2007-06-03  Christian Kellner  <ckellner@openismus.com>
2283
2284         * libmodest-dbus-client/libmodest-dbus-client.c:
2285         Removed debugging spew.
2286
2287         * src/dbus_api/modest-dbus-callbacks.c:
2288         Added debugging info.
2289
2290         * src/modest-search.c: 
2291         (modest_search_all_accounts):
2292         Use tny_account_store_get_accounts () on the account store
2293         to get all accounts which is the way to get all accounts.
2294
2295         * tests/dbus_api/test_search.c: (main):
2296         Make it possible to supply the search term on the command line.
2297
2298 2007-06-03  Christian Kellner  <ckellner@openismus.com>
2299
2300         * libmodest-dbus-client/libmodest-dbus-client.c:
2301         * libmodest-dbus-client/libmodest-dbus-client.h:
2302         Implement searching for mesages over raw dbus. (Client side)
2303         
2304         * src/dbus_api/Makefile.am:
2305         * src/dbus_api/modest-dbus-api.h:
2306         * src/dbus_api/modest-dbus-callbacks.c:
2307         * src/dbus_api/modest-dbus-callbacks.h:
2308         Search framework (Server side). Also implement on_idle_open_message().
2309
2310         * src/maemo/modest-platform.c: (modest_platform_init):
2311         Prepare for raw dbus/osso rpc interaction.
2312
2313         * src/modest-search.h:
2314         Changed minsize from unspecific guint to guint32.
2315
2316         * src/modest-search.c: 
2317         (add_header):
2318         Added strange hack which magically made tnymail work.
2319         
2320         (modest_search_folder),
2321         (modest_search_account),
2322         (modest_search_all_accounts):
2323         Implement helper functions to search all accounts, specific account
2324         and folder.
2325
2326         * tests/dbus_api/Makefile.am:
2327         * tests/dbus_api/test_open_message.c:
2328         Read url to open from commandline.
2329
2330         * tests/dbus_api/test_search.c:
2331         Implement small test for dbus search stuff
2332
2333 2007-06-02  Armin Burgmeier  <armin@openismus.com>
2334
2335         * src/maemo/modest-account-settings-dialog.c: Changed window title to
2336         include account type and account title. This fixes projects.maemo.org
2337         bug NB#59000.
2338
2339         * src/maemo/modest-account-view-window.c: Set a title for the window.
2340
2341 2007-06-02  Armin Burgmeier  <armin@openismus.com>
2342
2343         * src/maemo/easysetup/modest-easysetup-wizard.c: Always prefill
2344         incoming and outgoing server name based on email address and server
2345         types as long as the names have not been edited manually. This fixes
2346         projects.maemo.org bug NB#58671.
2347
2348 2007-06-02  Armin Burgmeier  <armin@openismus.com>
2349
2350         * src/maemo/easysetup/modest-easysetup-wizard.c: Added a note that the
2351         server type cannot be changed in future to the incoming details page
2352         when creating an account. This fixes projects.maemo.org bug NB#59029.
2353
2354 2007-06-02  Armin Burgmeier  <armin@openismus.com>
2355
2356         * src/maemo/easysetup/modest-easysetup-wizard.c: Made labels wrapping
2357         and assigned max width chars so that they wrap instead of being
2358         truncated. Fixes projects.maemo.org bug NB#56126.
2359
2360 2007-06-02  Armin Burgmeier  <armin@openismus.com>
2361
2362         * src/maemo/modest-connection-specific-smtp-window.c: Add an
2363         introductory note to the connection specific smtp servers dialog, as
2364         section 8.12 of the email UI specification requires. This fixes
2365         projects.maemo.org bug NB#59212.
2366
2367 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2368
2369         * src/maemo/modest-account-view-window.c: (on_edit_button_clicked):
2370         Check for running mail operations, and offer to cancel them, as per the UI 
2371         spec. This fixes projects.maemo.org bug NB#59041 .
2372         However, I suspect that tinymail may still use the network connection 
2373         in ways that we cannot detect or cancel. But it should at least adapt to 
2374         changes fairly well.
2375
2376 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2377
2378         * src/modest-tny-account-store.c: (recreate_all_accounts),
2379         (get_cached_accounts), (get_server_accounts): Do more sensible 
2380         ref-counting of the temporarily-cached outbox accounts list. This seems 
2381         to fix a crash when entering the password when the password was wrong.
2382
2383 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2384
2385         * src/gnome/modest-main-window.c: (connect_signals):
2386         * src/modest-tny-account-store.c: (get_password),
2387         (modest_tny_account_store_alert): Added comments and clues and 
2388         commented-out code about how we currently fail to deal with connection 
2389         errors and wrong passwords, and how we should.
2390
2391 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2392
2393         * src/widgets/modest-retrieve-combo-box.c:
2394         (modest_retrieve_combo_box_fill): Correc the choices for POP and IMAP.
2395         This fixes projects.maemo.org bug NB#58472 .
2396
2397 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2398
2399         * src/maemo/easysetup/modest-easysetup-wizard.c:
2400         (create_page_complete_easysetup): 
2401         (create_page_complete_custom): Correct the last commit, 
2402         putting the correct sentences in the correct pages.
2403
2404 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2405
2406         * src/maemo/easysetup/modest-easysetup-wizard.c:
2407         (create_page_complete_custom): Show the second sentence of text 
2408         (mcen_ia_easysetup_complete). This fixes projects.maemo.org bug 
2409         NB#59023 .
2410
2411 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2412
2413         * src/modest-account-mgr.c: (modest_account_mgr_add_account):
2414         Set the leave-on-server conf key by default. This fixes 
2415         projects.maemo.org bug NB#59258 .
2416
2417 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2418
2419         * src/maemo/modest-account-view-window.c:
2420         (on_delete_button_clicked): Use the new emev_nc_delete_mailboximap 
2421         logical ID for the confirmation messages. Fixed projects.maemo.org bug 
2422         NB#59037 .
2423
2424 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2425
2426         * src/maemo/easysetup/modest-easysetup-wizard.c:
2427         (create_caption_new_with_asterisk): 
2428         * src/maemo/modest-account-settings-dialog.c:
2429         (create_caption_new_with_asterisk):
2430         Uncomment the code to add the asterisk, because they are no longer in the 
2431         translated text in the .po file. Fixes projects.maemo.org bug NB#59202 .
2432         (update_incoming_server_title): Add an asterisk here too.
2433
2434 2007-06-01  Murray Cumming  <murrayc@murrayc.com>
2435
2436         * src/maemo/modest-maemo-global-settings-dialog.c:
2437         (current_connection): Check that we are even connected before trying to 
2438         get the current connection name, to prevent a warning.
2439         
2440         * src/maemo/modest-platform.c: (modest_platform_connect_and_wait):
2441         Change the comments because tny_maemo_conic_device_connect() is now meant to 
2442         block.
2443         * src/modest-mail-operation.c:
2444         (modest_mail_operation_update_account): Call modest_platform_connect_and_wait() to 
2445         make sure we have a connection and fail if we can't connect.
2446
2447 2007-05-31  Murray Cumming  <murrayc@murrayc.com>
2448
2449         * src/maemo/modest-main-window.c:
2450         (on_account_store_connecting_finished): Do not try to get the 
2451         connection ID if we are not really connected. I am surprised that 
2452         this signal handler is called when we are not connected.
2453
2454 2007-05-31  Murray Cumming  <murrayc@murrayc.com>
2455
2456         * src/modest-error.h: 
2457         * src/modest-ui-actions.c:
2458         (modest_ui_actions_get_msgs_full_error_handler):
2459         Renamed an enum, added comments, added an enum 
2460         for retrieve-limit errors.
2461         
2462         * src/modest-mail-operation.c: (foreach_add_item),
2463         (internal_folder_observer_update), (update_account_thread),
2464         (modest_mail_operation_get_msgs_full):
2465         (modest_mail_operation_update_account),
2466         Added comments about how this works, and some code that should 
2467         (but does not) check the retrieve-limit. See the TODO comment.
2468
2469 2007-05-31  Murray Cumming  <murrayc@murrayc.com>
2470
2471         * src/modest-ui-actions.c: (modest_ui_actions_on_help):
2472         Initialize help_id to fix the build. Warnings are good.
2473
2474 2007-05-31  Murray Cumming  <murrayc@murrayc.com>
2475
2476         * src/widgets/modest-hbox-cell-renderer.c:
2477         (modest_hbox_cell_renderer_append):
2478         * src/widgets/modest-vbox-cell-renderer.c:
2479         (modest_vbox_cell_renderer_append):
2480         Fix the last commit by doing an extra ref.
2481
2482 2007-05-31  Murray Cumming  <murrayc@murrayc.com>
2483
2484         * src/widgets/modest-hbox-cell-renderer.c:
2485         (modest_hbox_cell_renderer_append):
2486         * src/widgets/modest-vbox-cell-renderer.c:
2487         (modest_vbox_cell_renderer_append):
2488         For glib < 2.10, use gtk_object_sink() instead of g_object_ref_sink(), 
2489         to fix the build with Maemo Bora.
2490         However, there seems to be a remaining crash, probably due to reference 
2491         counting errors.
2492
2493 2007-05-30  Murray Cumming  <murrayc@murrayc.com>
2494
2495         * src/modest-tny-account.c:
2496         (modest_tny_account_new_for_local_folders):
2497         Use hildon_file_system_info_async_new() to get a better name for 
2498         the memory card account, setting it as the account name.
2499         The timing seems to work, but this is probably 
2500         not the best place to do this. See the TODO comment.
2501         * src/maemo/modest-main-window.c: (create_details_widget):
2502         * src/widgets/modest-folder-view.c: (text_cell_data):
2503         Use the tny account name instead of hardcoding a name.
2504
2505 2007-05-30  Christian Kellner  <ckellner@openismus.com>
2506
2507         * src/modest-search.c: (modest_search):
2508         Correctly set part_search_func even if we have already parsed
2509         the query and thus a valid OgsTextSearcher object.
2510
2511 2007-05-30  Christian Kellner  <ckellner@openismus.com>
2512
2513         * configure.ac:
2514         Search and check for libogs.
2515
2516         * src/Makefile.am:
2517         Incooparte the ogs build env.
2518
2519         * src/modest-mime-part-search-stream.c:
2520         * src/modest-mime-part-search-stream.h:
2521         Removed since we do the real searching now in modest-search.c.
2522
2523         * src/modest-search.c:
2524         * src/modest-search.h:
2525         Implement support for ogs. We use that if available and requested
2526         and fall back to modest_text_utils_utf8_strcmp (). The search logic
2527         should now handle the corner case when the search term is spread
2528         across multiple reads.
2529         Also the logic in modest_search () was corrected to search all
2530         requested fields until one is found.
2531
2532 2007-05-30  Murray Cumming  <murrayc@murrayc.com>
2533
2534         * src/modest-defs.h: Define MODEST_MCC1_VOLUMEPATH and MODEST_MCC1_VOLUMEPATH_URI.
2535         
2536         * src/modest-init.h:
2537         * src/modest-init.c: Made modest_init_local_folders() take a
2538         path and be public so we can iniitialize maildir folders on 
2539         arbitrary volumes.
2540
2541         * src/modest-local-folder-info.h:
2542         * src/modest-local-folder-info.c:
2543         (modest_local_folder_info_get_maildir_path): Add a path parameter.
2544
2545         * src/modest-tny-account.c:
2546         (modest_tny_account_new_for_local_folders): Take a path parameter, though NULL 
2547         still means the standard local-folders path on the local volume.
2548         
2549         * src/modest-tny-account-store.c:
2550         (modest_tny_account_store_instance_init): Connect to GnomeVfsVolumeMonitor 
2551         signal so we can detect mount/unmount of the MMC1 card, and do an update of 
2552         all accounts when that happens.
2553         (get_server_accounts): If the MMC1 card is mounted, create a store account for 
2554         this too, so it shows up in the treeview.
2555
2556 2007-05-28  Murray Cumming  <murrayc@murrayc.com>
2557
2558         * src/maemo/modest-maemo-global-settings-dialog.c:
2559         (current_connection):
2560         * src/widgets/modest-global-settings-dialog.c:
2561         (current_connection_default):
2562         Use the enum values instead of 0, 1 and -1,
2563         to make the code clearer.
2564         
2565         * src/modest-account-mgr-helpers.c:
2566         (modest_account_mgr_get_connection_specific_smtp): Make this code 
2567         more robust.
2568         
2569         * src/modest-runtime.h:
2570         * src/modest-runtime.c:
2571         Added modest_runtime_remove_all_send_queues().
2572         * src/maemo/modest-main-window.c:
2573         (on_account_store_connecting_finished): Recreate the send queues, 
2574         using the appropriate transport accounts for this new connection.
2575         Some futher adapting might be needed if the old send queues are not 
2576         automatically stopped at this point.
2577
2578         * src/modest-tny-account-store.c: (get_server_accounts):
2579         Create the connection-specific transport accounts, so that they can 
2580         be found later by their ID.
2581         
2582         * src/modest-tny-account.h:
2583         * src/modest-tny-account.c:
2584         Added modest_tny_account_new_from_server_account_name().
2585         modest_tny_account_new_from_server_account(): Do not create the 
2586         send queues here, because they will be 
2587         recreated anyway when the connection changes for the first time.
2588
2589 2007-05-28  Murray Cumming  <murrayc@murrayc.com>
2590
2591         * src/modest-local-folder-info.h:
2592         * src/modest-local-folder-info.c:
2593         (modest_per_account_local_outbox_folder_info_get_maildir_path),
2594         (modest_per_account_local_outbox_folder_info_get_maildir_path_to_ou
2595         tbox_folder): Take a modest account name instead of a server TnyAccount,
2596         so we can have per-modest-account rather than per-transport-account 
2597         outboxes.
2598         We must make sure that we change or recreate the exisitng send queues 
2599         when the connection changes for connection-specific transport accounts.
2600         
2601         * src/modest-tny-account-store.c:
2602         (create_per_account_local_outbox_folders): Create outboxed per modest 
2603         account, not per transport account.
2604         
2605         * src/modest-tny-account.h:
2606         * src/modest-tny-account.c:
2607         (modest_tny_account_get_special_folder): For outboxes, get the 
2608         parent modest account name. The account is ignored for other folders.
2609         (modest_tny_account_new_for_per_account_local_outbox_folder): Take a 
2610         modest account name rather than a server TnyAccount.
2611
2612 2007-05-25  Murray Cumming  <murrayc@murrayc.com>
2613
2614         * src/modest-tny-account.c:
2615         (modest_tny_account_new_from_server_account): 
2616         Call modest_runtime_get_send_queue() immediately after creating transport 
2617         accounts, so that they start trying to send email from the outbox as soon 
2618         as possible at startup. This is probably what we want.
2619         
2620         * src/modest-mail-operation.c: (update_account_thread):
2621         * src/modest-runtime.c: (modest_runtime_get_send_queue):
2622         * src/modest-tny-send-queue.c: (modest_tny_send_queue_try_to_send):
2623         * src/modest-tny-send-queue.h:
2624         * src/modest-ui-actions.c: (modest_ui_actions_do_send_receive),
2625         (modest_ui_actions_on_send):
2626         Added comments about how sending works, though it needs some more work.
2627
2628 2007-05-25  Murray Cumming  <murrayc@murrayc.com>
2629
2630         * src/modest-tny-account.c:
2631         (modest_tny_account_get_special_folder): Add TODO because this fails when 
2632         the network is busy.
2633         (modest_tny_folder_store_get_local_size):  Fix an incorrect type check.
2634         * src/modest-ui-actions.c: (modest_ui_actions_on_smtp_servers): 
2635         Do not try to show this window when there is no active account. The UI 
2636         specs does not tell us what to do in this case.
2637
2638 2007-05-24  Murray Cumming  <murrayc@murrayc.com>
2639
2640         * Makefile.am:
2641         * po/POTFILES.in:
2642         * src/maemo/Makefile.am:
2643         * src/widgets/Makefile.am: Some dist fixes.
2644
2645 2007-05-24  Murray Cumming  <murrayc@murrayc.com>
2646
2647         * src/maemo/modest-connection-specific-smtp-window.c:
2648         (on_button_edit): Make the code clearer, to prevent a double free.
2649
2650 2007-05-24   Murray Cumming  <murrayc@murrayc.com>
2651
2652         * src/maemo/modest-account-settings-dialog.c:
2653         (modest_account_settings_dialog_set_account_name),
2654         Check the connection-specific smtp servers checkbox if there are any.
2655         
2656         * src/maemo/modest-connection-specific-smtp-edit-window.c:
2657         (modest_connection_specific_smtp_edit_window_init): 
2658         Start with a suitable port number.
2659         
2660         * src/modest-account-mgr-helpers.h:
2661         * src/modest-account-mgr-helpers.c: Added 
2662         modest_account_mgr_get_has_connection_specific_smtp().
2663         
2664         (modest_account_mgr_set_connection_specific_smtp),
2665         (modest_account_mgr_remove_connection_specific_smtp),
2666         (modest_account_mgr_get_has_connection_specific_smtp),
2667         (modest_account_mgr_get_connection_specific_smtp): Set/Get the list of 
2668         connection-specific smtp server accounts in the account, rather than 
2669         the server account conf dir.
2670         
2671         This fixes bug projects.maemo.org bug NB#58263 .
2672
2673         * src/modest-tny-account-store.c:
2674         (create_per_account_local_outbox_folders): Do not call get_server_accounts() 
2675         if there are no server accounts yet, to prevent an infinite loop when there 
2676         are no accounts. Document that one must be called before the other.
2677
2678 2007-05-24  Murray Cumming  <murrayc@murrayc.com>
2679
2680         * src/modest-account-mgr-helpers.c:
2681         (modest_account_mgr_get_default_account): Make sure that at least 
2682         one account is always the default, if there are any enabled accounts. 
2683         This is just a sanity check that shouldn't be necessary.
2684         
2685         * src/modest-account-mgr-priv.c:
2686         (_modest_account_mgr_account_from_key): Unescape the conf key to 
2687         get the real account name. For instance, this is an issue if a space 
2688         was in the account name, which can happen because the account name 
2689         is generated from the display name.
2690         (_modest_account_mgr_get_account_keyname): Always escape the 
2691         account name.
2692         * src/modest-account-mgr.c: (modest_account_mgr_account_names): 
2693         Unescape the conf keys to get the real account names.
2694         
2695         For instance, previously the is-default radio button in the accounts 
2696         list was not checked for any accounts at first. This fixes that,
2697         and might fix several similar bugs.
2698
2699 2007-05-23  Murray Cumming  <murrayc@murrayc.com>
2700
2701         * src/modest-ui-actions.c: (set_active_account_from_tny_account):
2702         Removed some debug printfs.
2703
2704 2007-05-23  Murray Cumming  <murrayc@murrayc.com>
2705
2706         Modest on-disk outbox directories are now here, for instance:
2707         $HOME/.modest/outboxes/<account-id-1>/outbox
2708         $HOME/.modest/outboxes/<account-id-2>/outbox
2709         instead of here:
2710         $HOME/.modest/local-folders/outbox
2711         so we can have a separate outbox for each account.
2712         But they are shown as one outbox in the GtkTreeView, by using a 
2713         TnyMergeFolder in a ModestTnySimpleFolderStore.
2714         
2715         * src/Makefile.am:
2716         * src/modest-tny-simple-folder-store.c:
2717         * src/modest-tny-simple-folder-store.h:
2718         Added ModestTnySimpleFolderStore, used to contain folders from 
2719         other folder stores, such as other accounts.
2720         
2721         * src/modest-tny-outbox-account.h:
2722         * src/modest-tny-outbox-account.c:
2723         Added ModestTnyOutboxAccount, derived from TnyCamelStoreAccount, 
2724         used for the per-account local outbox folders.
2725         
2726         * src/modest-defs.h: Rename MODEST_LOCAL_FOLDERS_ACCOUNT_ID to 
2727         MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID, to make it clearer that we 
2728         only use this (internally) now for the non-outbox local folders.
2729
2730         * src/modest-init.h:
2731         * src/modest-init.c: Added modest_init_one_local_folder(), for 
2732         setting up the directory structure for each local folder.
2733
2734         * src/modest-local-folder-info.c:
2735         (modest_per_account_local_outbox_folder_info_get_maildir_path),
2736         (modest_per_account_local_outbox_folder_info_get_maildir_path_to_ou
2737         tbox_folder):
2738         * src/modest-local-folder-info.h:
2739         * src/modest-tny-account-store.c: (on_account_removed),
2740         (on_account_changed), (create_per_account_local_outbox_folders),
2741         (get_server_accounts), (modest_tny_account_store_get_accounts),
2742         (modest_tny_account_store_get_tny_account_by_account),
2743         (modest_tny_folder_store_is_virtual_local_folders):
2744
2745         * src/modest-tny-account.h:
2746         * src/modest-tny-account.c:
2747         Added modest_tny_account_new_for_per_account_local_outbox_folder(), 
2748         to create an on-disk per-account local outbox folder for each 
2749         transport account.
2750         (create_per_account_local_outbox_folders): Create a local outbox folder 
2751         for each transport account.
2752         (modest_tny_account_new_for_local_folders): Do not create an outbox folder 
2753         for all local folders.
2754         
2755         Added modest_tny_account_get/set_parent_modest_account_name_for_server_account() 
2756         instead of using g_object_get/set() directly. It is clearer.
2757         
2758         (modest_tny_folder_store_get_message_count),
2759         (modest_tny_folder_store_get_local_size
2760         (modest_tny_folder_store_get_folder_count): Renamed from modest_tny_account*, 
2761         because we now use these with non-acount folder stores.
2762         
2763         (modest_tny_account_get_special_folder),
2764         (modest_tny_account_new_from_server_account),
2765         (modest_tny_account_new_from_account):
2766         (recurse_folders): Adjust to the new outbox system.
2767         
2768         * src/modest-tny-folder.h:
2769         * src/modest-tny-folder.c: 
2770         (modest_tny_folder_is_local_folder),
2771         (modest_tny_folder_get_local_folder_type),
2772         (modest_tny_folder_is_outbox_for_account): Adjust for the new outbox system.
2773         
2774         * src/widgets/modest-main-window.h:
2775         * src/maemo/modest-main-window.c: (create_details_widget),
2776         (modest_main_window_set_contents_style): Show details for any folder store, 
2777         not just accounts.
2778         
2779         (modest_tny_folder_get_rules): 
2780         Remove the const. C does not support constness enough for this.
2781         
2782         * src/modest-ui-actions.c:
2783         update_model(): Use a ModestTnySimpleListStore and a TnyMergeFolder to 
2784         make all outboxes appear as one, in the usual local-folders tree node.
2785         
2786         (set_active_account_from_tny_account),
2787         (modest_ui_actions_on_folder_selection_changed):
2788         * src/widgets/modest-folder-view.c: (text_cell_data),
2789         (icon_cell_data), (filter_row),
2790         (add_account_folders_to_merged_folder),
2791         (add_account_folders_to_simple_folder_store), (),
2792         (get_cmp_rows_type_pos), (cmp_rows),
2793         (modest_folder_view_set_account_id_of_visible_server_account):
2794         Adjust to the new outbox system, using generic folder stores and folders 
2795         in the GtkTreeModel.
2796
2797 2007-05-23  Christian Kellner  <ckellner@openismus.com>
2798
2799         * src/modest-mail-operation.c:
2800         (modest_mail_operation_update_account):
2801         Use info->max_size instead of unintialized local var [small
2802         build fix]. (Added TODO to review that change since I don't
2803         know the code)
2804
2805 2007-05-23  Marcus Bauer  <marcusb@openismus.com>
2806
2807         * libmodest-dbus-client/libmodest-dbus-client.c:
2808         (libmodest_dbus_client_compose_mail): function added
2809         * src/dbus_api/modest-dbus-api.h:
2810         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_compose_mail),
2811         (on_compose_mail): Implementation of the SendAsMail functionality
2812
2813 2007-05-22 Murray Cumming  <murrayc@murrayc.com>
2814
2815         * src/modest-account-mgr.c:
2816         (modest_account_mgr_add_server_account): Set the secure-connection 
2817         conf key for transport accounts as well as store accounts. I don't know 
2818         why the if was there. For instance, this makes sure that we use SSL 
2819         for the gmail preset from the easysetup wizard.
2820
2821 2007-05-22 Murray Cumming  <murrayc@murrayc.com>
2822
2823         * src/gnome/modest-main-window.c:
2824         (on_account_store_connecting_finished), (connect_signals):
2825         * src/maemo/modest-main-window.c:
2826         (on_account_store_connecting_finished), (connect_signals),
2827         (modest_main_window_new):
2828         Handle TnyAccountStore::connecting-finished instead of 
2829         TnyDevice::connection-changed, because we cannot actually perform 
2830         operations on accounts until TnyAccountStore has itself responded to 
2831         the TnyDevice::connection-changed signal. This prevents a GError from 
2832         tinymail.
2833         Do not try to update at startup, because we (at least on scratchbox) 
2834         already do an update at startup when the device goes online. 
2835         This prevents a GError from tinymail.
2836         * src/modest-ui-actions.c: (modest_ui_actions_do_send_receive): 
2837         Added TODO about stopping simultaneous operations.
2838
2839 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
2840
2841         * src/modest-account-mgr.c: (modest_account_mgr_add_account):
2842         * src/modest-mail-operation-queue.c:
2843         (modest_mail_operation_queue_remove):
2844         * src/modest-tny-account-store.c: When GErrors happen, give more clues 
2845         about where they happened.
2846
2847 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
2848
2849         * src/modest-ui-actions.c:
2850         (modest_ui_actions_on_password_requested): Make sure that the remember 
2851         output parameter is always TRUE.
2852
2853 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
2854
2855         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
2856         Show a OK/Cancel dialog if the error is a question, though we still do not 
2857         know anything more about what we are asking the user.
2858         * src/widgets/modest-folder-view.c: (on_drag_data_received):
2859         Fix an uninitialized variable (helper). This is a logic error, however.
2860
2861 2007-05-21  Christian Kellner  <ckellner@openismus.com>
2862         
2863         * src/modest-search.h:
2864         Correct bit shifting in the ModestSearchFlags enum.
2865
2866 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
2867
2868         * src/modest-tny-account.c:
2869         (modest_tny_account_new_from_server_account): Do not use the lsub and 
2870         check-all hard-coded IMAP options when using POP.
2871
2872 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
2873
2874         * src/modest-tny-account.c:
2875         (modest_tny_account_new_from_server_account): 
2876         Use NULL for the secure-auth method for POP when Password auth has been 
2877         specified by the user, as we already do for IMAP. "auth=Login" causes 
2878         an error from camel or the server.
2879
2880 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
2881
2882         * src/maemo/modest-account-settings-dialog.c:
2883         (create_page_account_details),
2884         (modest_account_settings_dialog_set_account_name):
2885         * src/maemo/modest-account-settings-dialog.h: Hide the whole caption 
2886         for the leave-on-server checkbox, rathr than just the checkbox, when 
2887         the protocol is not POP.
2888
2889 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
2890
2891         * src/widgets/modest-account-view.c:
2892         * src/widgets/modest-account-view.h:
2893         Added modest_account_view_select_account() which will be useful later 
2894         to asynchronously re-select the edited account.
2895
2896 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
2897
2898         * src/maemo/modest-account-settings-dialog.c:
2899         (modest_account_settings_dialog_set_account_name): 
2900         Automatically choose the port numbers based on the secure authentication 
2901         methods, if they have not been chosen before.
2902         This fixes projects.maemo.org bug NB#56273 .
2903
2904 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
2905
2906         * src/maemo/modest-main-window-ui.h:
2907         * src/modest-ui-actions.c:
2908         * src/modest-ui-actions.h:
2909         Connect the Tools/SMTP Servers menu item to 
2910         modest_ui_actions_on_smtp_servers(), which shows the connection-specific 
2911         SMTP servers dialog, as in the UI specification and saves changes when it 
2912         is closed. This fixed  projects.maemo.org bug NB#56305 .
2913
2914 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
2915
2916         * src/maemo/modest-connection-specific-smtp-window.c:
2917         (modest_connection_specific_smtp_window_init):
2918         Use gtk_window_set_default_size() to make this window big enough, so 
2919         we see more of the GtkTreeView. This fixes projects.maemo.org bug NB#55497 .
2920
2921 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
2922
2923         * src/maemo/modest-connection-specific-smtp-edit-window.h:
2924         * src/maemo/modest-connection-specific-smtp-edit-window.c:
2925         (modest_connection_specific_smtp_edit_window_init),
2926         Do not try to connect to a combobox signal before the combobox exists.
2927         This fixes the cras in projects.maemo.org bug NB#56288 .
2928         (modest_connection_specific_smtp_edit_window_get_settings):
2929         Remove the server_account_name parameter which was being checked for NULL 
2930         though it was not used.
2931
2932         * src/maemo/modest-connection-specific-smtp-window.c:
2933         (modest_connection_specific_smtp_window_fill_with_connections),
2934         (on_button_edit), (modest_connection_specific_smtp_window_init):
2935         Correct the number of treemodel columns to prevent a warning.
2936         Added DEBUG_WITHOUT_LIBCONIC #define, for debugging on scratchbox, where 
2937         libconic does not work.
2938
2939 2007-05-16  Murray Cumming  <murrayc@murrayc.com>
2940
2941         * src/modest-tny-account.c:
2942         (modest_tny_account_new_from_server_account):
2943         Explicitly use ANONYMOUS secure authentication, instead of "PLAIN" for 
2944         SMTP when "None" was chosen by the user. However, with my SMTP server that 
2945         does not support ANONYMOUS, the emails do not leave the Outbox and I see 
2946         no error dialog.
2947
2948 2007-05-16  Murray Cumming  <murrayc@murrayc.com>
2949
2950         * src/modest-pair.h: Improve the documentation for modest_combo_box_new() 
2951         to explain the memory management issue with the ID in the ModestPair.
2952         
2953         * src/gnome/modest-account-assistant.c: (add_receiving_page),
2954         (add_sending_page), (modest_account_assistant_finalize):
2955         * src/gnome/modest-gnome-global-settings-dialog.c:
2956         (create_updating_page), (create_composing_page):
2957         * src/gnome/modest-msg-edit-window.c: (get_transports),
2958         (init_window), (modest_msg_edit_window_finalize),
2959         (modest_msg_edit_window_get_msg_data):
2960         * src/gnome/modest-store-widget.c: (imap_pop_configuration):
2961         * src/gnome/modest-transport-widget.c:
2962         (modest_transport_widget_finalize), (smtp_configuration):
2963         * src/maemo/modest-maemo-global-settings-dialog.c:
2964         (create_updating_page), (create_composing_page):
2965         * src/maemo/modest-msg-edit-window.c: (get_transports),
2966         (init_window), (modest_msg_edit_window_finalize),
2967         (modest_msg_edit_window_get_msg_data),
2968         (modest_msg_edit_window_free_msg_data):
2969         * src/maemo/modest-store-widget.c: (imap_pop_configuration),
2970         (modest_store_widget_finalize):
2971         * src/maemo/modest-transport-widget.c:
2972         (modest_transport_widget_finalize), (smtp_configuration):
2973         * src/modest-main.c: (send_mail):
2974         * src/widgets/modest-combo-box.h:
2975         * src/widgets/modest-global-settings-dialog-priv.h:
2976         * src/widgets/modest-global-settings-dialog.c:
2977         (modest_global_settings_dialog_finalize):
2978         * src/widgets/modest-msg-edit-window.h:
2979         Whenever using modest_combo_box_new(), keep the ModestPairList alive
2980         as long as the combo box, to prevent use of freed memory for the ID.
2981
2982 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
2983
2984         * src/modest-tny-account-store.c: (get_server_accounts): Renamed from 
2985         get_accounts(), to make this clearer. Do not check for the enabled gconf
2986         key, because we do not use this for server accounts (at least, not yet).
2987         This allows us to send email again.
2988
2989 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
2990
2991         * src/maemo/modest-platform.c:
2992         (on_modest_conf_update_interval_changed), (modest_platform_init):
2993         Only respond to this particular key change. All these strcmp()s cannot be 
2994         efficient.
2995
2996 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
2997
2998         * src/maemo/modest-maemo-global-settings-dialog.c:
2999         (current_connection): Prevent a crash in scratchbox when 
3000         ny_maemo_conic_device_get_current_iap_id() returns NULL.
3001         * src/maemo/modest-platform.c:
3002         (on_modest_conf_update_interval_changed), (modest_platform_init):
3003         Get the update interval from gconf and reset it when the gconf key changes.
3004
3005 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
3006
3007         * src/modest-protocol-info.c:
3008         * src/modest-protocol-info.h: Adde enum-specific get functions, 
3009         instead of using a ModestProtocolType enum parameter.
3010         
3011         * src/gnome/modest-account-assistant.c:
3012         * src/gnome/modest-store-widget.c:
3013         * src/gnome/modest-store-widget.h:
3014         * src/gnome/modest-transport-widget.c:
3015         * src/gnome/modest-transport-widget.h:
3016         * src/maemo/easysetup/modest-easysetup-servertype-combo-box.c:
3017         * src/maemo/easysetup/modest-easysetup-servertype-combo-box.h:
3018         * src/maemo/easysetup/modest-easysetup-wizard.c:
3019         * src/maemo/modest-account-settings-dialog.c:
3020         * src/maemo/modest-account-settings-dialog.h:
3021         * src/maemo/modest-store-widget.c:
3022         * src/maemo/modest-store-widget.h:
3023         * src/maemo/modest-transport-widget.c:
3024         * src/maemo/modest-transport-widget.h:
3025         * src/modest-account-mgr-helpers.c:
3026         * src/modest-account-mgr-helpers.h:
3027         * src/modest-account-mgr.c:
3028         * src/modest-account-mgr.h:
3029         * src/modest-tny-account.c:
3030         * src/modest-tny-folder.c: 
3031         * src/widgets/modest-account-view.c:
3032         * src/widgets/modest-retrieve-combo-box.c:
3033         * src/widgets/modest-retrieve-combo-box.h:
3034         * src/widgets/modest-secureauth-combo-box.c:
3035         * src/widgets/modest-serversecurity-combo-box.c:
3036         * src/widgets/modest-serversecurity-combo-box.h:
3037         * tests/check_account-mgr.c: 
3038         Use the specific functions, and use the re-renamed enum values for GNOME too.
3039
3040 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
3041
3042         * src/modest-pair.h: 
3043         * src/modest-pair.c: Added modest_pair_list_find_by_first_as_string(),
3044         so we can get the second based on the first.
3045
3046         * src/maemo/modest-account-settings-dialog.h: 
3047         * src/maemo/modest-account-settings-dialog.c:
3048         Added get_supported_secure_authentication_methods(), though it is mostly 
3049         commented-out for now until the necessary API is committed to tinymail.
3050         (modest_account_settings_dialog_set_account_name),
3051         (save_configuration): Request the supported authentication methods from the 
3052         server, so we can choose a working method.
3053         
3054         * src/modest-tny-account-store.h:
3055         * src/modest-tny-account-store.c:
3056         (modest_tny_account_store_get_session): Rename from 
3057         tny_account_store_get_session().
3058
3059 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
3060
3061         * src/modest-protocol-info.h: Split the ModestProtocol enum 
3062         into ModestProtocol, ModestSecureConnection, and ModestSecureAuthentication.
3063         There was no need to have these unrelated values in one enum.
3064         
3065         * src/: many files: Adapted to changed enum. This makes the code a bit
3066         clearer, and the compiler could catch some errors.
3067
3068 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
3069
3070         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
3071         Show the detailed internal camel error message when an error happens 
3072         during the configuration, so that our testers can give us more clues.
3073         For instance, in projects.maemo.org bug NB#56910 .
3074
3075 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
3076
3077         * src/modest-tny-account.c:
3078         (modest_tny_account_new_from_server_account): Adapt to changed tinymail API: 
3079         change tny_account_set_mech() to tny_account_set_secure_auth_mech().
3080
3081 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
3082
3083         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
3084         * src/maemo/modest-account-settings-dialog.c:
3085         (modest_account_settings_dialog_set_account_name),
3086         (save_configuration): For the incoming secure authentication checkbox, 
3087         use PASSWORD for unchecked, and CRAM-MD5 for checked, after I reread 
3088         the UI specification. PLAIN does not seem to be supported for most IMAP 
3089         servers anyway, and I am not sure what it would mean.
3090         However, we probably need to discover which of the secure-authentication 
3091         mechanisms are supported by the server, instead of hard-coding CRAM-MD5.
3092         * src/modest-account-mgr-helpers.c:
3093         (modest_account_mgr_get_server_account_data):
3094
3095         * src/modest-tny-account.c:
3096         (modest_tny_account_new_from_server_account):
3097         Use tny_account_set_mech() to set secure-authentication methods, 
3098         with some special-casing for IMAP, based on my observations of how 
3099         evolution behaves.
3100         
3101         * src/modest-account-mgr-helpers.h:
3102         * src/modest-account-mgr.c:
3103         * src/modest-defs.h: Comment that the URI is only used for local folders.
3104
3105 2007-05-11  Murray Cumming  <murrayc@murrayc.com>
3106
3107         * src/maemo/modest-main-window.c: (on_account_update): Make the gchar* 
3108         parameter const, just to be neat.
3109         * src/modest-text-utils.c: (modest_text_utils_inline):
3110         End g_strconcat() with NULL, as its documentation says. This is almost 
3111         certainly the cause of my crash at startup on the device. Interestingly, 
3112         valgrind doesn't tell us about these errors.
3113
3114 2007-05-11  Murray Cumming  <murrayc@murrayc.com>
3115
3116         * scripts/build-packages: Added more precise comments about how to use 
3117         this script, though I still get this error:
3118         dpkg-genchanges: error: cannot open .dsc file ../tinymail_1.0-svn1938.dsc: No such file or directory
3119         error building tinymail
3120         
3121 2007-05-11  Murray Cumming  <murrayc@murrayc.com>
3122
3123         * src/maemo/modest-main-window.c: (on_account_update):
3124         Very slight cleanup, hoping to make it simpler to discover what causes 
3125         a crash here sometimes.
3126         
3127         * src/modest-tny-account.c:
3128         (modest_tny_account_new_from_server_account): Set the port. Added 
3129         comments about the options and a TODO comment because I need to find out 
3130         how to specify the secure authentication method.
3131
3132 2007-05-11  Marcus Bauer  <marcusb@openismus.com>
3133
3134         * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in:
3135         changed CFlags paths form modest to libmodest
3136
3137 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
3138
3139         * src/modest-account-mgr-helpers.c:
3140         (modest_account_mgr_get_server_account_data),
3141         (modest_account_mgr_free_server_account_data):
3142         * src/modest-account-mgr-helpers.h:
3143         * src/modest-account-mgr.c:
3144         (modest_account_mgr_add_server_account):
3145         * src/modest-defs.h:
3146         * src/modest-tny-account.c:
3147         (modest_tny_account_new_from_server_account):
3148         Determine the options for tny_camel_account_add_option() here, 
3149         based on the settings, rather than storing them directly in gconf.
3150
3151 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
3152
3153         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
3154         Show a more friendly error dialog now that we expect (from the tinymail 
3155         documentation) to get the UNKNOWN_ALERT error. Add explanatory comments.
3156
3157 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
3158
3159         * src/maemo/modest-main-window.c: (on_account_update): Check that 
3160         account_name is not NULL, to prevent a crash at startup that I am 
3161         seeing on the N800. I do wonder why it is NULL.
3162         
3163         * src/maemo/easysetup/modest-easysetup-wizard.c:
3164         (create_page_user_details):
3165         * src/maemo/modest-account-settings-dialog.c:
3166         (create_page_user_details), (create_page_outgoing):
3167         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3168         (modest_connection_specific_smtp_edit_window_init):
3169         * src/modest-ui-actions.c:
3170         (modest_ui_actions_on_password_requested):
3171         Use HILDON_GTK_INPUT_MODE_INVISIBLE with password entries, which 
3172         might do something useful with the on-screen keyboard.
3173
3174 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
3175
3176         * src/maemo/modest-main-window.c: (on_account_update):
3177         Avoid adding a menu item to priv->accounts_popup if accounts_popup is 
3178         NULL, to avoid lots of warnings. However, it probably should not be NULL.
3179
3180 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
3181
3182         * src/modest-tny-account-store.c: (on_account_changed): 
3183         Correct the signature of this signal handler.
3184
3185 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
3186
3187         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
3188         Show a HildonNote instead of a GtkDialog for Maemo.
3189
3190 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
3191
3192         * src/widgets/modest-account-view.h:
3193         * src/widgets/modest-account-view.c: (on_account_changed),
3194         (on_account_removed). Added a boolean flag, set/unset by 
3195         modest_account_view_block_conf_updates(), 
3196         modest_account_view_unblock_conf_updates() to prevent unnecessary 
3197         updates, but this is not very useful because the gconf notifications are 
3198         so delays (maybe only on Maemo Bora).
3199         So auto-updating is turned off, and these functions do an explicit 
3200         update when necessary.
3201         However, something else is still doing too much work when adding/removing 
3202         accounts, probably in another part of the application.
3203         
3204         * src/maemo/modest-account-view-window.c:
3205         (on_delete_button_clicked), (on_edit_button_clicked),
3206         (on_new_button_clicked): Use the new functions.
3207
3208 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
3209
3210         * src/modest-account-mgr-helpers.c:
3211         (modest_account_mgr_set_first_account_as_default):
3212         Sort the list of names alphabetically-by-title, so we choose the first one 
3213         based on that.
3214         * src/widgets/modest-account-view.c: (init_view): Sort the TreeModel 
3215         alphabetically by the title.
3216         
3217         This fixes projects.maemo.org bug NB#56418 .
3218         
3219         * src/modest-account-mgr-priv.c:
3220         (_modest_account_mgr_account_from_key):
3221         * src/modest-account-mgr.c: (on_key_change): Initialize variables to 
3222         avoid a valgrind error, and possible random behaviour.
3223
3224 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
3225
3226         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
3227         Handle the new TNY_ACCOUNT_STORE_ERROR error domain. I will update the 
3228         tinymail documentation to say that this can be expected.
3229         Handle the new TNY_ACCOUNT_STORE_ERROR_UNKNOWN_ALERT error code. It is not 
3230         pretty, and should not happen, but I would prefer to know when it does.
3231
3232 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
3233
3234         * configure.ac: When using the older hildon version, probably on Bora, 
3235         require gnome-vfs-module-2.0, which is the old provider of gnome-vfs-mime.h,
3236         to fix the build.
3237         * src/widgets/modest-attachment-view.c:
3238         (modest_attachment_view_set_part_default): Initialize variables, to fix the 
3239         build.
3240
3241 2007-05-09  Marcus Bauer  <marcusb@openismus.com>
3242
3243         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message):
3244         Implemented the prototype. Can be tested with
3245         tests/dbus_api/test_open_message: 
3246
3247 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
3248
3249         * src/modest-tny-account-store.c:
3250         (modest_tny_account_store_instance_init), (get_password):
3251         * src/modest-ui-actions.c:
3252         (modest_ui_actions_on_password_requested):
3253         Do not store the password in gconf, because this function is called 
3254         for non-remembered passwords. Actually use the cached (in the hash map) 
3255         password instead of releasing it.
3256         The password will now not be remembered if it is asked via the protected 
3257         password dialog, as per the UI spec.
3258
3259 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
3260
3261         * src/modest-defs.h:
3262         * src/modest-account-mgr-helpers.h:
3263         * src/modest-account-mgr-helpers.c:
3264         Added modest_server_account_get_username_has_succeeded(),
3265         modest_server_account_set_username_has_succeeded().
3266         (modest_server_account_set_username),
3267         Reset the has-succeeded flag if the username changes.
3268         
3269         * src/maemo/modest-account-settings-dialog.c: (save_configuration):
3270         * src/maemo/modest-connection-specific-smtp-window.c:
3271         (modest_connection_specific_smtp_window_save_server_accounts):
3272         Use modest_server_account_set_username() instead of using 
3273         modest_conf_set_string() directly, so that the has-succeeded flag is always 
3274         reset.
3275         
3276         * src/modest-ui-actions.c:
3277         (modest_ui_actions_on_password_requested): Dim the username entry if 
3278         the username has ever worked, as per the UI spec.
3279
3280 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
3281
3282         * src/modest-tny-account-store.c: (get_password):
3283         * src/modest-ui-actions.c:
3284         (modest_ui_actions_on_password_requested):
3285         Allow the username to be changed too, though there is more work to 
3286         be done on exactly how this behaves.
3287
3288 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
3289
3290         * src/modest-account-mgr-helpers.h:
3291         * src/modest-account-mgr-helpers.c:
3292         Added modest_account_mgr_get_display_name(),
3293         modest_server_account_get_username(),
3294         modest_server_account_set_username(),
3295         modest_server_account_set_password(),
3296         modest_server_account_get_hostname() functions so we do not need to 
3297         use the conf API directly.
3298         
3299         * src/maemo/modest-main-window.c: (connect_signals):
3300         Actually connect ot the ModestAccountStore::request-password signal, 
3301         so that we show the dialog when the password is requested by Tinymail, 
3302         for isntance if it is empty.
3303
3304         * src/modest-marshal.list:
3305         * src/modest-tny-account-store.c:
3306         (modest_tny_account_store_class_init), (get_password),
3307         (modest_tny_account_store_alert):
3308         * src/modest-tny-account-store.h:
3309         * src/modest-ui-actions.h:
3310         * src/modest-ui-actions.c:
3311         (modest_ui_actions_on_password_requested):
3312         Change the signal parameters, so it is obvious that we are providing 
3313         the non human-readable server name, and receiving both the username 
3314         and password, though changing of the username is not yet implemented.
3315         Change the dialog UI to match the Maemo UI specifications, with #idfefing 
3316         for the GNOME version.
3317         
3318         This should fix the projects.maemo.org bug NB#56209, though it does not 
3319         work on Bora, because the gconf_client_get() for the password fails 
3320         immediately after we save it with gconf_client_set().
3321
3322 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
3323
3324         * configure.ac:
3325         * src/Makefile.am: Reverted the use of AM_CONDITIONAL(), because it 
3326         caused an undefined symbol error:
3327         modest-platform.c:84: undefined reference to `modest_osso_cb_hw_state_handler
3328
3329 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
3330
3331         * src/modest-tny-account-store.c:
3332         (modest_tny_account_store_alert): Adapt to the changed tinymail API, 
3333         using a GError instead of a string message, so we can translate it in 
3334         Modest.
3335
3336 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
3337
3338         * src/maemo/modest-address-book.c:
3339         (modest_address_book_check_names):
3340         * src/maemo/modest-msg-view-window.c:
3341         (modest_msg_view_window_clipboard_owner_change):
3342         * src/modest-init.c: (modest_init_init_ui):
3343         * src/modest-mail-operation.c: (modest_mail_operation_send_mail),
3344         (update_folders_cb), (modest_mail_operation_update_account):
3345         * src/modest-ui-actions.c: (modest_ui_actions_on_msg_link_hover),
3346         (modest_ui_actions_on_msg_attachment_clicked),
3347         (modest_ui_actions_on_msg_recpt_activated):
3348         * src/widgets/modest-header-view.c: (drag_data_get_cb):
3349         * src/widgets/modest-msg-view.c: (modest_msg_view_search),
3350         (modest_msg_view_search_next):
3351         * src/widgets/modest-recpt-editor.c:
3352         (modest_recpt_editor_on_button_release_event),
3353         (modest_recpt_editor_on_key_press_event): Commented-out unnecessary calls to 
3354         g_message(). At this point we should only be seeing interesting errors on 
3355         stdout. Debugging messages could be #ifdefed-out if they are still useful.
3356
3357 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
3358         
3359         (modest_wizard_dialog_force_title_update):
3360         * src/maemo/easysetup/modest-wizard-dialog.h:
3361         * src/maemo/easysetup/modest-wizard-dialog.c: (set_property):
3362         For GTK+ 2.10, when present, connect to the GtkNotebook signals so we 
3363         can update the title when appropriate. Otherwise the title is wrong if the 
3364         pages are added after adding the notebook to the dialog.
3365         This must be a problem in HildonWizardDialog too.
3366         Added modest_wizard_dialog_force_title_update() for GTK+ 2.6.
3367         
3368         * src/maemo/easysetup/modest-easysetup-wizard.c:
3369         (create_subsequent_customsetup_pages),
3370         (create_subsequent_easysetup_pages): 
3371         Call modest_wizard_dialog_force_title_update() so that the title is 
3372         correct even with GTK+ < 2.10.
3373         This fixes projects.maemo.org bug NB#56145 .
3374         
3375 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
3376
3377         * src/maemo/modest-platform.c:
3378         (modest_platform_set_update_interval): Use the ALARM_EVENT_NO_DIALOG 
3379         flag (awful lack of namespacing in this API) to prevent a useless %s dialog 
3380         from being shown.
3381
3382 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
3383
3384         * src/widgets/modest-window.h:  
3385         * src/widgets/modest-window.c: Added a save_state_func vfunc, 
3386         and modest_window_save_state(), which invokes it.
3387
3388         * src/widgets/modest-window-mgr.h:
3389         * src/widgets/modest-window-mgr.c:
3390         Added modest_window_mgr_save_state_for_all_windows(), which calls 
3391         the save_state vfunc on all registered windows, if implemented.
3392         
3393         * src/gnome/modest-msg-edit-window.c:
3394         * src/gnome/modest-msg-view-window.c:
3395         * src/maemo/modest-msg-edit-window.c:
3396         * src/maemo/modest-msg-view-window.c:
3397         * src/maemo/modest-main-window.c: 
3398         Specify the existing save_settings functions as implementations of 
3399         ModestWindow::save_state_func().
3400
3401         * src/maemo/modest-osso-state-saving.c: modest_osso_save_state():
3402         Call modest_window_mgr_save_state_for_all_windows(). This happens before 
3403         enabling hibernation, for instance.
3404         
3405         We may need to do the same thing for restoring settings.
3406
3407
3408 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
3409
3410         * src/widgets/modest-window-mgr.c: 
3411         * src/widgets/modest-window-mgr.h:
3412         Added modest_window_mgr_prevent_hibernation_while_window_is_shown() and
3413         modest_window_mgr_get_hibernation_is_prevented().
3414         
3415         * src/maemo/modest-main-window.c:
3416         (on_hildon_program_is_topmost_notify): Prevent hibernation 
3417         (possible when the application goes to the background in the WM), 
3418         if modest_window_mgr_get_hibernation_is_prevented() is TRUE.
3419         
3420         * src/maemo/easysetup/modest-easysetup-wizard.c:
3421         (modest_easysetup_wizard_dialog_init):
3422         * src/maemo/modest-account-settings-dialog.c:
3423         (modest_account_settings_dialog_init):
3424         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3425         (modest_connection_specific_smtp_edit_window_init):
3426         * src/maemo/modest-connection-specific-smtp-window.c:
3427         (modest_connection_specific_smtp_window_init):
3428         * src/maemo/modest-signature-editor-dialog.c:
3429         (modest_signature_editor_dialog_init):
3430         Call modest_window_mgr_prevent_hibernation_while_window_is_shown() to 
3431         prevent hibernation while any of these account settings dialogs are open.
3432
3433 2007-05-04  Murray Cumming  <murrayc@murrayc.com>
3434
3435         * src/maemo/Makefile.am:
3436         * src/maemo/modest-osso-state-saving.c: 
3437         * src/maemo/modest-osso-state-saving.h: Added 
3438         modest_osso_load_state() and modest_osso_save_state() though they do 
3439         nothing now. They should iterate through all the open windows and load/save 
3440         their state.
3441         * src/modest-ui-actions.c: (modest_ui_actions_on_quit): For Mameo, 
3442         save state when closing.
3443         
3444         * src/maemo/modest-main-window.c:
3445         (on_hildon_program_is_topmost_notify), (modest_main_window_new):
3446         Add a notification handler for the HildonProgram::is-topmost property, 
3447         so we can allow hibernation when the application goes into the background.
3448         But we still need to detect when the accounts setup windows are open so 
3449         we can stop hibernation when they are open.
3450         To do this, I also added the main window the HildonProgram. This might have 
3451         other side-effects/benefits, and should maybe be done for other windows.
3452
3453         * src/maemo/modest-osso-autosave-callbacks.h:
3454         * src/maemo/modest-osso-autosave-callbacks.c:
3455         (modest_on_osso_application_autosave): Add a libosso auto-save callback, 
3456         though it does not do anything yet, and we might never need this to do 
3457         anything. For instance, we already save drafts.
3458         
3459         * src/maemo/modest-platform.c: (modest_platform_init):
3460         Specify the libosso auto-save callback.
3461
3462 2007-05-03  Murray Cumming  <murrayc@murrayc.com>
3463
3464         * src/maemo/modest-platform.c:
3465         (modest_platform_set_update_interval):
3466         * src/modest-defs.h: Store the alarmd cookie ID in gconf, because it 
3467         aparently stays valid between application instances, so we can use this 
3468         to remove and reset it later. According to a maemo-developers email from 
3469         David Weinehall.
3470
3471 2007-05-03  Murray Cumming  <murrayc@murrayc.com>
3472
3473         * configure.ac: Depend on libalarm for Maemo.
3474
3475         * src/dbus_api/modest-dbus-api.h:
3476         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_receive),
3477         (on_send_receive), (modest_dbus_req_handler):
3478         Handle a SEND_RECEIVE D-Bus method.
3479         
3480         * libmodest-dbus-client/libmodest-dbus-client.c:
3481         (libmodest_dbus_client_send_and_receive):
3482         * libmodest-dbus-client/libmodest-dbus-client.h:
3483         Add C convenience functions for calling the new D-Bus method.
3484         
3485         * src/modest-platform.h:
3486         * src/gnome/modest-platform.c:
3487         * src/maemo/modest-platform.c: 
3488         Added modest_platform_set_update_interval(), which uses the 
3489         alarmd API on Maemo.
3490         (modest_platform_init),
3491         Call modest_platform_set_update_interval(), using a hard-coded 
3492         interval for now (until the global settings dialog is implemented), 
3493         though I am not sure that this makes sense yet.
3494
3495 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
3496
3497         * src/dbus_api/modest-dbus-callbacks.c:
3498         (modest_osso_cb_hw_state_handler):
3499         * src/dbus_api/modest-dbus-callbacks.h:
3500         * src/maemo/modest-platform.c: (modest_platform_init):
3501         Registered (empty) callbacks for the osso hardware state D-Bus signals, 
3502         in case this has some effect on the ability for Maemo to ping the 
3503         application.
3504
3505 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
3506
3507         * src/modest-text-utils.c: (modest_text_utils_validate_recipient):
3508         Comment out an if() that checks a gchar for < 0, causing a build-breaking 
3509         warning. It is probably a logic error, but I need to fix the build.
3510
3511 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
3512
3513         * src/modest-account-mgr.h:
3514         * src/modest-account-mgr.c: 
3515         (modest_account_mgr_account_names): Add a gboolean enabled_only 
3516         parameter, so we can get lists of onlt the enabled accounts.
3517         
3518         (modest_account_mgr_add_account),,
3519         (modest_account_mgr_account_with_display_name_exists):
3520         * src/maemo/modest-msg-edit-window.c: (get_transports):
3521         * src/modest-account-mgr-helpers.c:
3522         (modest_account_mgr_set_first_account_as_default):
3523         * src/modest-init.c: (init_default_account_maybe):
3524         * src/modest-tny-account-store.c: (get_accounts):
3525         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts),
3526         (do_send_receive_auto), (modest_ui_actions_on_send_receive):
3527         * tests/check_account-mgr.c: (START_TEST):
3528         Provide the extra parameter, as appropriate.
3529         
3530         * src/widgets/modest-account-view.c: (update_account_view):
3531         Do not show disabled accounts (meaning that there is no way to 
3532         enable/disable accounts in the UI (the feature is not in our UI 
3533         specification), so we can use this internally only to mark unfinished 
3534         or temporary account data.
3535         
3536         * src/maemo/easysetup/modest-easysetup-wizard.c:
3537         (create_account): Add boolean enable parameter, so we can specify FALSE 
3538         to create the temporary account.
3539         (on_button_edit_advanced_settings): Create the temporary account as disabled.
3540         (on_before_next): When finishing, when there is a temporary account, just 
3541         set it as enabled.
3542         Also, use a timeout to delay the showing of the dialog until gconf is likely 
3543         to return correct information, due to a maemo gconf bug that is fixed in 
3544         osso 1.1, but not yet in Bora.
3545         However, the dialog stays on screen after it is destroyed.
3546         
3547         * src/maemo/modest-account-settings-dialog.c: on_response(): Do not check 
3548         for invalid data when cancelling. Use a hildon note instead of a dialog 
3549         to complain about invalid data. Do not show the account-saved note if the 
3550         account is disabled (a temporary account that will not really be saved for use 
3551         until later.)
3552
3553 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
3554
3555         * src/modest-account-mgr-helpers.h:
3556         * src/modest-account-mgr-helpers.c:
3557         Added modest_account_mgr_unset_default_account(),
3558         Added modest_account_mgr_set_first_account_as_default().
3559
3560         * src/modest-account-mgr.c: (modest_account_mgr_remove_account): 
3561         If it was the default account, unset the default account name.
3562         
3563         * src/maemo/modest-account-view-window.c:
3564         (on_delete_button_clicked): If it was the default account, 
3565         set the first remaining account as the default instead.
3566         
3567         * src/maemo/modest-main-window.c: (on_account_update): Do not try to use 
3568         a NULL account or a NULL default account, to prevent a crash. This should 
3569         not happen now anyway. Bug #55343 in projects.maemo.org/bugzilla.
3570         
3571
3572 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
3573
3574         * src/widgets/modest-recpt-editor.c:
3575         (modest_recpt_editor_on_key_press_event): Put an #ifdef around the 
3576         use of gtk_text_buffer_get_has_selection() (from GTK+ 2.10), and add a 
3577         TODO comment for this. This fixes the build.
3578         
3579         * src/modest-ui-actions.c: Add do_send_receive(), though it might not 
3580         be the best place for it. This will in future update all auto-update accounts, 
3581         rather than just the current/default account, when that gconf key exists.
3582         (modest_ui_actions_on_send_receive): Offer the settings dialog (or wizard) 
3583         if there are no accounts, before calling do_send_receive().
3584         * src/modest-ui-actions.h: Specify the callback for the Send/Recieve menu item.
3585         
3586         * src/gnome/modest-main-window.c: (on_online_toggle_toggled):
3587         * src/maemo/modest-main-window-ui.h:
3588         * src/maemo/modest-main-window.c: (on_connection_changed),
3589         (sync_accounts_cb): Use do_send_receive() instead of calling the signal handler 
3590         directly, becaue the signal handler does more.
3591
3592 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
3593
3594         * src/modest-account-mgr-helpers.c:
3595         (modest_account_mgr_get_account_data): Add a more helpful error message, and comment, 
3596         for the case that the account does not exist.
3597         
3598         * src/widgets/modest-folder-view.c: (filter_row): Use the tinymail account ID 
3599         (equivalent to the modest account name) rather than the tinymail account name 
3600         (equivalent to the modest account title - human readable) to get the account data.
3601         Check for null account data to prevent the crash, and add a TODO comment saying that 
3602         this needs fixing because it is using the server account name instead of the account name.
3603
3604 2007-04-29  Murray Cumming  <murrayc@murrayc.com>
3605
3606         * src/maemo/easysetup/modest-easysetup-wizard.c: (show_error):
3607         * src/maemo/modest-account-settings-dialog.c: (show_error),
3608         (show_ok):
3609         Use hildon_note_new_information() for informative and error messages, 
3610         which seems to be expected for Maemo applications (no documentation that I know of 
3611         says this). I am surprised that there is no distinction between info and error 
3612         dialogs.
3613
3614 2007-04-29  Murray Cumming  <murrayc@murrayc.com>
3615
3616         * src/maemo/modest-maemo-ui-constants.h: Add a MODEST_MARGIN_NONE constant, so 
3617         it is easy to find where this is used.
3618         
3619         * src/maemo/easysetup/modest-easysetup-wizard.c:
3620         (create_page_welcome), (create_page_account_details),
3621         (create_page_user_details), (create_page_complete_easysetup),
3622         (create_page_custom_incoming), (create_page_custom_outgoing),
3623         (create_page_complete_custom):
3624         * src/maemo/modest-account-settings-dialog.c:
3625         (create_page_account_details), (create_page_user_details),
3626         (create_page_incoming), (create_page_outgoing):
3627         * src/maemo/modest-account-view-window.c: (window_vbox_new):
3628         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3629         (modest_connection_specific_smtp_edit_window_init):
3630         * src/maemo/modest-connection-specific-smtp-window.c:
3631         (modest_connection_specific_smtp_window_init):
3632         * src/maemo/modest-signature-editor-dialog.c:
3633         (modest_signature_editor_dialog_init): Use the correct padding/spacing/borders 
3634         and scrolling policy as per the Email Application Layout Guide, if I have 
3635         understood it.
3636
3637 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3638
3639         * src/modest-tny-account-store.c: (modest_tny_account_store_init): 
3640         Remove the add_transport_account_func and add_store_account_func vfunc implementations, 
3641         which were empty, because these vfuncs have been removed from TnyAccountStore.
3642         This fixes the build.
3643
3644 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3645
3646         * src/maemo/modest-main-window.c:
3647         (modest_main_window_show_toolbar): Check that a toolbar item is not NULL before 
3648         showing/hiding it. Added TODO because it probably should not be NULL.
3649         * src/modest-init.c: (modest_init_init_ui): Use a g_message() instead of a g_warning() 
3650         because unnecessary g_warnings() make degugging difficult.
3651
3652 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3653
3654         * src/maemo/modest-msg-edit-window.c:
3655         (modest_msg_edit_window_select_color),
3656         (modest_msg_edit_window_select_background_color): 2 const corrections and 
3657         moving 2 #endifs before closing brackets, to fix the build.
3658
3659 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3660
3661         * src/maemo/easysetup/modest-easysetup-wizard.h:
3662         * src/maemo/easysetup/modest-easysetup-wizard.c:
3663         (modest_easysetup_wizard_dialog_finalize),
3664         (on_button_edit_advanced_settings), (create_page_complete_custom),
3665         (on_response), (create_account):
3666         Implement the Advanced Settings edit button, by saving the account information, 
3667         for the Advanded Settings dialog to use directly from gconf, and removing it 
3668         if Finish is never clicked. There is still some UI strangeness, so this is not finished.
3669         Bug #5533 in the projects.maemo.org bugzilla.
3670
3671 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3672
3673         * src/maemo/modest-msg-view-window.c:
3674         (modest_msg_view_window_show_toolbar): Prevent hide/show of a NULL toolbar widget, 
3675         when opening a message window.
3676
3677 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3678
3679         * src/maemo/easysetup/modest-easysetup-wizard.c:
3680         (create_page_custom_outgoing): Correct the position of the horizontal separator to 
3681         match the UI spec.
3682         
3683         * src/maemo/modest-main-window.c: (set_toolbar_mode): Check that widgets are not NULL 
3684         before showing/hiding them, to avoid a crash when clicking on folders when there are no 
3685         gconf settings. I probably added more checks than necessary, but that is safer.
3686         
3687         * src/modest-ui-actions.c: (modest_ui_actions_on_move_to): Initialize the mail_op 
3688         variable to fix the build, but this seems to be used when it is still NULL.
3689
3690 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3691
3692         * src/modest-platform.h:
3693         * src/gnome/modest-platform.c: (modest_platform_connect_and_wait):
3694         * src/maemo/modest-platform.c: (modest_platform_connect_and_wait):
3695         * src/modest-main.c: Implement this function so we can avoid using 
3696         maemo-specific API from cross-platform code.
3697         (main):
3698         * src/modest-tny-account-store.c:
3699         (get_smtp_specific_transport_account_for_open_connection):
3700         * src/modest-ui-actions.c: (check_for_connection),
3701         (modest_ui_actions_on_item_not_found):
3702         Use modest_platform_connect_and_wait() and put #idefs around other 
3703         maemo-specific code, because only maemo currently has a way to 
3704         identify connection names.
3705
3706 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
3707
3708         * src/modest-tny-account-store.h:
3709         * src/modest-tny-account-store.c:
3710         Added modest_tny_account_store_get_transport_account_for_open_connection(), which respects 
3711         the connection-specific SMTP server settings in the configuration.
3712         
3713         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_mail),
3714         (on_idle_mail_to):
3715         * src/maemo/modest-main-window.c: (on_connection_changed),
3716         (connect_signals):
3717         * src/modest-main.c: (main), (start_ui), (send_mail):
3718         Use tny_maemo_conic_device_connect() instead of tny_maemo_conic_force_online(), when 
3719         that is what is intended.
3720         
3721         * src/modest-ui-actions.c: (action_send), (action_receive),
3722         (modest_ui_actions_on_item_not_found), (modest_ui_actions_on_send):
3723         Use modest_tny_account_store_get_transport_account_for_open_connection() instead of 
3724         modest_tny_account_store_get_tny_account_by_account() so that the connection-specific 
3725         SMTP server is used when it is specified.
3726         
3727         (modest_ui_actions_on_send_receive): 
3728         Check that a connection is open before proceeding.
3729         Receive and then send, instead of vice-versa, as per the specification.
3730
3731 2007-04-26  Murray Cumming  <murrayc@murrayc.com>
3732
3733         * src/modest-mail-operation.c:
3734         (modest_mail_operation_remove_folder): Intialize the parent variable, to fix the build, 
3735         though I guess it should be something other than NULL.
3736
3737 2007-04-26  Murray Cumming  <murrayc@murrayc.com>
3738
3739         * src/maemo/easysetup/modest-easysetup-wizard.c:
3740         (create_page_custom_incoming): Add the checkbox to the caption instead of adding the 
3741         combo twice, to avoid an g_warning and to make it visible again.
3742         * src/maemo/modest-main-window.c: (on_account_update): Check whether the popup_menu is 
3743         attached before detaching it, to avoid a g_warning, and add comment about the implicit 
3744         (already intended) dereference when detaching, because we then recreate the menu.
3745         But I am not sure why the warning was happening, and it is possible that this is a memory 
3746         leak.
3747
3748 2007-04-25  Murray Cumming  <murrayc@murrayc.com>
3749
3750         * src/dbus_api/modest-dbus-callbacks.c: Added uri_unescape(),
3751         and uri_parse_mailto() utility functions.
3752         (on_idle_mail_to): Parse, unescape, and use the subject, cc, bcc, and body items in 
3753         the mailto URI.
3754         * tests/dbus_api/test_mail_to.c: (main): Add escaped spaces in the URI to test this.
3755
3756 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
3757
3758         * src/dbus_api/modest-dbus-api.h:
3759         * src/dbus_api/modest-dbus-callbacks.c:
3760         Use an idle callback to execute the modest code in the application's own thread.
3761         Remove the helloworld example method.
3762         Handle mail-to and open-message D-Bus methods, though the mail-to format needs to be 
3763         parsed, and the open-message method is not implemented because this is not yet implemented in 
3764         modest itself.
3765         * libmodest-dbus-client/libmodest-dbus-client.c:
3766         (libmodest_dbus_client_send_mail), (libmodest_dbus_client_mail_to),
3767         (libmodest_dbus_client_open_message):
3768         * libmodest-dbus-client/libmodest-dbus-client.h: New functions for the new methods.
3769         
3770         * src/modest-tny-msg.c: (modest_tny_msg_new), (add_body_part): Handle NULLs for subject and 
3771         body without crashing.
3772         
3773         * tests/dbus_api/Makefile.am:
3774         * tests/dbus_api/test_mail_to.c:
3775         * tests/dbus_api/test_open_message.c: New tests for the new methods.
3776
3777 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
3778
3779         * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in:
3780         Added file to fix the build. Sorry.
3781         
3782         * src/dbus_api/Makefile.am:
3783         * src/dbus_api/modest-dbus-api.h:
3784         * src/dbus_api/modest-dbus-callbacks.h:
3785         * src/dbus_api/modest-dbus-callbacks.c: (on_send_mail),
3786         (modest_dbus_req_handler):
3787         Put constants in a separate header so it can be reused by the 
3788         client library, without duplication
3789         
3790         * libmodest-dbus-client/Makefile.am:
3791         * libmodest-dbus-client/libmodest-dbus-client.c:
3792         (libmodest_dbus_client_call_helloworld),
3793         (libmodfest_dbus_client_send_mail),
3794         (libmodfest_dbus_client_mailto),
3795         (libmodfest_dbus_client_open_message):
3796         * libmodest-dbus-client/libmodest-dbus-client.h:
3797         (Partly) Implement a send_mail D-Bus method.
3798         
3799         * tests/dbus_api/Makefile.am:
3800         * tests/dbus_api/test_send_mail.c: (main): Added a test for 
3801         the send_email D-Bus method.
3802
3803 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
3804
3805         * Makefile.am:
3806         * configure.ac:
3807         * libmodest-dbus-client/Makefile.am:
3808         * libmodest-dbus-client/libmodest-dbus-client.c:
3809         * libmodest-dbus-client/libmodest-dbus-client.h:
3810         * tests/dbus_api/Makefile.am:
3811         * tests/dbus_api/test_hello.c: (main): Added directory structure for a C convenience library 
3812         for using the modest D-Bus API, and used that from the test. It is still just a helloworld.
3813
3814 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
3815
3816         * src/maemo/easysetup/modest-easysetup-wizard.c:
3817         (create_page_account_details):
3818         * src/maemo/modest-account-settings-dialog.c:
3819         (create_page_account_details): Explicitly set auto-capitalization mode for the title 
3820         widgets, because this might not be the default in future versions of the Maemo GTK+. 
3821         However, I can not not get capitalization to work even in a simple test case.
3822
3823 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
3824
3825         * src/maemo/easysetup/modest-easysetup-wizard.c:
3826         (create_page_custom_incoming), (create_page_custom_outgoing):
3827         * src/maemo/modest-account-settings-dialog.c:
3828         (create_page_account_details), (create_page_incoming),
3829         (create_page_outgoing): Use a separate label in a caption for GtkCheckButtons, 
3830         instead of using gtk_check_button_with_label(), so they are aligned like the other 
3831         widgets, as per the UI spec.
3832
3833 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
3834
3835         * src/maemo/easysetup/modest-easysetup-wizard.c:
3836         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3837         * src/widgets/modest-validating-entry.c:
3838         * src/widgets/modest-validating-entry.h: Rename the validating widget so it has a 
3839         Modest prefix instead of an EasySetup prefix.
3840
3841 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
3842
3843         * src/widgets/modest-validating-entry.h:
3844         * src/widgets/modest-validating-entry.c: (on_insert_text),
3845         Added easysetup_validating_entry_set_max_func(), used to set a callback 
3846         to call when the max number of characters is reached. GtkEntry has a max-length 
3847         already but is silent about it.
3848
3849         * src/maemo/easysetup/modest-easysetup-wizard.c: (on_entry_max),
3850         (create_page_account_details), (create_page_user_details),
3851         (create_account):
3852         * src/maemo/modest-account-settings-dialog.c: (on_entry_max),
3853         (create_page_account_details), (create_page_user_details),
3854         (create_page_outgoing):
3855         * src/modest-ui-actions.c: (modest_ui_actions_on_details): 
3856         Use easysetup_validating_entry_set_max_func() to show the warning dialog, as per 
3857         the UI spec, when the user tries to enter more than the max number of characters.
3858
3859 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
3860
3861         * src/maemo/easysetup/modest-easysetup-wizard.c:
3862         (create_page_user_details), (create_page_custom_incoming),
3863         (create_page_custom_outgoing):
3864         * src/maemo/modest-account-settings-dialog.c:
3865         (create_page_user_details), (create_page_incoming),
3866         (create_page_outgoing):
3867         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3868         (modest_connection_specific_smtp_edit_window_init):
3869         Use hildon_gtk_entry_set_input_mode() to turn off auto-capitalization where it is 
3870         not appropriate. Bad Maemo-specific defaults!.
3871
3872 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
3873
3874         * src/maemo/modest-signature-editor-dialog.c: (enable_widgets),
3875         (on_toggle_button_changed), (modest_signature_editor_dialog_init),
3876         (modest_signature_editor_dialog_set_settings): 
3877         Disable the label and textview when the checkbox is disabled, and use the 
3878         specified (UI spec) default signature text.
3879
3880 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
3881
3882         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3883         (modest_connection_specific_smtp_edit_window_init): Use spacing constants.
3884         
3885         * src/modest-defs.h:
3886         * src/modest-account-mgr-helpers.h:
3887         * src/modest-account-mgr-helpers.c:
3888         Added modest_account_mgr_get/set_signature(), using new gconf keys.
3889         
3890         * src/maemo/Makefile.am:
3891         * src/maemo/modest-signature-editor-dialog.c:
3892         * src/maemo/modest-signature-editor-dialog.h: New dialog for editing signatures, 
3893         as per the UI spec.
3894         
3895         * src/maemo/modest-account-settings-dialog.h:
3896         * src/maemo/modest-account-settings-dialog.c:
3897         (modest_account_settings_dialog_finalize), (on_button_signature),
3898         (save_configuration): Use the new dialog when the Edit button is pressed, and 
3899         save the changes if necessary, as per the UI spec.
3900
3901 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
3902
3903         * src/maemo/Makefile.am:
3904         * src/maemo/modest-maemo-ui-constants.h: New header with some defines for widget spacing, 
3905         based on maemo-develoers email from Dirk.
3906         
3907         * src/maemo/easysetup/modest-easysetup-wizard.c:
3908         (create_page_welcome), (create_page_account_details),
3909         (create_page_user_details), (create_page_complete_easysetup),
3910         (create_page_custom_incoming), (create_page_custom_outgoing),
3911         (create_page_complete_custom),
3912         (modest_easysetup_wizard_dialog_init):
3913         * src/maemo/modest-account-settings-dialog.c:
3914         (create_page_account_details), (create_page_user_details),
3915         (create_page_incoming), (create_page_outgoing),
3916         (modest_account_settings_dialog_init):
3917         * src/maemo/modest-connection-specific-smtp-window.c:
3918         (modest_connection_specific_smtp_window_init): Used the smallest of the spacing constants.
3919
3920 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
3921
3922         * src/maemo/easysetup/modest-easysetup-wizard.c:
3923         (create_page_account_details), (create_page_custom_outgoing),
3924         (create_page_complete_custom):
3925         * src/maemo/modest-account-settings-dialog.c:
3926         (create_page_user_details), (create_page_incoming),
3927         (create_page_outgoing):
3928         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3929         (modest_connection_specific_smtp_edit_window_init): 
3930         Use the correct (UI spec) port min/max, and use horizontal separators, 
3931         as per the UI spec.
3932
3933 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
3934
3935         * src/maemo/easysetup/modest-easysetup-wizard.c:
3936         (set_default_custom_servernames):
3937         * src/maemo/modest-account-settings-dialog.c:
3938         (create_page_incoming), (on_combo_outgoing_security_changed),
3939         (on_combo_incoming_security_changed), (create_page_outgoing),
3940         (modest_account_settings_dialog_set_account_name),
3941         (save_configuration):
3942         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3943         (on_combo_security_changed),
3944         (modest_connection_specific_smtp_edit_window_init),
3945         (modest_connection_specific_smtp_edit_window_set_connection),
3946         (modest_connection_specific_smtp_edit_window_get_settings): 
3947         Use HildonNumberEditor instead of GtkEntry for the port numbers so it has the - and + buttons,
3948         as per the UI spec.
3949
3950 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
3951
3952         * po/en_GB.po:
3953         * src/maemo/easysetup/modest-easysetup-wizard.c:
3954         (create_page_custom_outgoing), (create_page_complete_custom):
3955         * src/maemo/modest-account-settings-dialog.c:
3956         (create_page_user_details), (create_page_outgoing):
3957         * src/maemo/modest-account-view-window.c: (button_box_new):
3958         Use changed logical IDs as per the most recent UI spec:
3959         mcen_bd_emailsetup_edit -> mcen_bd_edit
3960         mcen_bd_emailsetup_delete -> mcen_bd_delete
3961         mcen_bd_emailsetup_close -> mcen_bd_close
3962
3963 2007-04-20  2007-04-20  Murray Cumming  <murrayc@murrayc.com>
3964
3965         * configure.ac:
3966         * src/Makefile.am:
3967         * src/dbus_api/Makefile.am:
3968         * src/dbus_api/modest-dbus-callbacks.c:
3969         * src/dbus_api/modest-dbus-callbacks.h:
3970         * src/maemo/modest-platform.c: (modest_platform_init):
3971         Added the beginnings of a D-Bus API. At the moment it just has a HelloWorld 
3972         method.
3973         * tests/Makefile.am:
3974         * tests/dbus_api/Makefile.am:
3975         * tests/dbus_api/test_hello.c: (main): Very simple test of the D-Bus API.
3976
3977 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
3978
3979         * src/maemo/modest-account-settings-dialog.c:
3980         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3981         Removed unnecessary includes.
3982
3983 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
3984
3985         * src/maemo/easysetup/modest-easysetup-wizard.c:
3986         * src/maemo/modest-account-settings-dialog.c:
3987         * src/maemo/modest-connection-specific-smtp-edit-window.c:
3988         * src/widgets/Makefile.am:
3989         * src/widgets/modest-easysetup-secureauth-combo-box.c:
3990         * src/widgets/modest-easysetup-secureauth-combo-box.h:
3991         * src/widgets/modest-easysetup-serversecurity-combo-box.c:
3992         * src/widgets/modest-easysetup-serversecurity-combo-box.h:
3993         * src/widgets/modest-secureauth-combo-box.c:
3994         * src/widgets/modest-secureauth-combo-box.h:
3995         * src/widgets/modest-serversecurity-combo-box.c:
3996         * src/widgets/modest-serversecurity-combo-box.h: Renamed the files and 
3997         made the GObject names more consistent with the rest of the Modest code.
3998
3999 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
4000
4001         * src/maemo/easysetup/Makefile.am:
4002         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c:
4003         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.h:
4004         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c:
4005         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h:
4006         * src/maemo/easysetup/modest-easysetup-wizard.c:
4007         * src/maemo/easysetup/modest-validating-entry.c:
4008         * src/maemo/easysetup/modest-validating-entry.h:
4009         * src/maemo/modest-account-settings-dialog.c:
4010         * src/maemo/modest-connection-specific-smtp-edit-window.c:
4011         * src/widgets/Makefile.am: Moved these widgets from maemo/easysetup into 
4012         widgets/ because they are used outside of easysetup too. After checking in, 
4013         svn will allow me to rename them too.
4014
4015 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
4016
4017         * src/gnome/modest-msg-edit-window.c:
4018         (modest_msg_edit_window_set_priority_flags): Added an empty implementation to fix a 
4019         linker error, to fix the build on the GNOME platform.
4020         modest_msg_edit_window_set_zoom(), modest_msg_edit_window_get_zoom(), 
4021         modest_msg_edit_window_zoom_plus(), modest_msg_edit_window_zoom_minus():
4022         ifdefed out to avoid a warning.
4023
4024 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
4025
4026         * src/widgets/modest-header-view.c: (on_focus_in): Use GTK_CHECK_VERSION to #ifdef around the 
4027         use of gtk_tree_view_get_visible_range(), to fix the build on Mameo. This code probably needs 
4028         some alternative for GTK+ 2.6.
4029
4030 2007-04-19  Murray Cumming  <murrayc@murrayc.com>
4031
4032         * src/maemo/modest-address-book.c: Added include to avoid a warning.
4033
4034         * po/en_GB.po: Added missing mcen_bd_emailsetup_close string, 
4035         specified for EmailAccountsDialog in UI spec.
4036         
4037         * src/maemo/easysetup/modest-easysetup-wizard.c:
4038         * src/maemo/easysetup/modest-easysetup-wizard.h:
4039         * src/maemo/modest-account-settings-dialog.c:
4040         * src/maemo/modest-account-settings-dialog.h:
4041         Reuse a member window widget for the connection-specific SMTP server accounts, 
4042         so we can tell it to create/save the accounts only if we actually save changes.
4043
4044         * src/maemo/modest-connection-specific-smtp-edit-window.h:      
4045         * src/maemo/modest-connection-specific-smtp-edit-window.c:
4046         (modest_connection_specific_smtp_edit_window_get_settings): 
4047         Return a struct instance for temporarily remembering the entered data.
4048
4049         * src/maemo/modest-connection-specific-smtp-window.h:
4050         * src/maemo/modest-connection-specific-smtp-window.c:
4051         (modest_connection_specific_smtp_window_finalize),
4052         (modest_connection_specific_smtp_window_fill_with_connections),
4053         (on_button_edit),
4054         (modest_connection_specific_smtp_window_save_server_accounts),
4055         (update_model_server_names): Do not actually save data until asked, 
4056         when the caller calls modest_connection_specific_smtp_window_save_server_accounts().
4057         
4058         (on_selection_changed),
4059         (modest_connection_specific_smtp_window_init): Disable the edit 
4060         button when nothing is selected.
4061         
4062         * src/modest-account-mgr-helpers.c:
4063         * src/modest-account-mgr-helpers.h: 
4064         Put modest_account_mgr_free_server_account_data() in the header now that I use the struct 
4065         elsewhere.
4066
4067 2007-04-19  Murray Cumming  <murrayc@murrayc.com>
4068
4069         * src/modest-account-mgr-helpers.h:
4070         * src/modest-account-mgr-helpers.c:
4071         (modest_account_mgr_get_unused_account_name),
4072         (modest_account_mgr_get_unused_account_display_name): Added these 
4073         utility functions, to avoid code duplication.
4074
4075         * src/maemo/easysetup/modest-easysetup-wizard.c:
4076         (create_page_account_details), (create_account):
4077         * src/maemo/modest-connection-specific-smtp-edit-window.c:
4078         (on_combo_security_changed),
4079         (modest_connection_specific_smtp_edit_window_init),
4080         (modest_connection_specific_smtp_edit_window_save_settings):
4081         * src/maemo/modest-connection-specific-smtp-edit-window.h:
4082         * src/maemo/modest-connection-specific-smtp-window.c:
4083         (modest_connection_specific_smtp_window_finalize),
4084         (modest_connection_specific_smtp_window_fill_with_connections),
4085         (on_button_edit), (modest_connection_specific_smtp_window_init):
4086         * src/maemo/modest-connection-specific-smtp-window.h:
4087         Implementing saving of connection-specific server accounts.
4088         
4089         But I need to refactor this so we can save the data for each 
4090         possible connection-specific account and only actually create the server accounts 
4091         when the easysetup finished, or the OK button is pressed on the account settings 
4092         dialog.
4093
4094 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
4095
4096         * src/maemo/modest-connection-specific-smtp-edit-window.c:
4097         (on_combo_security_changed): 
4098         (modest_connection_specific_smtp_edit_window_init):
4099         Auto-fill the port number as in the account settings.
4100         
4101         (modest_connection_specific_smtp_edit_window_set_connection):
4102         * src/maemo/modest-connection-specific-smtp-edit-window.h:
4103         * src/maemo/modest-connection-specific-smtp-window.c:
4104         (fill_with_connections), (on_button_edit),
4105         (modest_connection_specific_smtp_window_init): 
4106         Turn the edit window into a dialog to simplify the code, and 
4107         set a WM hint as in a GtkDialog, because only a popup can be on top of 
4108         another window in Maemo, and popups usually have no WM decoration.
4109         
4110         * src/modest-defs.h:
4111         * src/modest-account-mgr-helpers.c:
4112         (modest_account_mgr_set_connection_specific_smtp),
4113         (modest_account_mgr_remove_connection_specific_smtp),
4114         (modest_account_mgr_get_connection_specific_smtp):
4115         * src/modest-account-mgr-helpers.h: Some functions to write the 
4116         connection-specific SMTP server information. Not yet used.
4117
4118         
4119         * src/widgets/modest-folder-view.c: (text_cell_data):
4120         Fix a warning about an uninitialized variable.
4121         (on_configuration_key_changed): Put an #ifdef around the use 
4122         of gtk_tree_view_column_queue_resize() because it is new in GTK+ 2.10.
4123
4124 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
4125
4126         * src/maemo/modest-account-settings-dialog.h:
4127         * src/maemo/modest-account-settings-dialog.c:
4128         Added connect_for_modified() utility function to mark the new modified boolean.
4129         
4130         (create_page_account_details), (create_page_user_details),
4131         (create_page_incoming), (create_page_outgoing), (on_response),
4132         (modest_account_settings_dialog_init),
4133         (modest_account_settings_dialog_set_account_name):
4134         Only warn about unsaved changes when there are actually unsaved changes.
4135         
4136         * src/modest-account-mgr-helpers.c:
4137         * src/modest-account-mgr-helpers.h: Put the port, secure-auth, and security information 
4138         into the ModestServerAccountData struct. I do not use it yet, but someone might expect 
4139         to get the data from there in future.
4140
4141 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
4142
4143         * src/modest-defs.h:
4144
4145         * src/modest-account-mgr-helpers.h:
4146         * src/modest-account-mgr-helpers.c:
4147         Store the security account setting in a single conf key instead of using 
4148         the options list, so that the list is left for just the to-be-removed camel hack, 
4149         and because gconf_client_set_list() is failing for some reason.
4150
4151         * src/modest-account-mgr.c:
4152         (modest_account_mgr_add_server_account):
4153         * src/maemo/modest-account-settings-dialog.c:
4154         (modest_account_settings_dialog_set_account_name),
4155         (save_configuration): Use the renamed functions.
4156
4157
4158 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
4159
4160         * src/widgets/Makefile.am:
4161         * src/widgets/modest-limit-retrieve-combo-box.c:
4162         * src/widgets/modest-limit-retrieve-combo-box.h:
4163         * src/widgets/modest-retrieve-combo-box.c:
4164         * src/widgets/modest-retrieve-combo-box.h: Added new widgets for use in 
4165         the account settings dialog.
4166         
4167         * src/modest-defs.h:
4168         * src/modest-account-mgr-helpers.h:
4169         * src/modest-account-mgr-helpers.c:
4170         (modest_server_account_get_option_secure_auth),
4171         (modest_server_account_set_option_secure_auth):
4172         * src/modest-account-mgr.c:
4173         (modest_account_mgr_add_server_account):
4174         Use the existing AUTH_MECH conf key for the secure-auth setting, 
4175         instead of putting it in the list options, because this was actually used already.
4176         
4177         * src/maemo/modest-account-settings-dialog.c:
4178         (create_page_account_details),
4179         (modest_account_settings_dialog_set_account_name),
4180         (save_configuration):
4181         * src/maemo/modest-account-settings-dialog.h:
4182         Add the retrieve and retrieve-limit combo boxes, as per the UI spec.
4183         Hide the leave-messages checkbox for non-POP accounts, as per the UI spec.
4184
4185 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
4186
4187         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h:
4188         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c:
4189         Added easysetup_serversecurity_combo_box_get_active_serversecurity_port()
4190
4191         * src/modest-defs.h:
4192         * src/maemo/modest-account-settings-dialog.c:
4193         (create_page_incoming), (on_combo_outgoing_security_changed),
4194         (on_combo_incoming_security_changed), (create_page_outgoing),
4195         (modest_account_settings_dialog_set_account_name),
4196         (save_configuration): Load/Save the port number, and change it when the 
4197         security combo changes, to suitable defaults.
4198
4199 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
4200
4201         * src/modest-account-mgr.c:
4202         (modest_account_mgr_add_server_account): Set the security and secure-auth 
4203         options, and add a comment saying that the other camel-specific options should be 
4204         removed in future.
4205
4206 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
4207
4208         * src/maemo/modest-account-settings-dialog.c: (check_data): Always return something, 
4209         found by valgrind.
4210         * src/modest-tny-account-store.c: (account_list_free),
4211         (on_account_changed): Add a TODO comment about a valgrind error, caused by using 
4212         cursor->data after unreffing it. But there is some strange stuff there so it might not be 
4213         easy to fix.
4214
4215 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
4216
4217         * src/modest-protocol-info.c:
4218         * src/modest-protocol-info.h: Added a MODEST_PROTOCOL_AUTH_CRAMMD5 enum value, because it 
4219         is required by our UI spec. Maybe something in our implementation will use this eventually.
4220         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c: 
4221         (easysetup_secureauth_combo_box_fill): Use the CRAM MD5 enum value 
4222         instead of the previous 0 placeholder.
4223         
4224         * src/modest-defs.h: Added gconf list pair key names and value strings for the security and 
4225         secure-auth settings.
4226         * src/modest-account-mgr-helpers.h:
4227         * src/modest-account-mgr-helpers.c:
4228         (modest_server_account_data_get_option_secure_auth),
4229         (modest_server_account_set_option_secure_auth),
4230         (modest_server_account_data_get_option_security),
4231         (modest_server_account_set_option_security): Added this API for getting and setting the security 
4232         and secure-auth settings.
4233         
4234         * src/maemo/modest-account-settings-dialog.h:
4235         * src/maemo/modest-account-settings-dialog.c:
4236         (modest_account_settings_dialog_finalize), (check_data),
4237         (on_response): Store the original title as well as the name, to avoid unnececessary warnings 
4238         about changing titles.
4239         (modest_account_settings_dialog_set_account_name): Load the security and secure-auth settings.
4240         (save_configuration): Save the security and secure-auth settings.
4241
4242         * src/modest-conf.c: (modest_conf_set_list): Get the list after setting it, to show that this 
4243         is failing sometimes (though reporting success). I fear I may need to debug gconf to fix this.
4244
4245 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
4246
4247         * src/modest-defs.h: 
4248         * src/modest-account-mgr.c:
4249         (modest_account_mgr_add_server_account):
4250         Added and used defines for the options key and value pair strings, 
4251         that are used so far, though they do not seem to correspond to anything in our 
4252         UI specs or ModestProtocol enum.
4253         
4254         * src/modest-account-mgr-helpers.h:
4255         * src/modest-account-mgr-helpers.c:
4256         (compare_option_strings_for_name),
4257         (modest_server_account_data_get_option_value),
4258         (modest_server_account_data_get_option_bool),
4259         (modest_account_mgr_get_server_account_option):
4260         Added helper functions for parsing the options GSList.
4261
4262 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
4263
4264         * src/modest-account-mgr-helpers.c: Clarified the documentation to say that the initial 
4265         display name is based on the supplied account name.
4266         * src/modest-account-mgr.c:
4267         * src/modest-account-mgr.h: Added modest_account_mgr_account_with_display_name_exists(), 
4268         with an inefficient, but good-enough, implementation.
4269         
4270         * src/maemo/easysetup/modest-easysetup-wizard.c:
4271         (create_page_account_details), (on_before_next), (create_account): 
4272         Check for existing display names rather than (non-user-visible) account names, and just 
4273         create and set a unique account name at the end.
4274         
4275         * src/maemo/modest-account-settings-dialog.c:
4276         (modest_account_settings_dialog_init),
4277         (modest_account_settings_dialog_set_account_name),
4278         (create_page_incoming): Show the display name, instead of the account name.
4279         (on_response): Do some (not all) extra checks, as in the UI spec.
4280         (save_configuration): Save the display name if it was changed.
4281
4282 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
4283
4284         * po/en_GB.po: Added needed logical ID and translation.
4285         * src/widgets/modest-account-view.c: (on_account_default_toggled),
4286         (init_view): Made the is-default column clicking work.
4287
4288 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
4289
4290         * configure.ac:
4291         * src/maemo/easysetup/Makefile.am:
4292         * src/maemo/easysetup/modest-easysetup-wizard.c:
4293         (modest_easysetup_wizard_dialog_init):
4294         * src/maemo/easysetup/provider-data-test.keyfile:
4295         * src/maemo/easysetup/provider-data.keyfile: 
4296         Moved the provider data file to the new modest-providers-data package and used it from there.
4297
4298 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
4299
4300         * src/modest-local-folder-info.c:
4301         (modest_local_folder_info_get_type_display_name): Use _() to actually get the translated string. 
4302         N_() was already used on the static strings, but this just marks it for translation without 
4303         using the translation.
4304
4305 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
4306
4307         * src/maemo/modest-account-settings-dialog.c:
4308         (create_page_incoming),
4309         (modest_account_settings_dialog_set_account_name): 
4310         Added comments about the need for new API in ModestAccountMgr to handle the authentication 
4311         and secure-connection stuff that is stored in the options GSList* with hard-coded names.
4312         I will do this if nobody else gets there first.
4313
4314 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
4315
4316         * src/maemo/modest-account-settings-dialog.c: (save_configuration): 
4317         Saved much of the incoming and outgoing data too, though I cannot yet see how to 
4318         save the security stuff.
4319
4320 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
4321
4322         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): 
4323         Set the email address and user fullname, which I now see must be 
4324         done separately.
4325         
4326         * src/maemo/modest-account-settings-dialog.h:
4327         * src/maemo/modest-account-settings-dialog.c:
4328          (on_response),
4329         (modest_account_settings_dialog_set_account_name): Show the email address, fullname, 
4330         leave-on-server and authentication.
4331         (save_configuration): Save most of the non-server-account specific stuff, but I don't see 
4332         how to do the rest.
4333
4334 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
4335
4336
4337         * src/maemo/modest-account-settings-dialog.c:
4338         * src/maemo/modest-account-settings-dialog.h:
4339         Most (but not all) of the widgets are now present as specified by the UI spec.
4340         No changes are yet saved, and some details are not properly shown yet.
4341         
4342         * po/en_GB.po: Added translations for logical IDs used by the Account Settings dialog.
4343
4344 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
4345
4346         * src/maemo/Makefile.am:
4347         * src/maemo/modest-account-settings-dialog.c:
4348         * src/maemo/modest-account-settings-dialog.h: The beginnings of the dialog to edit 
4349         an existing account. Doesn't do much yet.
4350         
4351         * src/maemo/modest-account-view-window.c: (on_edit_button_clicked): 
4352         Open the accounts settings dialog when Edit is clicked.
4353
4354 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
4355
4356         * src/maemo/easysetup/Makefile.am:
4357         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
4358         (load_from_file): 
4359         * src/maemo/easysetup/modest-easysetup-wizard.c:
4360         (modest_easysetup_wizard_dialog_init):
4361         Try to get the source directory from the build system,
4362         instead of hard-coding "./" into the source code, when opening our local 
4363         copies of the configuration files.
4364         But this still fails when opening the wizard from the Accounts window, 
4365         maybe because the working directory seems to change at runtime.
4366         So the wizard will fail the second time unless you copy the files into their 
4367         proper locations - see the stdout warnings for the paths.
4368         
4369         (create_page_account_details),(on_before_next): 
4370         Check for existing non-server accounts instead of server accounts, 
4371         so the default account name is useful again, and to prevent trying to 
4372         recreate accounts.
4373         
4374         * src/maemo/modest-account-view-window.c: (on_new_button_clicked): 
4375         Show the wizard when New is clicked.
4376         
4377         * src/widgets/modest-account-view.c: (on_account_default_toggled),
4378         (init_view): Show the column headers, and show the columns that are 
4379         specified in the UI specs. However, something in Maemo's GTK+ prevents 
4380         us from handling the GtkCellRendererToggle::toggled signal, so we cannot 
4381         change the default account. This is despite unsetting the special properties.
4382
4383 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
4384
4385         * docs/reference/modest-design.sgml: Corrected spelling mistake.
4386         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): 
4387         Create the 2 server accounts and then create the account, using the names of the 2 server accounts.
4388         This seems to be how this should be used. If it is, then I will update the AccountMgr documentation 
4389         to make that clearer.
4390         * src/modest-account-mgr.h: Corrected the modest_account_mgr_search_server_account() documentation.
4391
4392 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
4393
4394         * src/maemo/modest-account-view-window.c:
4395         (modest_account_view_window_init),
4396         (modest_account_view_window_new):
4397         Use the same buttons as specified in the 
4398         UI spec. Add the widgets to the vbox and action_area instead of just assigning them to 
4399         the existing widgets, which never had a chance of working.
4400         Put the ModestAccountView treeview in a scrolled window.
4401         Do not repeat the initialization in both _init() and _new().
4402         
4403         * src/widgets/modest-account-view.c: (update_account_view):
4404         Add a warning about modest_account_mgr_account_names() returning NULL, which is why 
4405         this widget and window shows no accounts.
4406         
4407         * po/en_GB.po: Added translations needed for the dialog button logical IDs.
4408         
4409 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
4410
4411         * src/maemo/easysetup/modest-easysetup-wizard.c:
4412         (set_default_custom_servernames): Avoid a dereference of a destroyed widget.
4413         (create_account): Do a sanity check, showing that modest_account_mgr_account_names() 
4414         returns NULL after modest_account_mgr_add_server_account() returned TRUE, 
4415         which seems wrong.
4416         
4417         * src/maemo/modest-main-window-ui.h: Specify the callback for the Accounts menu item.
4418         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts): Open the wizard if no 
4419         accounts exist yet, as in the UI spec.
4420         
4421         * src/modest-account-mgr.h: Add TODO comment about a possible memory leak.
4422
4423 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
4424
4425         * src/maemo/Makefile.am:
4426         * src/maemo/modest-connection-specific-smtp-edit-window.c:
4427         * src/maemo/modest-connection-specific-smtp-edit-window.h: 
4428         New window for editing connection-specific smtp details.
4429         Not fully implemented.
4430
4431         * src/maemo/modest-connection-specific-smtp-window.c:
4432         (modest_connection_specific_smtp_window_finalize) :
4433         unref the tree model.
4434         (on_button_edit): Show the edit window.
4435
4436 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
4437
4438         * src/Makefile.am: Change sequence of sub-libraries, which fixed an undefined symbol 
4439         error for me.
4440         
4441         * src/maemo/Makefile.am:
4442         * src/maemo/modest-connection-specific-smtp-window.c:
4443         * src/maemo/modest-connection-specific-smtp-window.h:
4444         New window for showing the list of connections, for connection-specific 
4445         SMTP servers. Not fully implemented, because it needs an enhancement to TnyMaemoDevice.
4446         * src/maemo/easysetup/modest-easysetup-wizard.c:
4447         (create_page_custom_outgoing): Show the new window when the button is clicked.
4448
4449 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
4450
4451         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
4452         * src/maemo/easysetup/modest-presets.c: (modest_presets_new):
4453         * src/maemo/modest-msg-edit-window.c:
4454         (modest_msg_edit_window_insert_image):
4455         * src/modest-conf.c: (modest_conf_key_escape):
4456         * src/modest-mail-operation.c:
4457         (modest_mail_operation_send_new_mail):
4458         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts),
4459         (modest_ui_actions_on_new_account):
4460         * src/widgets/modest-attachment-view.c: (update_filename_request):
4461         * src/widgets/modest-mail-header-view.c: 
4462         Corrected warnings that were breaking the build, by commenting out unused variables, 
4463         and a function, and by including a header.
4464
4465 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
4466
4467         * configure.ac: Define MODEST_PLATFORM_MAEMO and MODEST_PLATFORM_GNOME in config.h, 
4468         so we can #ifdef around platform-specific code when necessary.
4469         * src/modest-ui-actions.c: (modest_ui_actions_on_new_account): Use MODEST_PLATFORM_MAEMO 
4470         to allow this to build for the GNOME platform too.
4471
4472 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
4473
4474         * src/maemo/easysetup/modest-easysetup-wizard.c:
4475         Added util_increment_name() and used it in create_page_account_details() 
4476         to make sure that the default account name is always a new name.
4477         
4478         (modest_easysetup_wizard_dialog_init), 
4479         (set_default_custom_servernames): Some minor memory management fixes.
4480
4481 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
4482
4483         * Makefile.am:
4484         * configure.ac:
4485         * src/modest-runtime.c: (init_i18n): Restored the translation 
4486         infrastructure, so that GETTEXT_PACKAGE and MODEST_LOCALE_DIR 
4487         are defined in config.h, and the translations are installed.
4488         
4489         * src/maemo/easysetup/: Include config.h so that GETTEXT_PACKAGE 
4490         is defined for translation.
4491
4492 2007-04-03  Murray Cumming  <murrayc@murrayc.com>
4493
4494         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
4495         (load_from_file):
4496         * src/maemo/easysetup/modest-easysetup-wizard.c:
4497         (modest_easysetup_wizard_dialog_init):
4498         * src/maemo/easysetup/modest-presets.c: (modest_presets_new): 
4499         Use realistic paths (though they should use $prefix generically) to the 
4500         mcc_mapping and provider-data.keyfile files which might work when they 
4501         are installed by the future version of the operator-wizard package, 
4502         and then fallback to paths in our source code, with an explanatory 
4503         warning.
4504
4505 2007-04-03  Murray Cumming  <murrayc@murrayc.com>
4506
4507         * configure.ac:
4508         * src/Makefile.am:
4509         * src/maemo/Makefile.am:
4510         * src/maemo/easysetup/: Added files from the previously-exernal 
4511         osso-modest-easysetup.
4512         * src/maemo/modest-main-window-ui.h:
4513         * src/modest-ui-actions.c: 
4514         * src/modest-ui-actions.h:
4515         Added modest_ui_actions_on_new_account() as a signal handler for the 
4516         New Account menu item. It shows the easysetup wizard.
4517         * po/en_GB.po: Added additional needed logical IDs and translations.