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