2007-05-10 Murray Cumming <murrayc@murrayc.com>
[modest] / ChangeLog2
1 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
2
3         * src/modest-account-mgr-helpers.c:
4         (modest_account_mgr_get_server_account_data),
5         (modest_account_mgr_free_server_account_data):
6         * src/modest-account-mgr-helpers.h:
7         * src/modest-account-mgr.c:
8         (modest_account_mgr_add_server_account):
9         * src/modest-defs.h:
10         * src/modest-tny-account.c:
11         (modest_tny_account_new_from_server_account):
12         Determine the options for tny_camel_account_add_option() here, 
13         based on the settings, rather than storing them directly in gconf.
14
15 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
16
17         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
18         Show a more friendly error dialog now that we expect (from the tinymail 
19         documentation) to get the UNKNOWN_ALERT error. Add explanatory comments.
20
21 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
22
23         * src/maemo/modest-main-window.c: (on_account_update): Check that 
24         account_name is not NULL, to prevent a crash at startup that I am 
25         seeing on the N800. I do wonder why it is NULL.
26         
27         * src/maemo/easysetup/modest-easysetup-wizard.c:
28         (create_page_user_details):
29         * src/maemo/modest-account-settings-dialog.c:
30         (create_page_user_details), (create_page_outgoing):
31         * src/maemo/modest-connection-specific-smtp-edit-window.c:
32         (modest_connection_specific_smtp_edit_window_init):
33         * src/modest-ui-actions.c:
34         (modest_ui_actions_on_password_requested):
35         Use HILDON_GTK_INPUT_MODE_INVISIBLE with password entries, which 
36         might do something useful with the on-screen keyboard.
37
38 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
39
40         * src/maemo/modest-main-window.c: (on_account_update):
41         Avoid adding a menu item to priv->accounts_popup if accounts_popup is 
42         NULL, to avoid lots of warnings. However, it probably should not be NULL.
43
44 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
45
46         * src/modest-tny-account-store.c: (on_account_changed): 
47         Correct the signature of this signal handler.
48
49 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
50
51         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
52         Show a HildonNote instead of a GtkDialog for Maemo.
53
54 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
55
56         * src/widgets/modest-account-view.h:
57         * src/widgets/modest-account-view.c: (on_account_changed),
58         (on_account_removed). Added a boolean flag, set/unset by 
59         modest_account_view_block_conf_updates(), 
60         modest_account_view_unblock_conf_updates() to prevent unnecessary 
61         updates, but this is not very useful because the gconf notifications are 
62         so delays (maybe only on Maemo Bora).
63         So auto-updating is turned off, and these functions do an explicit 
64         update when necessary.
65         However, something else is still doing too much work when adding/removing 
66         accounts, probably in another part of the application.
67         
68         * src/maemo/modest-account-view-window.c:
69         (on_delete_button_clicked), (on_edit_button_clicked),
70         (on_new_button_clicked): Use the new functions.
71
72 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
73
74         * src/modest-account-mgr-helpers.c:
75         (modest_account_mgr_set_first_account_as_default):
76         Sort the list of names alphabetically-by-title, so we choose the first one 
77         based on that.
78         * src/widgets/modest-account-view.c: (init_view): Sort the TreeModel 
79         alphabetically by the title.
80         
81         This fixes projects.maemo.org bug NB#56418 .
82         
83         * src/modest-account-mgr-priv.c:
84         (_modest_account_mgr_account_from_key):
85         * src/modest-account-mgr.c: (on_key_change): Initialize variables to 
86         avoid a valgrind error, and possible random behaviour.
87
88 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
89
90         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
91         Handle the new TNY_ACCOUNT_STORE_ERROR error domain. I will update the 
92         tinymail documentation to say that this can be expected.
93         Handle the new TNY_ACCOUNT_STORE_ERROR_UNKNOWN_ALERT error code. It is not 
94         pretty, and should not happen, but I would prefer to know when it does.
95
96 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
97
98         * configure.ac: When using the older hildon version, probably on Bora, 
99         require gnome-vfs-module-2.0, which is the old provider of gnome-vfs-mime.h,
100         to fix the build.
101         * src/widgets/modest-attachment-view.c:
102         (modest_attachment_view_set_part_default): Initialize variables, to fix the 
103         build.
104
105 2007-05-09  Marcus Bauer  <marcusb@openismus.com>
106
107         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message):
108         Implemented the prototype. Can be tested with
109         tests/dbus_api/test_open_message: 
110
111 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
112
113         * src/modest-tny-account-store.c:
114         (modest_tny_account_store_instance_init), (get_password):
115         * src/modest-ui-actions.c:
116         (modest_ui_actions_on_password_requested):
117         Do not store the password in gconf, because this function is called 
118         for non-remembered passwords. Actually use the cached (in the hash map) 
119         password instead of releasing it.
120         The password will now not be remembered if it is asked via the protected 
121         password dialog, as per the UI spec.
122
123 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
124
125         * src/modest-defs.h:
126         * src/modest-account-mgr-helpers.h:
127         * src/modest-account-mgr-helpers.c:
128         Added modest_server_account_get_username_has_succeeded(),
129         modest_server_account_set_username_has_succeeded().
130         (modest_server_account_set_username),
131         Reset the has-succeeded flag if the username changes.
132         
133         * src/maemo/modest-account-settings-dialog.c: (save_configuration):
134         * src/maemo/modest-connection-specific-smtp-window.c:
135         (modest_connection_specific_smtp_window_save_server_accounts):
136         Use modest_server_account_set_username() instead of using 
137         modest_conf_set_string() directly, so that the has-succeeded flag is always 
138         reset.
139         
140         * src/modest-ui-actions.c:
141         (modest_ui_actions_on_password_requested): Dim the username entry if 
142         the username has ever worked, as per the UI spec.
143
144 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
145
146         * src/modest-tny-account-store.c: (get_password):
147         * src/modest-ui-actions.c:
148         (modest_ui_actions_on_password_requested):
149         Allow the username to be changed too, though there is more work to 
150         be done on exactly how this behaves.
151
152 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
153
154         * src/modest-account-mgr-helpers.h:
155         * src/modest-account-mgr-helpers.c:
156         Added modest_account_mgr_get_display_name(),
157         modest_server_account_get_username(),
158         modest_server_account_set_username(),
159         modest_server_account_set_password(),
160         modest_server_account_get_hostname() functions so we do not need to 
161         use the conf API directly.
162         
163         * src/maemo/modest-main-window.c: (connect_signals):
164         Actually connect ot the ModestAccountStore::request-password signal, 
165         so that we show the dialog when the password is requested by Tinymail, 
166         for isntance if it is empty.
167
168         * src/modest-marshal.list:
169         * src/modest-tny-account-store.c:
170         (modest_tny_account_store_class_init), (get_password),
171         (modest_tny_account_store_alert):
172         * src/modest-tny-account-store.h:
173         * src/modest-ui-actions.h:
174         * src/modest-ui-actions.c:
175         (modest_ui_actions_on_password_requested):
176         Change the signal parameters, so it is obvious that we are providing 
177         the non human-readable server name, and receiving both the username 
178         and password, though changing of the username is not yet implemented.
179         Change the dialog UI to match the Maemo UI specifications, with #idfefing 
180         for the GNOME version.
181         
182         This should fix the projects.maemo.org bug NB#56209, though it does not 
183         work on Bora, because the gconf_client_get() for the password fails 
184         immediately after we save it with gconf_client_set().
185
186 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
187
188         * configure.ac:
189         * src/Makefile.am: Reverted the use of AM_CONDITIONAL(), because it 
190         caused an undefined symbol error:
191         modest-platform.c:84: undefined reference to `modest_osso_cb_hw_state_handler
192
193 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
194
195         * src/modest-tny-account-store.c:
196         (modest_tny_account_store_alert): Adapt to the changed tinymail API, 
197         using a GError instead of a string message, so we can translate it in 
198         Modest.
199
200 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
201
202         * src/maemo/modest-address-book.c:
203         (modest_address_book_check_names):
204         * src/maemo/modest-msg-view-window.c:
205         (modest_msg_view_window_clipboard_owner_change):
206         * src/modest-init.c: (modest_init_init_ui):
207         * src/modest-mail-operation.c: (modest_mail_operation_send_mail),
208         (update_folders_cb), (modest_mail_operation_update_account):
209         * src/modest-ui-actions.c: (modest_ui_actions_on_msg_link_hover),
210         (modest_ui_actions_on_msg_attachment_clicked),
211         (modest_ui_actions_on_msg_recpt_activated):
212         * src/widgets/modest-header-view.c: (drag_data_get_cb):
213         * src/widgets/modest-msg-view.c: (modest_msg_view_search),
214         (modest_msg_view_search_next):
215         * src/widgets/modest-recpt-editor.c:
216         (modest_recpt_editor_on_button_release_event),
217         (modest_recpt_editor_on_key_press_event): Commented-out unnecessary calls to 
218         g_message(). At this point we should only be seeing interesting errors on 
219         stdout. Debugging messages could be #ifdefed-out if they are still useful.
220
221 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
222         
223         (modest_wizard_dialog_force_title_update):
224         * src/maemo/easysetup/modest-wizard-dialog.h:
225         * src/maemo/easysetup/modest-wizard-dialog.c: (set_property):
226         For GTK+ 2.10, when present, connect to the GtkNotebook signals so we 
227         can update the title when appropriate. Otherwise the title is wrong if the 
228         pages are added after adding the notebook to the dialog.
229         This must be a problem in HildonWizardDialog too.
230         Added modest_wizard_dialog_force_title_update() for GTK+ 2.6.
231         
232         * src/maemo/easysetup/modest-easysetup-wizard.c:
233         (create_subsequent_customsetup_pages),
234         (create_subsequent_easysetup_pages): 
235         Call modest_wizard_dialog_force_title_update() so that the title is 
236         correct even with GTK+ < 2.10.
237         This fixes projects.maemo.org bug NB#56145 .
238         
239 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
240
241         * src/maemo/modest-platform.c:
242         (modest_platform_set_update_interval): Use the ALARM_EVENT_NO_DIALOG 
243         flag (awful lack of namespacing in this API) to prevent a useless %s dialog 
244         from being shown.
245
246 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
247
248         * src/widgets/modest-window.h:  
249         * src/widgets/modest-window.c: Added a save_state_func vfunc, 
250         and modest_window_save_state(), which invokes it.
251
252         * src/widgets/modest-window-mgr.h:
253         * src/widgets/modest-window-mgr.c:
254         Added modest_window_mgr_save_state_for_all_windows(), which calls 
255         the save_state vfunc on all registered windows, if implemented.
256         
257         * src/gnome/modest-msg-edit-window.c:
258         * src/gnome/modest-msg-view-window.c:
259         * src/maemo/modest-msg-edit-window.c:
260         * src/maemo/modest-msg-view-window.c:
261         * src/maemo/modest-main-window.c: 
262         Specify the existing save_settings functions as implementations of 
263         ModestWindow::save_state_func().
264
265         * src/maemo/modest-osso-state-saving.c: modest_osso_save_state():
266         Call modest_window_mgr_save_state_for_all_windows(). This happens before 
267         enabling hibernation, for instance.
268         
269         We may need to do the same thing for restoring settings.
270
271
272 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
273
274         * src/widgets/modest-window-mgr.c: 
275         * src/widgets/modest-window-mgr.h:
276         Added modest_window_mgr_prevent_hibernation_while_window_is_shown() and
277         modest_window_mgr_get_hibernation_is_prevented().
278         
279         * src/maemo/modest-main-window.c:
280         (on_hildon_program_is_topmost_notify): Prevent hibernation 
281         (possible when the application goes to the background in the WM), 
282         if modest_window_mgr_get_hibernation_is_prevented() is TRUE.
283         
284         * src/maemo/easysetup/modest-easysetup-wizard.c:
285         (modest_easysetup_wizard_dialog_init):
286         * src/maemo/modest-account-settings-dialog.c:
287         (modest_account_settings_dialog_init):
288         * src/maemo/modest-connection-specific-smtp-edit-window.c:
289         (modest_connection_specific_smtp_edit_window_init):
290         * src/maemo/modest-connection-specific-smtp-window.c:
291         (modest_connection_specific_smtp_window_init):
292         * src/maemo/modest-signature-editor-dialog.c:
293         (modest_signature_editor_dialog_init):
294         Call modest_window_mgr_prevent_hibernation_while_window_is_shown() to 
295         prevent hibernation while any of these account settings dialogs are open.
296
297 2007-05-04  Murray Cumming  <murrayc@murrayc.com>
298
299         * src/maemo/Makefile.am:
300         * src/maemo/modest-osso-state-saving.c: 
301         * src/maemo/modest-osso-state-saving.h: Added 
302         modest_osso_load_state() and modest_osso_save_state() though they do 
303         nothing now. They should iterate through all the open windows and load/save 
304         their state.
305         * src/modest-ui-actions.c: (modest_ui_actions_on_quit): For Mameo, 
306         save state when closing.
307         
308         * src/maemo/modest-main-window.c:
309         (on_hildon_program_is_topmost_notify), (modest_main_window_new):
310         Add a notification handler for the HildonProgram::is-topmost property, 
311         so we can allow hibernation when the application goes into the background.
312         But we still need to detect when the accounts setup windows are open so 
313         we can stop hibernation when they are open.
314         To do this, I also added the main window the HildonProgram. This might have 
315         other side-effects/benefits, and should maybe be done for other windows.
316
317         * src/maemo/modest-osso-autosave-callbacks.h:
318         * src/maemo/modest-osso-autosave-callbacks.c:
319         (modest_on_osso_application_autosave): Add a libosso auto-save callback, 
320         though it does not do anything yet, and we might never need this to do 
321         anything. For instance, we already save drafts.
322         
323         * src/maemo/modest-platform.c: (modest_platform_init):
324         Specify the libosso auto-save callback.
325
326 2007-05-03  Murray Cumming  <murrayc@murrayc.com>
327
328         * src/maemo/modest-platform.c:
329         (modest_platform_set_update_interval):
330         * src/modest-defs.h: Store the alarmd cookie ID in gconf, because it 
331         aparently stays valid between application instances, so we can use this 
332         to remove and reset it later. According to a maemo-developers email from 
333         David Weinehall.
334
335 2007-05-03  Murray Cumming  <murrayc@murrayc.com>
336
337         * configure.ac: Depend on libalarm for Maemo.
338
339         * src/dbus_api/modest-dbus-api.h:
340         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_receive),
341         (on_send_receive), (modest_dbus_req_handler):
342         Handle a SEND_RECEIVE D-Bus method.
343         
344         * libmodest-dbus-client/libmodest-dbus-client.c:
345         (libmodest_dbus_client_send_and_receive):
346         * libmodest-dbus-client/libmodest-dbus-client.h:
347         Add C convenience functions for calling the new D-Bus method.
348         
349         * src/modest-platform.h:
350         * src/gnome/modest-platform.c:
351         * src/maemo/modest-platform.c: 
352         Added modest_platform_set_update_interval(), which uses the 
353         alarmd API on Maemo.
354         (modest_platform_init),
355         Call modest_platform_set_update_interval(), using a hard-coded 
356         interval for now (until the global settings dialog is implemented), 
357         though I am not sure that this makes sense yet.
358
359 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
360
361         * src/dbus_api/modest-dbus-callbacks.c:
362         (modest_osso_cb_hw_state_handler):
363         * src/dbus_api/modest-dbus-callbacks.h:
364         * src/maemo/modest-platform.c: (modest_platform_init):
365         Registered (empty) callbacks for the osso hardware state D-Bus signals, 
366         in case this has some effect on the ability for Maemo to ping the 
367         application.
368
369 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
370
371         * src/modest-text-utils.c: (modest_text_utils_validate_recipient):
372         Comment out an if() that checks a gchar for < 0, causing a build-breaking 
373         warning. It is probably a logic error, but I need to fix the build.
374
375 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
376
377         * src/modest-account-mgr.h:
378         * src/modest-account-mgr.c: 
379         (modest_account_mgr_account_names): Add a gboolean enabled_only 
380         parameter, so we can get lists of onlt the enabled accounts.
381         
382         (modest_account_mgr_add_account),,
383         (modest_account_mgr_account_with_display_name_exists):
384         * src/maemo/modest-msg-edit-window.c: (get_transports):
385         * src/modest-account-mgr-helpers.c:
386         (modest_account_mgr_set_first_account_as_default):
387         * src/modest-init.c: (init_default_account_maybe):
388         * src/modest-tny-account-store.c: (get_accounts):
389         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts),
390         (do_send_receive_auto), (modest_ui_actions_on_send_receive):
391         * tests/check_account-mgr.c: (START_TEST):
392         Provide the extra parameter, as appropriate.
393         
394         * src/widgets/modest-account-view.c: (update_account_view):
395         Do not show disabled accounts (meaning that there is no way to 
396         enable/disable accounts in the UI (the feature is not in our UI 
397         specification), so we can use this internally only to mark unfinished 
398         or temporary account data.
399         
400         * src/maemo/easysetup/modest-easysetup-wizard.c:
401         (create_account): Add boolean enable parameter, so we can specify FALSE 
402         to create the temporary account.
403         (on_button_edit_advanced_settings): Create the temporary account as disabled.
404         (on_before_next): When finishing, when there is a temporary account, just 
405         set it as enabled.
406         Also, use a timeout to delay the showing of the dialog until gconf is likely 
407         to return correct information, due to a maemo gconf bug that is fixed in 
408         osso 1.1, but not yet in Bora.
409         However, the dialog stays on screen after it is destroyed.
410         
411         * src/maemo/modest-account-settings-dialog.c: on_response(): Do not check 
412         for invalid data when cancelling. Use a hildon note instead of a dialog 
413         to complain about invalid data. Do not show the account-saved note if the 
414         account is disabled (a temporary account that will not really be saved for use 
415         until later.)
416
417 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
418
419         * src/modest-account-mgr-helpers.h:
420         * src/modest-account-mgr-helpers.c:
421         Added modest_account_mgr_unset_default_account(),
422         Added modest_account_mgr_set_first_account_as_default().
423
424         * src/modest-account-mgr.c: (modest_account_mgr_remove_account): 
425         If it was the default account, unset the default account name.
426         
427         * src/maemo/modest-account-view-window.c:
428         (on_delete_button_clicked): If it was the default account, 
429         set the first remaining account as the default instead.
430         
431         * src/maemo/modest-main-window.c: (on_account_update): Do not try to use 
432         a NULL account or a NULL default account, to prevent a crash. This should 
433         not happen now anyway. Bug #55343 in projects.maemo.org/bugzilla.
434         
435
436 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
437
438         * src/widgets/modest-recpt-editor.c:
439         (modest_recpt_editor_on_key_press_event): Put an #ifdef around the 
440         use of gtk_text_buffer_get_has_selection() (from GTK+ 2.10), and add a 
441         TODO comment for this. This fixes the build.
442         
443         * src/modest-ui-actions.c: Add do_send_receive(), though it might not 
444         be the best place for it. This will in future update all auto-update accounts, 
445         rather than just the current/default account, when that gconf key exists.
446         (modest_ui_actions_on_send_receive): Offer the settings dialog (or wizard) 
447         if there are no accounts, before calling do_send_receive().
448         * src/modest-ui-actions.h: Specify the callback for the Send/Recieve menu item.
449         
450         * src/gnome/modest-main-window.c: (on_online_toggle_toggled):
451         * src/maemo/modest-main-window-ui.h:
452         * src/maemo/modest-main-window.c: (on_connection_changed),
453         (sync_accounts_cb): Use do_send_receive() instead of calling the signal handler 
454         directly, becaue the signal handler does more.
455
456 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
457
458         * src/modest-account-mgr-helpers.c:
459         (modest_account_mgr_get_account_data): Add a more helpful error message, and comment, 
460         for the case that the account does not exist.
461         
462         * src/widgets/modest-folder-view.c: (filter_row): Use the tinymail account ID 
463         (equivalent to the modest account name) rather than the tinymail account name 
464         (equivalent to the modest account title - human readable) to get the account data.
465         Check for null account data to prevent the crash, and add a TODO comment saying that 
466         this needs fixing because it is using the server account name instead of the account name.
467
468 2007-04-29  Murray Cumming  <murrayc@murrayc.com>
469
470         * src/maemo/easysetup/modest-easysetup-wizard.c: (show_error):
471         * src/maemo/modest-account-settings-dialog.c: (show_error),
472         (show_ok):
473         Use hildon_note_new_information() for informative and error messages, 
474         which seems to be expected for Maemo applications (no documentation that I know of 
475         says this). I am surprised that there is no distinction between info and error 
476         dialogs.
477
478 2007-04-29  Murray Cumming  <murrayc@murrayc.com>
479
480         * src/maemo/modest-maemo-ui-constants.h: Add a MODEST_MARGIN_NONE constant, so 
481         it is easy to find where this is used.
482         
483         * src/maemo/easysetup/modest-easysetup-wizard.c:
484         (create_page_welcome), (create_page_account_details),
485         (create_page_user_details), (create_page_complete_easysetup),
486         (create_page_custom_incoming), (create_page_custom_outgoing),
487         (create_page_complete_custom):
488         * src/maemo/modest-account-settings-dialog.c:
489         (create_page_account_details), (create_page_user_details),
490         (create_page_incoming), (create_page_outgoing):
491         * src/maemo/modest-account-view-window.c: (window_vbox_new):
492         * src/maemo/modest-connection-specific-smtp-edit-window.c:
493         (modest_connection_specific_smtp_edit_window_init):
494         * src/maemo/modest-connection-specific-smtp-window.c:
495         (modest_connection_specific_smtp_window_init):
496         * src/maemo/modest-signature-editor-dialog.c:
497         (modest_signature_editor_dialog_init): Use the correct padding/spacing/borders 
498         and scrolling policy as per the Email Application Layout Guide, if I have 
499         understood it.
500
501 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
502
503         * src/modest-tny-account-store.c: (modest_tny_account_store_init): 
504         Remove the add_transport_account_func and add_store_account_func vfunc implementations, 
505         which were empty, because these vfuncs have been removed from TnyAccountStore.
506         This fixes the build.
507
508 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
509
510         * src/maemo/modest-main-window.c:
511         (modest_main_window_show_toolbar): Check that a toolbar item is not NULL before 
512         showing/hiding it. Added TODO because it probably should not be NULL.
513         * src/modest-init.c: (modest_init_init_ui): Use a g_message() instead of a g_warning() 
514         because unnecessary g_warnings() make degugging difficult.
515
516 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
517
518         * src/maemo/modest-msg-edit-window.c:
519         (modest_msg_edit_window_select_color),
520         (modest_msg_edit_window_select_background_color): 2 const corrections and 
521         moving 2 #endifs before closing brackets, to fix the build.
522
523 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
524
525         * src/maemo/easysetup/modest-easysetup-wizard.h:
526         * src/maemo/easysetup/modest-easysetup-wizard.c:
527         (modest_easysetup_wizard_dialog_finalize),
528         (on_button_edit_advanced_settings), (create_page_complete_custom),
529         (on_response), (create_account):
530         Implement the Advanced Settings edit button, by saving the account information, 
531         for the Advanded Settings dialog to use directly from gconf, and removing it 
532         if Finish is never clicked. There is still some UI strangeness, so this is not finished.
533         Bug #5533 in the projects.maemo.org bugzilla.
534
535 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
536
537         * src/maemo/modest-msg-view-window.c:
538         (modest_msg_view_window_show_toolbar): Prevent hide/show of a NULL toolbar widget, 
539         when opening a message window.
540
541 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
542
543         * src/maemo/easysetup/modest-easysetup-wizard.c:
544         (create_page_custom_outgoing): Correct the position of the horizontal separator to 
545         match the UI spec.
546         
547         * src/maemo/modest-main-window.c: (set_toolbar_mode): Check that widgets are not NULL 
548         before showing/hiding them, to avoid a crash when clicking on folders when there are no 
549         gconf settings. I probably added more checks than necessary, but that is safer.
550         
551         * src/modest-ui-actions.c: (modest_ui_actions_on_move_to): Initialize the mail_op 
552         variable to fix the build, but this seems to be used when it is still NULL.
553
554 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
555
556         * src/modest-platform.h:
557         * src/gnome/modest-platform.c: (modest_platform_connect_and_wait):
558         * src/maemo/modest-platform.c: (modest_platform_connect_and_wait):
559         * src/modest-main.c: Implement this function so we can avoid using 
560         maemo-specific API from cross-platform code.
561         (main):
562         * src/modest-tny-account-store.c:
563         (get_smtp_specific_transport_account_for_open_connection):
564         * src/modest-ui-actions.c: (check_for_connection),
565         (modest_ui_actions_on_item_not_found):
566         Use modest_platform_connect_and_wait() and put #idefs around other 
567         maemo-specific code, because only maemo currently has a way to 
568         identify connection names.
569
570 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
571
572         * src/modest-tny-account-store.h:
573         * src/modest-tny-account-store.c:
574         Added modest_tny_account_store_get_transport_account_for_open_connection(), which respects 
575         the connection-specific SMTP server settings in the configuration.
576         
577         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_mail),
578         (on_idle_mail_to):
579         * src/maemo/modest-main-window.c: (on_connection_changed),
580         (connect_signals):
581         * src/modest-main.c: (main), (start_ui), (send_mail):
582         Use tny_maemo_conic_device_connect() instead of tny_maemo_conic_force_online(), when 
583         that is what is intended.
584         
585         * src/modest-ui-actions.c: (action_send), (action_receive),
586         (modest_ui_actions_on_item_not_found), (modest_ui_actions_on_send):
587         Use modest_tny_account_store_get_transport_account_for_open_connection() instead of 
588         modest_tny_account_store_get_tny_account_by_account() so that the connection-specific 
589         SMTP server is used when it is specified.
590         
591         (modest_ui_actions_on_send_receive): 
592         Check that a connection is open before proceeding.
593         Receive and then send, instead of vice-versa, as per the specification.
594
595 2007-04-26  Murray Cumming  <murrayc@murrayc.com>
596
597         * src/modest-mail-operation.c:
598         (modest_mail_operation_remove_folder): Intialize the parent variable, to fix the build, 
599         though I guess it should be something other than NULL.
600
601 2007-04-26  Murray Cumming  <murrayc@murrayc.com>
602
603         * src/maemo/easysetup/modest-easysetup-wizard.c:
604         (create_page_custom_incoming): Add the checkbox to the caption instead of adding the 
605         combo twice, to avoid an g_warning and to make it visible again.
606         * src/maemo/modest-main-window.c: (on_account_update): Check whether the popup_menu is 
607         attached before detaching it, to avoid a g_warning, and add comment about the implicit 
608         (already intended) dereference when detaching, because we then recreate the menu.
609         But I am not sure why the warning was happening, and it is possible that this is a memory 
610         leak.
611
612 2007-04-25  Murray Cumming  <murrayc@murrayc.com>
613
614         * src/dbus_api/modest-dbus-callbacks.c: Added uri_unescape(),
615         and uri_parse_mailto() utility functions.
616         (on_idle_mail_to): Parse, unescape, and use the subject, cc, bcc, and body items in 
617         the mailto URI.
618         * tests/dbus_api/test_mail_to.c: (main): Add escaped spaces in the URI to test this.
619
620 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
621
622         * src/dbus_api/modest-dbus-api.h:
623         * src/dbus_api/modest-dbus-callbacks.c:
624         Use an idle callback to execute the modest code in the application's own thread.
625         Remove the helloworld example method.
626         Handle mail-to and open-message D-Bus methods, though the mail-to format needs to be 
627         parsed, and the open-message method is not implemented because this is not yet implemented in 
628         modest itself.
629         * libmodest-dbus-client/libmodest-dbus-client.c:
630         (libmodest_dbus_client_send_mail), (libmodest_dbus_client_mail_to),
631         (libmodest_dbus_client_open_message):
632         * libmodest-dbus-client/libmodest-dbus-client.h: New functions for the new methods.
633         
634         * src/modest-tny-msg.c: (modest_tny_msg_new), (add_body_part): Handle NULLs for subject and 
635         body without crashing.
636         
637         * tests/dbus_api/Makefile.am:
638         * tests/dbus_api/test_mail_to.c:
639         * tests/dbus_api/test_open_message.c: New tests for the new methods.
640
641 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
642
643         * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in:
644         Added file to fix the build. Sorry.
645         
646         * src/dbus_api/Makefile.am:
647         * src/dbus_api/modest-dbus-api.h:
648         * src/dbus_api/modest-dbus-callbacks.h:
649         * src/dbus_api/modest-dbus-callbacks.c: (on_send_mail),
650         (modest_dbus_req_handler):
651         Put constants in a separate header so it can be reused by the 
652         client library, without duplication
653         
654         * libmodest-dbus-client/Makefile.am:
655         * libmodest-dbus-client/libmodest-dbus-client.c:
656         (libmodest_dbus_client_call_helloworld),
657         (libmodfest_dbus_client_send_mail),
658         (libmodfest_dbus_client_mailto),
659         (libmodfest_dbus_client_open_message):
660         * libmodest-dbus-client/libmodest-dbus-client.h:
661         (Partly) Implement a send_mail D-Bus method.
662         
663         * tests/dbus_api/Makefile.am:
664         * tests/dbus_api/test_send_mail.c: (main): Added a test for 
665         the send_email D-Bus method.
666
667 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
668
669         * Makefile.am:
670         * configure.ac:
671         * libmodest-dbus-client/Makefile.am:
672         * libmodest-dbus-client/libmodest-dbus-client.c:
673         * libmodest-dbus-client/libmodest-dbus-client.h:
674         * tests/dbus_api/Makefile.am:
675         * tests/dbus_api/test_hello.c: (main): Added directory structure for a C convenience library 
676         for using the modest D-Bus API, and used that from the test. It is still just a helloworld.
677
678 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
679
680         * src/maemo/easysetup/modest-easysetup-wizard.c:
681         (create_page_account_details):
682         * src/maemo/modest-account-settings-dialog.c:
683         (create_page_account_details): Explicitly set auto-capitalization mode for the title 
684         widgets, because this might not be the default in future versions of the Maemo GTK+. 
685         However, I can not not get capitalization to work even in a simple test case.
686
687 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
688
689         * src/maemo/easysetup/modest-easysetup-wizard.c:
690         (create_page_custom_incoming), (create_page_custom_outgoing):
691         * src/maemo/modest-account-settings-dialog.c:
692         (create_page_account_details), (create_page_incoming),
693         (create_page_outgoing): Use a separate label in a caption for GtkCheckButtons, 
694         instead of using gtk_check_button_with_label(), so they are aligned like the other 
695         widgets, as per the UI spec.
696
697 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
698
699         * src/maemo/easysetup/modest-easysetup-wizard.c:
700         * src/maemo/modest-connection-specific-smtp-edit-window.c:
701         * src/widgets/modest-validating-entry.c:
702         * src/widgets/modest-validating-entry.h: Rename the validating widget so it has a 
703         Modest prefix instead of an EasySetup prefix.
704
705 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
706
707         * src/widgets/modest-validating-entry.h:
708         * src/widgets/modest-validating-entry.c: (on_insert_text),
709         Added easysetup_validating_entry_set_max_func(), used to set a callback 
710         to call when the max number of characters is reached. GtkEntry has a max-length 
711         already but is silent about it.
712
713         * src/maemo/easysetup/modest-easysetup-wizard.c: (on_entry_max),
714         (create_page_account_details), (create_page_user_details),
715         (create_account):
716         * src/maemo/modest-account-settings-dialog.c: (on_entry_max),
717         (create_page_account_details), (create_page_user_details),
718         (create_page_outgoing):
719         * src/modest-ui-actions.c: (modest_ui_actions_on_details): 
720         Use easysetup_validating_entry_set_max_func() to show the warning dialog, as per 
721         the UI spec, when the user tries to enter more than the max number of characters.
722
723 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
724
725         * src/maemo/easysetup/modest-easysetup-wizard.c:
726         (create_page_user_details), (create_page_custom_incoming),
727         (create_page_custom_outgoing):
728         * src/maemo/modest-account-settings-dialog.c:
729         (create_page_user_details), (create_page_incoming),
730         (create_page_outgoing):
731         * src/maemo/modest-connection-specific-smtp-edit-window.c:
732         (modest_connection_specific_smtp_edit_window_init):
733         Use hildon_gtk_entry_set_input_mode() to turn off auto-capitalization where it is 
734         not appropriate. Bad Maemo-specific defaults!.
735
736 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
737
738         * src/maemo/modest-signature-editor-dialog.c: (enable_widgets),
739         (on_toggle_button_changed), (modest_signature_editor_dialog_init),
740         (modest_signature_editor_dialog_set_settings): 
741         Disable the label and textview when the checkbox is disabled, and use the 
742         specified (UI spec) default signature text.
743
744 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
745
746         * src/maemo/modest-connection-specific-smtp-edit-window.c:
747         (modest_connection_specific_smtp_edit_window_init): Use spacing constants.
748         
749         * src/modest-defs.h:
750         * src/modest-account-mgr-helpers.h:
751         * src/modest-account-mgr-helpers.c:
752         Added modest_account_mgr_get/set_signature(), using new gconf keys.
753         
754         * src/maemo/Makefile.am:
755         * src/maemo/modest-signature-editor-dialog.c:
756         * src/maemo/modest-signature-editor-dialog.h: New dialog for editing signatures, 
757         as per the UI spec.
758         
759         * src/maemo/modest-account-settings-dialog.h:
760         * src/maemo/modest-account-settings-dialog.c:
761         (modest_account_settings_dialog_finalize), (on_button_signature),
762         (save_configuration): Use the new dialog when the Edit button is pressed, and 
763         save the changes if necessary, as per the UI spec.
764
765 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
766
767         * src/maemo/Makefile.am:
768         * src/maemo/modest-maemo-ui-constants.h: New header with some defines for widget spacing, 
769         based on maemo-develoers email from Dirk.
770         
771         * src/maemo/easysetup/modest-easysetup-wizard.c:
772         (create_page_welcome), (create_page_account_details),
773         (create_page_user_details), (create_page_complete_easysetup),
774         (create_page_custom_incoming), (create_page_custom_outgoing),
775         (create_page_complete_custom),
776         (modest_easysetup_wizard_dialog_init):
777         * src/maemo/modest-account-settings-dialog.c:
778         (create_page_account_details), (create_page_user_details),
779         (create_page_incoming), (create_page_outgoing),
780         (modest_account_settings_dialog_init):
781         * src/maemo/modest-connection-specific-smtp-window.c:
782         (modest_connection_specific_smtp_window_init): Used the smallest of the spacing constants.
783
784 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
785
786         * src/maemo/easysetup/modest-easysetup-wizard.c:
787         (create_page_account_details), (create_page_custom_outgoing),
788         (create_page_complete_custom):
789         * src/maemo/modest-account-settings-dialog.c:
790         (create_page_user_details), (create_page_incoming),
791         (create_page_outgoing):
792         * src/maemo/modest-connection-specific-smtp-edit-window.c:
793         (modest_connection_specific_smtp_edit_window_init): 
794         Use the correct (UI spec) port min/max, and use horizontal separators, 
795         as per the UI spec.
796
797 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
798
799         * src/maemo/easysetup/modest-easysetup-wizard.c:
800         (set_default_custom_servernames):
801         * src/maemo/modest-account-settings-dialog.c:
802         (create_page_incoming), (on_combo_outgoing_security_changed),
803         (on_combo_incoming_security_changed), (create_page_outgoing),
804         (modest_account_settings_dialog_set_account_name),
805         (save_configuration):
806         * src/maemo/modest-connection-specific-smtp-edit-window.c:
807         (on_combo_security_changed),
808         (modest_connection_specific_smtp_edit_window_init),
809         (modest_connection_specific_smtp_edit_window_set_connection),
810         (modest_connection_specific_smtp_edit_window_get_settings): 
811         Use HildonNumberEditor instead of GtkEntry for the port numbers so it has the - and + buttons,
812         as per the UI spec.
813
814 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
815
816         * po/en_GB.po:
817         * src/maemo/easysetup/modest-easysetup-wizard.c:
818         (create_page_custom_outgoing), (create_page_complete_custom):
819         * src/maemo/modest-account-settings-dialog.c:
820         (create_page_user_details), (create_page_outgoing):
821         * src/maemo/modest-account-view-window.c: (button_box_new):
822         Use changed logical IDs as per the most recent UI spec:
823         mcen_bd_emailsetup_edit -> mcen_bd_edit
824         mcen_bd_emailsetup_delete -> mcen_bd_delete
825         mcen_bd_emailsetup_close -> mcen_bd_close
826
827 2007-04-20  2007-04-20  Murray Cumming  <murrayc@murrayc.com>
828
829         * configure.ac:
830         * src/Makefile.am:
831         * src/dbus_api/Makefile.am:
832         * src/dbus_api/modest-dbus-callbacks.c:
833         * src/dbus_api/modest-dbus-callbacks.h:
834         * src/maemo/modest-platform.c: (modest_platform_init):
835         Added the beginnings of a D-Bus API. At the moment it just has a HelloWorld 
836         method.
837         * tests/Makefile.am:
838         * tests/dbus_api/Makefile.am:
839         * tests/dbus_api/test_hello.c: (main): Very simple test of the D-Bus API.
840
841 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
842
843         * src/maemo/modest-account-settings-dialog.c:
844         * src/maemo/modest-connection-specific-smtp-edit-window.c:
845         Removed unnecessary includes.
846
847 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
848
849         * src/maemo/easysetup/modest-easysetup-wizard.c:
850         * src/maemo/modest-account-settings-dialog.c:
851         * src/maemo/modest-connection-specific-smtp-edit-window.c:
852         * src/widgets/Makefile.am:
853         * src/widgets/modest-easysetup-secureauth-combo-box.c:
854         * src/widgets/modest-easysetup-secureauth-combo-box.h:
855         * src/widgets/modest-easysetup-serversecurity-combo-box.c:
856         * src/widgets/modest-easysetup-serversecurity-combo-box.h:
857         * src/widgets/modest-secureauth-combo-box.c:
858         * src/widgets/modest-secureauth-combo-box.h:
859         * src/widgets/modest-serversecurity-combo-box.c:
860         * src/widgets/modest-serversecurity-combo-box.h: Renamed the files and 
861         made the GObject names more consistent with the rest of the Modest code.
862
863 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
864
865         * src/maemo/easysetup/Makefile.am:
866         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c:
867         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.h:
868         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c:
869         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h:
870         * src/maemo/easysetup/modest-easysetup-wizard.c:
871         * src/maemo/easysetup/modest-validating-entry.c:
872         * src/maemo/easysetup/modest-validating-entry.h:
873         * src/maemo/modest-account-settings-dialog.c:
874         * src/maemo/modest-connection-specific-smtp-edit-window.c:
875         * src/widgets/Makefile.am: Moved these widgets from maemo/easysetup into 
876         widgets/ because they are used outside of easysetup too. After checking in, 
877         svn will allow me to rename them too.
878
879 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
880
881         * src/gnome/modest-msg-edit-window.c:
882         (modest_msg_edit_window_set_priority_flags): Added an empty implementation to fix a 
883         linker error, to fix the build on the GNOME platform.
884         modest_msg_edit_window_set_zoom(), modest_msg_edit_window_get_zoom(), 
885         modest_msg_edit_window_zoom_plus(), modest_msg_edit_window_zoom_minus():
886         ifdefed out to avoid a warning.
887
888 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
889
890         * src/widgets/modest-header-view.c: (on_focus_in): Use GTK_CHECK_VERSION to #ifdef around the 
891         use of gtk_tree_view_get_visible_range(), to fix the build on Mameo. This code probably needs 
892         some alternative for GTK+ 2.6.
893
894 2007-04-19  Murray Cumming  <murrayc@murrayc.com>
895
896         * src/maemo/modest-address-book.c: Added include to avoid a warning.
897
898         * po/en_GB.po: Added missing mcen_bd_emailsetup_close string, 
899         specified for EmailAccountsDialog in UI spec.
900         
901         * src/maemo/easysetup/modest-easysetup-wizard.c:
902         * src/maemo/easysetup/modest-easysetup-wizard.h:
903         * src/maemo/modest-account-settings-dialog.c:
904         * src/maemo/modest-account-settings-dialog.h:
905         Reuse a member window widget for the connection-specific SMTP server accounts, 
906         so we can tell it to create/save the accounts only if we actually save changes.
907
908         * src/maemo/modest-connection-specific-smtp-edit-window.h:      
909         * src/maemo/modest-connection-specific-smtp-edit-window.c:
910         (modest_connection_specific_smtp_edit_window_get_settings): 
911         Return a struct instance for temporarily remembering the entered data.
912
913         * src/maemo/modest-connection-specific-smtp-window.h:
914         * src/maemo/modest-connection-specific-smtp-window.c:
915         (modest_connection_specific_smtp_window_finalize),
916         (modest_connection_specific_smtp_window_fill_with_connections),
917         (on_button_edit),
918         (modest_connection_specific_smtp_window_save_server_accounts),
919         (update_model_server_names): Do not actually save data until asked, 
920         when the caller calls modest_connection_specific_smtp_window_save_server_accounts().
921         
922         (on_selection_changed),
923         (modest_connection_specific_smtp_window_init): Disable the edit 
924         button when nothing is selected.
925         
926         * src/modest-account-mgr-helpers.c:
927         * src/modest-account-mgr-helpers.h: 
928         Put modest_account_mgr_free_server_account_data() in the header now that I use the struct 
929         elsewhere.
930
931 2007-04-19  Murray Cumming  <murrayc@murrayc.com>
932
933         * src/modest-account-mgr-helpers.h:
934         * src/modest-account-mgr-helpers.c:
935         (modest_account_mgr_get_unused_account_name),
936         (modest_account_mgr_get_unused_account_display_name): Added these 
937         utility functions, to avoid code duplication.
938
939         * src/maemo/easysetup/modest-easysetup-wizard.c:
940         (create_page_account_details), (create_account):
941         * src/maemo/modest-connection-specific-smtp-edit-window.c:
942         (on_combo_security_changed),
943         (modest_connection_specific_smtp_edit_window_init),
944         (modest_connection_specific_smtp_edit_window_save_settings):
945         * src/maemo/modest-connection-specific-smtp-edit-window.h:
946         * src/maemo/modest-connection-specific-smtp-window.c:
947         (modest_connection_specific_smtp_window_finalize),
948         (modest_connection_specific_smtp_window_fill_with_connections),
949         (on_button_edit), (modest_connection_specific_smtp_window_init):
950         * src/maemo/modest-connection-specific-smtp-window.h:
951         Implementing saving of connection-specific server accounts.
952         
953         But I need to refactor this so we can save the data for each 
954         possible connection-specific account and only actually create the server accounts 
955         when the easysetup finished, or the OK button is pressed on the account settings 
956         dialog.
957
958 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
959
960         * src/maemo/modest-connection-specific-smtp-edit-window.c:
961         (on_combo_security_changed): 
962         (modest_connection_specific_smtp_edit_window_init):
963         Auto-fill the port number as in the account settings.
964         
965         (modest_connection_specific_smtp_edit_window_set_connection):
966         * src/maemo/modest-connection-specific-smtp-edit-window.h:
967         * src/maemo/modest-connection-specific-smtp-window.c:
968         (fill_with_connections), (on_button_edit),
969         (modest_connection_specific_smtp_window_init): 
970         Turn the edit window into a dialog to simplify the code, and 
971         set a WM hint as in a GtkDialog, because only a popup can be on top of 
972         another window in Maemo, and popups usually have no WM decoration.
973         
974         * src/modest-defs.h:
975         * src/modest-account-mgr-helpers.c:
976         (modest_account_mgr_set_connection_specific_smtp),
977         (modest_account_mgr_remove_connection_specific_smtp),
978         (modest_account_mgr_get_connection_specific_smtp):
979         * src/modest-account-mgr-helpers.h: Some functions to write the 
980         connection-specific SMTP server information. Not yet used.
981
982         
983         * src/widgets/modest-folder-view.c: (text_cell_data):
984         Fix a warning about an uninitialized variable.
985         (on_configuration_key_changed): Put an #ifdef around the use 
986         of gtk_tree_view_column_queue_resize() because it is new in GTK+ 2.10.
987
988 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
989
990         * src/maemo/modest-account-settings-dialog.h:
991         * src/maemo/modest-account-settings-dialog.c:
992         Added connect_for_modified() utility function to mark the new modified boolean.
993         
994         (create_page_account_details), (create_page_user_details),
995         (create_page_incoming), (create_page_outgoing), (on_response),
996         (modest_account_settings_dialog_init),
997         (modest_account_settings_dialog_set_account_name):
998         Only warn about unsaved changes when there are actually unsaved changes.
999         
1000         * src/modest-account-mgr-helpers.c:
1001         * src/modest-account-mgr-helpers.h: Put the port, secure-auth, and security information 
1002         into the ModestServerAccountData struct. I do not use it yet, but someone might expect 
1003         to get the data from there in future.
1004
1005 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1006
1007         * src/modest-defs.h:
1008
1009         * src/modest-account-mgr-helpers.h:
1010         * src/modest-account-mgr-helpers.c:
1011         Store the security account setting in a single conf key instead of using 
1012         the options list, so that the list is left for just the to-be-removed camel hack, 
1013         and because gconf_client_set_list() is failing for some reason.
1014
1015         * src/modest-account-mgr.c:
1016         (modest_account_mgr_add_server_account):
1017         * src/maemo/modest-account-settings-dialog.c:
1018         (modest_account_settings_dialog_set_account_name),
1019         (save_configuration): Use the renamed functions.
1020
1021
1022 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1023
1024         * src/widgets/Makefile.am:
1025         * src/widgets/modest-limit-retrieve-combo-box.c:
1026         * src/widgets/modest-limit-retrieve-combo-box.h:
1027         * src/widgets/modest-retrieve-combo-box.c:
1028         * src/widgets/modest-retrieve-combo-box.h: Added new widgets for use in 
1029         the account settings dialog.
1030         
1031         * src/modest-defs.h:
1032         * src/modest-account-mgr-helpers.h:
1033         * src/modest-account-mgr-helpers.c:
1034         (modest_server_account_get_option_secure_auth),
1035         (modest_server_account_set_option_secure_auth):
1036         * src/modest-account-mgr.c:
1037         (modest_account_mgr_add_server_account):
1038         Use the existing AUTH_MECH conf key for the secure-auth setting, 
1039         instead of putting it in the list options, because this was actually used already.
1040         
1041         * src/maemo/modest-account-settings-dialog.c:
1042         (create_page_account_details),
1043         (modest_account_settings_dialog_set_account_name),
1044         (save_configuration):
1045         * src/maemo/modest-account-settings-dialog.h:
1046         Add the retrieve and retrieve-limit combo boxes, as per the UI spec.
1047         Hide the leave-messages checkbox for non-POP accounts, as per the UI spec.
1048
1049 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1050
1051         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h:
1052         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c:
1053         Added easysetup_serversecurity_combo_box_get_active_serversecurity_port()
1054
1055         * src/modest-defs.h:
1056         * src/maemo/modest-account-settings-dialog.c:
1057         (create_page_incoming), (on_combo_outgoing_security_changed),
1058         (on_combo_incoming_security_changed), (create_page_outgoing),
1059         (modest_account_settings_dialog_set_account_name),
1060         (save_configuration): Load/Save the port number, and change it when the 
1061         security combo changes, to suitable defaults.
1062
1063 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1064
1065         * src/modest-account-mgr.c:
1066         (modest_account_mgr_add_server_account): Set the security and secure-auth 
1067         options, and add a comment saying that the other camel-specific options should be 
1068         removed in future.
1069
1070 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1071
1072         * src/maemo/modest-account-settings-dialog.c: (check_data): Always return something, 
1073         found by valgrind.
1074         * src/modest-tny-account-store.c: (account_list_free),
1075         (on_account_changed): Add a TODO comment about a valgrind error, caused by using 
1076         cursor->data after unreffing it. But there is some strange stuff there so it might not be 
1077         easy to fix.
1078
1079 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1080
1081         * src/modest-protocol-info.c:
1082         * src/modest-protocol-info.h: Added a MODEST_PROTOCOL_AUTH_CRAMMD5 enum value, because it 
1083         is required by our UI spec. Maybe something in our implementation will use this eventually.
1084         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c: 
1085         (easysetup_secureauth_combo_box_fill): Use the CRAM MD5 enum value 
1086         instead of the previous 0 placeholder.
1087         
1088         * src/modest-defs.h: Added gconf list pair key names and value strings for the security and 
1089         secure-auth settings.
1090         * src/modest-account-mgr-helpers.h:
1091         * src/modest-account-mgr-helpers.c:
1092         (modest_server_account_data_get_option_secure_auth),
1093         (modest_server_account_set_option_secure_auth),
1094         (modest_server_account_data_get_option_security),
1095         (modest_server_account_set_option_security): Added this API for getting and setting the security 
1096         and secure-auth settings.
1097         
1098         * src/maemo/modest-account-settings-dialog.h:
1099         * src/maemo/modest-account-settings-dialog.c:
1100         (modest_account_settings_dialog_finalize), (check_data),
1101         (on_response): Store the original title as well as the name, to avoid unnececessary warnings 
1102         about changing titles.
1103         (modest_account_settings_dialog_set_account_name): Load the security and secure-auth settings.
1104         (save_configuration): Save the security and secure-auth settings.
1105
1106         * src/modest-conf.c: (modest_conf_set_list): Get the list after setting it, to show that this 
1107         is failing sometimes (though reporting success). I fear I may need to debug gconf to fix this.
1108
1109 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1110
1111         * src/modest-defs.h: 
1112         * src/modest-account-mgr.c:
1113         (modest_account_mgr_add_server_account):
1114         Added and used defines for the options key and value pair strings, 
1115         that are used so far, though they do not seem to correspond to anything in our 
1116         UI specs or ModestProtocol enum.
1117         
1118         * src/modest-account-mgr-helpers.h:
1119         * src/modest-account-mgr-helpers.c:
1120         (compare_option_strings_for_name),
1121         (modest_server_account_data_get_option_value),
1122         (modest_server_account_data_get_option_bool),
1123         (modest_account_mgr_get_server_account_option):
1124         Added helper functions for parsing the options GSList.
1125
1126 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1127
1128         * src/modest-account-mgr-helpers.c: Clarified the documentation to say that the initial 
1129         display name is based on the supplied account name.
1130         * src/modest-account-mgr.c:
1131         * src/modest-account-mgr.h: Added modest_account_mgr_account_with_display_name_exists(), 
1132         with an inefficient, but good-enough, implementation.
1133         
1134         * src/maemo/easysetup/modest-easysetup-wizard.c:
1135         (create_page_account_details), (on_before_next), (create_account): 
1136         Check for existing display names rather than (non-user-visible) account names, and just 
1137         create and set a unique account name at the end.
1138         
1139         * src/maemo/modest-account-settings-dialog.c:
1140         (modest_account_settings_dialog_init),
1141         (modest_account_settings_dialog_set_account_name),
1142         (create_page_incoming): Show the display name, instead of the account name.
1143         (on_response): Do some (not all) extra checks, as in the UI spec.
1144         (save_configuration): Save the display name if it was changed.
1145
1146 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1147
1148         * po/en_GB.po: Added needed logical ID and translation.
1149         * src/widgets/modest-account-view.c: (on_account_default_toggled),
1150         (init_view): Made the is-default column clicking work.
1151
1152 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1153
1154         * configure.ac:
1155         * src/maemo/easysetup/Makefile.am:
1156         * src/maemo/easysetup/modest-easysetup-wizard.c:
1157         (modest_easysetup_wizard_dialog_init):
1158         * src/maemo/easysetup/provider-data-test.keyfile:
1159         * src/maemo/easysetup/provider-data.keyfile: 
1160         Moved the provider data file to the new modest-providers-data package and used it from there.
1161
1162 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1163
1164         * src/modest-local-folder-info.c:
1165         (modest_local_folder_info_get_type_display_name): Use _() to actually get the translated string. 
1166         N_() was already used on the static strings, but this just marks it for translation without 
1167         using the translation.
1168
1169 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1170
1171         * src/maemo/modest-account-settings-dialog.c:
1172         (create_page_incoming),
1173         (modest_account_settings_dialog_set_account_name): 
1174         Added comments about the need for new API in ModestAccountMgr to handle the authentication 
1175         and secure-connection stuff that is stored in the options GSList* with hard-coded names.
1176         I will do this if nobody else gets there first.
1177
1178 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1179
1180         * src/maemo/modest-account-settings-dialog.c: (save_configuration): 
1181         Saved much of the incoming and outgoing data too, though I cannot yet see how to 
1182         save the security stuff.
1183
1184 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1185
1186         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): 
1187         Set the email address and user fullname, which I now see must be 
1188         done separately.
1189         
1190         * src/maemo/modest-account-settings-dialog.h:
1191         * src/maemo/modest-account-settings-dialog.c:
1192          (on_response),
1193         (modest_account_settings_dialog_set_account_name): Show the email address, fullname, 
1194         leave-on-server and authentication.
1195         (save_configuration): Save most of the non-server-account specific stuff, but I don't see 
1196         how to do the rest.
1197
1198 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1199
1200
1201         * src/maemo/modest-account-settings-dialog.c:
1202         * src/maemo/modest-account-settings-dialog.h:
1203         Most (but not all) of the widgets are now present as specified by the UI spec.
1204         No changes are yet saved, and some details are not properly shown yet.
1205         
1206         * po/en_GB.po: Added translations for logical IDs used by the Account Settings dialog.
1207
1208 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1209
1210         * src/maemo/Makefile.am:
1211         * src/maemo/modest-account-settings-dialog.c:
1212         * src/maemo/modest-account-settings-dialog.h: The beginnings of the dialog to edit 
1213         an existing account. Doesn't do much yet.
1214         
1215         * src/maemo/modest-account-view-window.c: (on_edit_button_clicked): 
1216         Open the accounts settings dialog when Edit is clicked.
1217
1218 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1219
1220         * src/maemo/easysetup/Makefile.am:
1221         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
1222         (load_from_file): 
1223         * src/maemo/easysetup/modest-easysetup-wizard.c:
1224         (modest_easysetup_wizard_dialog_init):
1225         Try to get the source directory from the build system,
1226         instead of hard-coding "./" into the source code, when opening our local 
1227         copies of the configuration files.
1228         But this still fails when opening the wizard from the Accounts window, 
1229         maybe because the working directory seems to change at runtime.
1230         So the wizard will fail the second time unless you copy the files into their 
1231         proper locations - see the stdout warnings for the paths.
1232         
1233         (create_page_account_details),(on_before_next): 
1234         Check for existing non-server accounts instead of server accounts, 
1235         so the default account name is useful again, and to prevent trying to 
1236         recreate accounts.
1237         
1238         * src/maemo/modest-account-view-window.c: (on_new_button_clicked): 
1239         Show the wizard when New is clicked.
1240         
1241         * src/widgets/modest-account-view.c: (on_account_default_toggled),
1242         (init_view): Show the column headers, and show the columns that are 
1243         specified in the UI specs. However, something in Maemo's GTK+ prevents 
1244         us from handling the GtkCellRendererToggle::toggled signal, so we cannot 
1245         change the default account. This is despite unsetting the special properties.
1246
1247 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1248
1249         * docs/reference/modest-design.sgml: Corrected spelling mistake.
1250         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): 
1251         Create the 2 server accounts and then create the account, using the names of the 2 server accounts.
1252         This seems to be how this should be used. If it is, then I will update the AccountMgr documentation 
1253         to make that clearer.
1254         * src/modest-account-mgr.h: Corrected the modest_account_mgr_search_server_account() documentation.
1255
1256 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1257
1258         * src/maemo/modest-account-view-window.c:
1259         (modest_account_view_window_init),
1260         (modest_account_view_window_new):
1261         Use the same buttons as specified in the 
1262         UI spec. Add the widgets to the vbox and action_area instead of just assigning them to 
1263         the existing widgets, which never had a chance of working.
1264         Put the ModestAccountView treeview in a scrolled window.
1265         Do not repeat the initialization in both _init() and _new().
1266         
1267         * src/widgets/modest-account-view.c: (update_account_view):
1268         Add a warning about modest_account_mgr_account_names() returning NULL, which is why 
1269         this widget and window shows no accounts.
1270         
1271         * po/en_GB.po: Added translations needed for the dialog button logical IDs.
1272         
1273 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1274
1275         * src/maemo/easysetup/modest-easysetup-wizard.c:
1276         (set_default_custom_servernames): Avoid a dereference of a destroyed widget.
1277         (create_account): Do a sanity check, showing that modest_account_mgr_account_names() 
1278         returns NULL after modest_account_mgr_add_server_account() returned TRUE, 
1279         which seems wrong.
1280         
1281         * src/maemo/modest-main-window-ui.h: Specify the callback for the Accounts menu item.
1282         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts): Open the wizard if no 
1283         accounts exist yet, as in the UI spec.
1284         
1285         * src/modest-account-mgr.h: Add TODO comment about a possible memory leak.
1286
1287 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1288
1289         * src/maemo/Makefile.am:
1290         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1291         * src/maemo/modest-connection-specific-smtp-edit-window.h: 
1292         New window for editing connection-specific smtp details.
1293         Not fully implemented.
1294
1295         * src/maemo/modest-connection-specific-smtp-window.c:
1296         (modest_connection_specific_smtp_window_finalize) :
1297         unref the tree model.
1298         (on_button_edit): Show the edit window.
1299
1300 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1301
1302         * src/Makefile.am: Change sequence of sub-libraries, which fixed an undefined symbol 
1303         error for me.
1304         
1305         * src/maemo/Makefile.am:
1306         * src/maemo/modest-connection-specific-smtp-window.c:
1307         * src/maemo/modest-connection-specific-smtp-window.h:
1308         New window for showing the list of connections, for connection-specific 
1309         SMTP servers. Not fully implemented, because it needs an enhancement to TnyMaemoDevice.
1310         * src/maemo/easysetup/modest-easysetup-wizard.c:
1311         (create_page_custom_outgoing): Show the new window when the button is clicked.
1312
1313 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1314
1315         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
1316         * src/maemo/easysetup/modest-presets.c: (modest_presets_new):
1317         * src/maemo/modest-msg-edit-window.c:
1318         (modest_msg_edit_window_insert_image):
1319         * src/modest-conf.c: (modest_conf_key_escape):
1320         * src/modest-mail-operation.c:
1321         (modest_mail_operation_send_new_mail):
1322         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts),
1323         (modest_ui_actions_on_new_account):
1324         * src/widgets/modest-attachment-view.c: (update_filename_request):
1325         * src/widgets/modest-mail-header-view.c: 
1326         Corrected warnings that were breaking the build, by commenting out unused variables, 
1327         and a function, and by including a header.
1328
1329 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1330
1331         * configure.ac: Define MODEST_PLATFORM_MAEMO and MODEST_PLATFORM_GNOME in config.h, 
1332         so we can #ifdef around platform-specific code when necessary.
1333         * src/modest-ui-actions.c: (modest_ui_actions_on_new_account): Use MODEST_PLATFORM_MAEMO 
1334         to allow this to build for the GNOME platform too.
1335
1336 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1337
1338         * src/maemo/easysetup/modest-easysetup-wizard.c:
1339         Added util_increment_name() and used it in create_page_account_details() 
1340         to make sure that the default account name is always a new name.
1341         
1342         (modest_easysetup_wizard_dialog_init), 
1343         (set_default_custom_servernames): Some minor memory management fixes.
1344
1345 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1346
1347         * Makefile.am:
1348         * configure.ac:
1349         * src/modest-runtime.c: (init_i18n): Restored the translation 
1350         infrastructure, so that GETTEXT_PACKAGE and MODEST_LOCALE_DIR 
1351         are defined in config.h, and the translations are installed.
1352         
1353         * src/maemo/easysetup/: Include config.h so that GETTEXT_PACKAGE 
1354         is defined for translation.
1355
1356 2007-04-03  Murray Cumming  <murrayc@murrayc.com>
1357
1358         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
1359         (load_from_file):
1360         * src/maemo/easysetup/modest-easysetup-wizard.c:
1361         (modest_easysetup_wizard_dialog_init):
1362         * src/maemo/easysetup/modest-presets.c: (modest_presets_new): 
1363         Use realistic paths (though they should use $prefix generically) to the 
1364         mcc_mapping and provider-data.keyfile files which might work when they 
1365         are installed by the future version of the operator-wizard package, 
1366         and then fallback to paths in our source code, with an explanatory 
1367         warning.
1368
1369 2007-04-03  Murray Cumming  <murrayc@murrayc.com>
1370
1371         * configure.ac:
1372         * src/Makefile.am:
1373         * src/maemo/Makefile.am:
1374         * src/maemo/easysetup/: Added files from the previously-exernal 
1375         osso-modest-easysetup.
1376         * src/maemo/modest-main-window-ui.h:
1377         * src/modest-ui-actions.c: 
1378         * src/modest-ui-actions.h:
1379         Added modest_ui_actions_on_new_account() as a signal handler for the 
1380         New Account menu item. It shows the easysetup wizard.
1381         * po/en_GB.po: Added additional needed logical IDs and translations.
1382         
1383 Started ChangeLog2 file, because I cannot work without a ChangeLog. murrayc.
1384 Apparently ChangeLog is not used for some vague Nokia legal reasons.
1385