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