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