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