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