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