2007-05-30 Murray Cumming <murrayc@murrayc.com>
[modest] / ChangeLog2
1 2007-05-30  Murray Cumming  <murrayc@murrayc.com>
2
3         * src/modest-defs.h: Define MODEST_MCC1_VOLUMEPATH and MODEST_MCC1_VOLUMEPATH_URI.
4         
5         * src/modest-init.h:
6         * src/modest-init.c: Made modest_init_local_folders() take a
7         path and be public so we can iniitialize maildir folders on 
8         arbitrary volumes.
9
10         * src/modest-local-folder-info.h:
11         * src/modest-local-folder-info.c:
12         (modest_local_folder_info_get_maildir_path): Add a path parameter.
13
14         * src/modest-tny-account.c:
15         (modest_tny_account_new_for_local_folders): Take a path parameter, though NULL 
16         still means the standard local-folders path on the local volume.
17         
18         * src/modest-tny-account-store.c:
19         (modest_tny_account_store_instance_init): Connect to GnomeVfsVolumeMonitor 
20         signal so we can detect mount/unmount of the MMC1 card, and do an update of 
21         all accounts when that happens.
22         (get_server_accounts): If the MMC1 card is mounted, create a store account for 
23         this too, so it shows up in the treeview.
24
25 2007-05-28  Murray Cumming  <murrayc@murrayc.com>
26
27         * src/maemo/modest-maemo-global-settings-dialog.c:
28         (current_connection):
29         * src/widgets/modest-global-settings-dialog.c:
30         (current_connection_default):
31         Use the enum values instead of 0, 1 and -1,
32         to make the code clearer.
33         
34         * src/modest-account-mgr-helpers.c:
35         (modest_account_mgr_get_connection_specific_smtp): Make this code 
36         more robust.
37         
38         * src/modest-runtime.h:
39         * src/modest-runtime.c:
40         Added modest_runtime_remove_all_send_queues().
41         * src/maemo/modest-main-window.c:
42         (on_account_store_connecting_finished): Recreate the send queues, 
43         using the appropriate transport accounts for this new connection.
44         Some futher adapting might be needed if the old send queues are not 
45         automatically stopped at this point.
46
47         * src/modest-tny-account-store.c: (get_server_accounts):
48         Create the connection-specific transport accounts, so that they can 
49         be found later by their ID.
50         
51         * src/modest-tny-account.h:
52         * src/modest-tny-account.c:
53         Added modest_tny_account_new_from_server_account_name().
54         modest_tny_account_new_from_server_account(): Do not create the 
55         send queues here, because they will be 
56         recreated anyway when the connection changes for the first time.
57
58 2007-05-28  Murray Cumming  <murrayc@murrayc.com>
59
60         * src/modest-local-folder-info.h:
61         * src/modest-local-folder-info.c:
62         (modest_per_account_local_outbox_folder_info_get_maildir_path),
63         (modest_per_account_local_outbox_folder_info_get_maildir_path_to_ou
64         tbox_folder): Take a modest account name instead of a server TnyAccount,
65         so we can have per-modest-account rather than per-transport-account 
66         outboxes.
67         We must make sure that we change or recreate the exisitng send queues 
68         when the connection changes for connection-specific transport accounts.
69         
70         * src/modest-tny-account-store.c:
71         (create_per_account_local_outbox_folders): Create outboxed per modest 
72         account, not per transport account.
73         
74         * src/modest-tny-account.h:
75         * src/modest-tny-account.c:
76         (modest_tny_account_get_special_folder): For outboxes, get the 
77         parent modest account name. The account is ignored for other folders.
78         (modest_tny_account_new_for_per_account_local_outbox_folder): Take a 
79         modest account name rather than a server TnyAccount.
80
81 2007-05-25  Murray Cumming  <murrayc@murrayc.com>
82
83         * src/modest-tny-account.c:
84         (modest_tny_account_new_from_server_account): 
85         Call modest_runtime_get_send_queue() immediately after creating transport 
86         accounts, so that they start trying to send email from the outbox as soon 
87         as possible at startup. This is probably what we want.
88         
89         * src/modest-mail-operation.c: (update_account_thread):
90         * src/modest-runtime.c: (modest_runtime_get_send_queue):
91         * src/modest-tny-send-queue.c: (modest_tny_send_queue_try_to_send):
92         * src/modest-tny-send-queue.h:
93         * src/modest-ui-actions.c: (modest_ui_actions_do_send_receive),
94         (modest_ui_actions_on_send):
95         Added comments about how sending works, though it needs some more work.
96
97 2007-05-25  Murray Cumming  <murrayc@murrayc.com>
98
99         * src/modest-tny-account.c:
100         (modest_tny_account_get_special_folder): Add TODO because this fails when 
101         the network is busy.
102         (modest_tny_folder_store_get_local_size):  Fix an incorrect type check.
103         * src/modest-ui-actions.c: (modest_ui_actions_on_smtp_servers): 
104         Do not try to show this window when there is no active account. The UI 
105         specs does not tell us what to do in this case.
106
107 2007-05-24  Murray Cumming  <murrayc@murrayc.com>
108
109         * Makefile.am:
110         * po/POTFILES.in:
111         * src/maemo/Makefile.am:
112         * src/widgets/Makefile.am: Some dist fixes.
113
114 2007-05-24  Murray Cumming  <murrayc@murrayc.com>
115
116         * src/maemo/modest-connection-specific-smtp-window.c:
117         (on_button_edit): Make the code clearer, to prevent a double free.
118
119 2007-05-24   Murray Cumming  <murrayc@murrayc.com>
120
121         * src/maemo/modest-account-settings-dialog.c:
122         (modest_account_settings_dialog_set_account_name),
123         Check the connection-specific smtp servers checkbox if there are any.
124         
125         * src/maemo/modest-connection-specific-smtp-edit-window.c:
126         (modest_connection_specific_smtp_edit_window_init): 
127         Start with a suitable port number.
128         
129         * src/modest-account-mgr-helpers.h:
130         * src/modest-account-mgr-helpers.c: Added 
131         modest_account_mgr_get_has_connection_specific_smtp().
132         
133         (modest_account_mgr_set_connection_specific_smtp),
134         (modest_account_mgr_remove_connection_specific_smtp),
135         (modest_account_mgr_get_has_connection_specific_smtp),
136         (modest_account_mgr_get_connection_specific_smtp): Set/Get the list of 
137         connection-specific smtp server accounts in the account, rather than 
138         the server account conf dir.
139         
140         This fixes bug projects.maemo.org bug NB#58263 .
141
142         * src/modest-tny-account-store.c:
143         (create_per_account_local_outbox_folders): Do not call get_server_accounts() 
144         if there are no server accounts yet, to prevent an infinite loop when there 
145         are no accounts. Document that one must be called before the other.
146
147 2007-05-24  Murray Cumming  <murrayc@murrayc.com>
148
149         * src/modest-account-mgr-helpers.c:
150         (modest_account_mgr_get_default_account): Make sure that at least 
151         one account is always the default, if there are any enabled accounts. 
152         This is just a sanity check that shouldn't be necessary.
153         
154         * src/modest-account-mgr-priv.c:
155         (_modest_account_mgr_account_from_key): Unescape the conf key to 
156         get the real account name. For instance, this is an issue if a space 
157         was in the account name, which can happen because the account name 
158         is generated from the display name.
159         (_modest_account_mgr_get_account_keyname): Always escape the 
160         account name.
161         * src/modest-account-mgr.c: (modest_account_mgr_account_names): 
162         Unescape the conf keys to get the real account names.
163         
164         For instance, previously the is-default radio button in the accounts 
165         list was not checked for any accounts at first. This fixes that,
166         and might fix several similar bugs.
167
168 2007-05-23  Murray Cumming  <murrayc@murrayc.com>
169
170         * src/modest-ui-actions.c: (set_active_account_from_tny_account):
171         Removed some debug printfs.
172
173 2007-05-23  Murray Cumming  <murrayc@murrayc.com>
174
175         Modest on-disk outbox directories are now here, for instance:
176         $HOME/.modest/outboxes/<account-id-1>/outbox
177         $HOME/.modest/outboxes/<account-id-2>/outbox
178         instead of here:
179         $HOME/.modest/local-folders/outbox
180         so we can have a separate outbox for each account.
181         But they are shown as one outbox in the GtkTreeView, by using a 
182         TnyMergeFolder in a ModestTnySimpleFolderStore.
183         
184         * src/Makefile.am:
185         * src/modest-tny-simple-folder-store.c:
186         * src/modest-tny-simple-folder-store.h:
187         Added ModestTnySimpleFolderStore, used to contain folders from 
188         other folder stores, such as other accounts.
189         
190         * src/modest-tny-outbox-account.h:
191         * src/modest-tny-outbox-account.c:
192         Added ModestTnyOutboxAccount, derived from TnyCamelStoreAccount, 
193         used for the per-account local outbox folders.
194         
195         * src/modest-defs.h: Rename MODEST_LOCAL_FOLDERS_ACCOUNT_ID to 
196         MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID, to make it clearer that we 
197         only use this (internally) now for the non-outbox local folders.
198
199         * src/modest-init.h:
200         * src/modest-init.c: Added modest_init_one_local_folder(), for 
201         setting up the directory structure for each local folder.
202
203         * src/modest-local-folder-info.c:
204         (modest_per_account_local_outbox_folder_info_get_maildir_path),
205         (modest_per_account_local_outbox_folder_info_get_maildir_path_to_ou
206         tbox_folder):
207         * src/modest-local-folder-info.h:
208         * src/modest-tny-account-store.c: (on_account_removed),
209         (on_account_changed), (create_per_account_local_outbox_folders),
210         (get_server_accounts), (modest_tny_account_store_get_accounts),
211         (modest_tny_account_store_get_tny_account_by_account),
212         (modest_tny_folder_store_is_virtual_local_folders):
213
214         * src/modest-tny-account.h:
215         * src/modest-tny-account.c:
216         Added modest_tny_account_new_for_per_account_local_outbox_folder(), 
217         to create an on-disk per-account local outbox folder for each 
218         transport account.
219         (create_per_account_local_outbox_folders): Create a local outbox folder 
220         for each transport account.
221         (modest_tny_account_new_for_local_folders): Do not create an outbox folder 
222         for all local folders.
223         
224         Added modest_tny_account_get/set_parent_modest_account_name_for_server_account() 
225         instead of using g_object_get/set() directly. It is clearer.
226         
227         (modest_tny_folder_store_get_message_count),
228         (modest_tny_folder_store_get_local_size
229         (modest_tny_folder_store_get_folder_count): Renamed from modest_tny_account*, 
230         because we now use these with non-acount folder stores.
231         
232         (modest_tny_account_get_special_folder),
233         (modest_tny_account_new_from_server_account),
234         (modest_tny_account_new_from_account):
235         (recurse_folders): Adjust to the new outbox system.
236         
237         * src/modest-tny-folder.h:
238         * src/modest-tny-folder.c: 
239         (modest_tny_folder_is_local_folder),
240         (modest_tny_folder_get_local_folder_type),
241         (modest_tny_folder_is_outbox_for_account): Adjust for the new outbox system.
242         
243         * src/widgets/modest-main-window.h:
244         * src/maemo/modest-main-window.c: (create_details_widget),
245         (modest_main_window_set_contents_style): Show details for any folder store, 
246         not just accounts.
247         
248         (modest_tny_folder_get_rules): 
249         Remove the const. C does not support constness enough for this.
250         
251         * src/modest-ui-actions.c:
252         update_model(): Use a ModestTnySimpleListStore and a TnyMergeFolder to 
253         make all outboxes appear as one, in the usual local-folders tree node.
254         
255         (set_active_account_from_tny_account),
256         (modest_ui_actions_on_folder_selection_changed):
257         * src/widgets/modest-folder-view.c: (text_cell_data),
258         (icon_cell_data), (filter_row),
259         (add_account_folders_to_merged_folder),
260         (add_account_folders_to_simple_folder_store), (),
261         (get_cmp_rows_type_pos), (cmp_rows),
262         (modest_folder_view_set_account_id_of_visible_server_account):
263         Adjust to the new outbox system, using generic folder stores and folders 
264         in the GtkTreeModel.
265
266 2007-05-23  Christian Kellner  <ckellner@openismus.com>
267
268         * src/modest-mail-operation.c:
269         (modest_mail_operation_update_account):
270         Use info->max_size instead of unintialized local var [small
271         build fix]. (Added TODO to review that change since I don't
272         know the code)
273
274 2007-05-23  Marcus Bauer  <marcusb@openismus.com>
275
276         * libmodest-dbus-client/libmodest-dbus-client.c:
277         (libmodest_dbus_client_compose_mail): function added
278         * src/dbus_api/modest-dbus-api.h:
279         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_compose_mail),
280         (on_compose_mail): Implementation of the SendAsMail functionality
281
282 2007-05-22 Murray Cumming  <murrayc@murrayc.com>
283
284         * src/modest-account-mgr.c:
285         (modest_account_mgr_add_server_account): Set the secure-connection 
286         conf key for transport accounts as well as store accounts. I don't know 
287         why the if was there. For instance, this makes sure that we use SSL 
288         for the gmail preset from the easysetup wizard.
289
290 2007-05-22 Murray Cumming  <murrayc@murrayc.com>
291
292         * src/gnome/modest-main-window.c:
293         (on_account_store_connecting_finished), (connect_signals):
294         * src/maemo/modest-main-window.c:
295         (on_account_store_connecting_finished), (connect_signals),
296         (modest_main_window_new):
297         Handle TnyAccountStore::connecting-finished instead of 
298         TnyDevice::connection-changed, because we cannot actually perform 
299         operations on accounts until TnyAccountStore has itself responded to 
300         the TnyDevice::connection-changed signal. This prevents a GError from 
301         tinymail.
302         Do not try to update at startup, because we (at least on scratchbox) 
303         already do an update at startup when the device goes online. 
304         This prevents a GError from tinymail.
305         * src/modest-ui-actions.c: (modest_ui_actions_do_send_receive): 
306         Added TODO about stopping simultaneous operations.
307
308 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
309
310         * src/modest-account-mgr.c: (modest_account_mgr_add_account):
311         * src/modest-mail-operation-queue.c:
312         (modest_mail_operation_queue_remove):
313         * src/modest-tny-account-store.c: When GErrors happen, give more clues 
314         about where they happened.
315
316 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
317
318         * src/modest-ui-actions.c:
319         (modest_ui_actions_on_password_requested): Make sure that the remember 
320         output parameter is always TRUE.
321
322 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
323
324         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
325         Show a OK/Cancel dialog if the error is a question, though we still do not 
326         know anything more about what we are asking the user.
327         * src/widgets/modest-folder-view.c: (on_drag_data_received):
328         Fix an uninitialized variable (helper). This is a logic error, however.
329
330 2007-05-21  Christian Kellner  <ckellner@openismus.com>
331         
332         * src/modest-search.h:
333         Correct bit shifting in the ModestSearchFlags enum.
334
335 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
336
337         * src/modest-tny-account.c:
338         (modest_tny_account_new_from_server_account): Do not use the lsub and 
339         check-all hard-coded IMAP options when using POP.
340
341 2007-05-21  Murray Cumming  <murrayc@murrayc.com>
342
343         * src/modest-tny-account.c:
344         (modest_tny_account_new_from_server_account): 
345         Use NULL for the secure-auth method for POP when Password auth has been 
346         specified by the user, as we already do for IMAP. "auth=Login" causes 
347         an error from camel or the server.
348
349 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
350
351         * src/maemo/modest-account-settings-dialog.c:
352         (create_page_account_details),
353         (modest_account_settings_dialog_set_account_name):
354         * src/maemo/modest-account-settings-dialog.h: Hide the whole caption 
355         for the leave-on-server checkbox, rathr than just the checkbox, when 
356         the protocol is not POP.
357
358 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
359
360         * src/widgets/modest-account-view.c:
361         * src/widgets/modest-account-view.h:
362         Added modest_account_view_select_account() which will be useful later 
363         to asynchronously re-select the edited account.
364
365 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
366
367         * src/maemo/modest-account-settings-dialog.c:
368         (modest_account_settings_dialog_set_account_name): 
369         Automatically choose the port numbers based on the secure authentication 
370         methods, if they have not been chosen before.
371         This fixes projects.maemo.org bug NB#56273 .
372
373 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
374
375         * src/maemo/modest-main-window-ui.h:
376         * src/modest-ui-actions.c:
377         * src/modest-ui-actions.h:
378         Connect the Tools/SMTP Servers menu item to 
379         modest_ui_actions_on_smtp_servers(), which shows the connection-specific 
380         SMTP servers dialog, as in the UI specification and saves changes when it 
381         is closed. This fixed  projects.maemo.org bug NB#56305 .
382
383 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
384
385         * src/maemo/modest-connection-specific-smtp-window.c:
386         (modest_connection_specific_smtp_window_init):
387         Use gtk_window_set_default_size() to make this window big enough, so 
388         we see more of the GtkTreeView. This fixes projects.maemo.org bug NB#55497 .
389
390 2007-05-17  Murray Cumming  <murrayc@murrayc.com>
391
392         * src/maemo/modest-connection-specific-smtp-edit-window.h:
393         * src/maemo/modest-connection-specific-smtp-edit-window.c:
394         (modest_connection_specific_smtp_edit_window_init),
395         Do not try to connect to a combobox signal before the combobox exists.
396         This fixes the cras in projects.maemo.org bug NB#56288 .
397         (modest_connection_specific_smtp_edit_window_get_settings):
398         Remove the server_account_name parameter which was being checked for NULL 
399         though it was not used.
400
401         * src/maemo/modest-connection-specific-smtp-window.c:
402         (modest_connection_specific_smtp_window_fill_with_connections),
403         (on_button_edit), (modest_connection_specific_smtp_window_init):
404         Correct the number of treemodel columns to prevent a warning.
405         Added DEBUG_WITHOUT_LIBCONIC #define, for debugging on scratchbox, where 
406         libconic does not work.
407
408 2007-05-16  Murray Cumming  <murrayc@murrayc.com>
409
410         * src/modest-tny-account.c:
411         (modest_tny_account_new_from_server_account):
412         Explicitly use ANONYMOUS secure authentication, instead of "PLAIN" for 
413         SMTP when "None" was chosen by the user. However, with my SMTP server that 
414         does not support ANONYMOUS, the emails do not leave the Outbox and I see 
415         no error dialog.
416
417 2007-05-16  Murray Cumming  <murrayc@murrayc.com>
418
419         * src/modest-pair.h: Improve the documentation for modest_combo_box_new() 
420         to explain the memory management issue with the ID in the ModestPair.
421         
422         * src/gnome/modest-account-assistant.c: (add_receiving_page),
423         (add_sending_page), (modest_account_assistant_finalize):
424         * src/gnome/modest-gnome-global-settings-dialog.c:
425         (create_updating_page), (create_composing_page):
426         * src/gnome/modest-msg-edit-window.c: (get_transports),
427         (init_window), (modest_msg_edit_window_finalize),
428         (modest_msg_edit_window_get_msg_data):
429         * src/gnome/modest-store-widget.c: (imap_pop_configuration):
430         * src/gnome/modest-transport-widget.c:
431         (modest_transport_widget_finalize), (smtp_configuration):
432         * src/maemo/modest-maemo-global-settings-dialog.c:
433         (create_updating_page), (create_composing_page):
434         * src/maemo/modest-msg-edit-window.c: (get_transports),
435         (init_window), (modest_msg_edit_window_finalize),
436         (modest_msg_edit_window_get_msg_data),
437         (modest_msg_edit_window_free_msg_data):
438         * src/maemo/modest-store-widget.c: (imap_pop_configuration),
439         (modest_store_widget_finalize):
440         * src/maemo/modest-transport-widget.c:
441         (modest_transport_widget_finalize), (smtp_configuration):
442         * src/modest-main.c: (send_mail):
443         * src/widgets/modest-combo-box.h:
444         * src/widgets/modest-global-settings-dialog-priv.h:
445         * src/widgets/modest-global-settings-dialog.c:
446         (modest_global_settings_dialog_finalize):
447         * src/widgets/modest-msg-edit-window.h:
448         Whenever using modest_combo_box_new(), keep the ModestPairList alive
449         as long as the combo box, to prevent use of freed memory for the ID.
450
451 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
452
453         * src/modest-tny-account-store.c: (get_server_accounts): Renamed from 
454         get_accounts(), to make this clearer. Do not check for the enabled gconf
455         key, because we do not use this for server accounts (at least, not yet).
456         This allows us to send email again.
457
458 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
459
460         * src/maemo/modest-platform.c:
461         (on_modest_conf_update_interval_changed), (modest_platform_init):
462         Only respond to this particular key change. All these strcmp()s cannot be 
463         efficient.
464
465 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
466
467         * src/maemo/modest-maemo-global-settings-dialog.c:
468         (current_connection): Prevent a crash in scratchbox when 
469         ny_maemo_conic_device_get_current_iap_id() returns NULL.
470         * src/maemo/modest-platform.c:
471         (on_modest_conf_update_interval_changed), (modest_platform_init):
472         Get the update interval from gconf and reset it when the gconf key changes.
473
474 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
475
476         * src/modest-protocol-info.c:
477         * src/modest-protocol-info.h: Adde enum-specific get functions, 
478         instead of using a ModestProtocolType enum parameter.
479         
480         * src/gnome/modest-account-assistant.c:
481         * src/gnome/modest-store-widget.c:
482         * src/gnome/modest-store-widget.h:
483         * src/gnome/modest-transport-widget.c:
484         * src/gnome/modest-transport-widget.h:
485         * src/maemo/easysetup/modest-easysetup-servertype-combo-box.c:
486         * src/maemo/easysetup/modest-easysetup-servertype-combo-box.h:
487         * src/maemo/easysetup/modest-easysetup-wizard.c:
488         * src/maemo/modest-account-settings-dialog.c:
489         * src/maemo/modest-account-settings-dialog.h:
490         * src/maemo/modest-store-widget.c:
491         * src/maemo/modest-store-widget.h:
492         * src/maemo/modest-transport-widget.c:
493         * src/maemo/modest-transport-widget.h:
494         * src/modest-account-mgr-helpers.c:
495         * src/modest-account-mgr-helpers.h:
496         * src/modest-account-mgr.c:
497         * src/modest-account-mgr.h:
498         * src/modest-tny-account.c:
499         * src/modest-tny-folder.c: 
500         * src/widgets/modest-account-view.c:
501         * src/widgets/modest-retrieve-combo-box.c:
502         * src/widgets/modest-retrieve-combo-box.h:
503         * src/widgets/modest-secureauth-combo-box.c:
504         * src/widgets/modest-serversecurity-combo-box.c:
505         * src/widgets/modest-serversecurity-combo-box.h:
506         * tests/check_account-mgr.c: 
507         Use the specific functions, and use the re-renamed enum values for GNOME too.
508
509 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
510
511         * src/modest-pair.h: 
512         * src/modest-pair.c: Added modest_pair_list_find_by_first_as_string(),
513         so we can get the second based on the first.
514
515         * src/maemo/modest-account-settings-dialog.h: 
516         * src/maemo/modest-account-settings-dialog.c:
517         Added get_supported_secure_authentication_methods(), though it is mostly 
518         commented-out for now until the necessary API is committed to tinymail.
519         (modest_account_settings_dialog_set_account_name),
520         (save_configuration): Request the supported authentication methods from the 
521         server, so we can choose a working method.
522         
523         * src/modest-tny-account-store.h:
524         * src/modest-tny-account-store.c:
525         (modest_tny_account_store_get_session): Rename from 
526         tny_account_store_get_session().
527
528 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
529
530         * src/modest-protocol-info.h: Split the ModestProtocol enum 
531         into ModestProtocol, ModestSecureConnection, and ModestSecureAuthentication.
532         There was no need to have these unrelated values in one enum.
533         
534         * src/: many files: Adapted to changed enum. This makes the code a bit
535         clearer, and the compiler could catch some errors.
536
537 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
538
539         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
540         Show the detailed internal camel error message when an error happens 
541         during the configuration, so that our testers can give us more clues.
542         For instance, in projects.maemo.org bug NB#56910 .
543
544 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
545
546         * src/modest-tny-account.c:
547         (modest_tny_account_new_from_server_account): Adapt to changed tinymail API: 
548         change tny_account_set_mech() to tny_account_set_secure_auth_mech().
549
550 2007-05-14  Murray Cumming  <murrayc@murrayc.com>
551
552         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
553         * src/maemo/modest-account-settings-dialog.c:
554         (modest_account_settings_dialog_set_account_name),
555         (save_configuration): For the incoming secure authentication checkbox, 
556         use PASSWORD for unchecked, and CRAM-MD5 for checked, after I reread 
557         the UI specification. PLAIN does not seem to be supported for most IMAP 
558         servers anyway, and I am not sure what it would mean.
559         However, we probably need to discover which of the secure-authentication 
560         mechanisms are supported by the server, instead of hard-coding CRAM-MD5.
561         * src/modest-account-mgr-helpers.c:
562         (modest_account_mgr_get_server_account_data):
563
564         * src/modest-tny-account.c:
565         (modest_tny_account_new_from_server_account):
566         Use tny_account_set_mech() to set secure-authentication methods, 
567         with some special-casing for IMAP, based on my observations of how 
568         evolution behaves.
569         
570         * src/modest-account-mgr-helpers.h:
571         * src/modest-account-mgr.c:
572         * src/modest-defs.h: Comment that the URI is only used for local folders.
573
574 2007-05-11  Murray Cumming  <murrayc@murrayc.com>
575
576         * src/maemo/modest-main-window.c: (on_account_update): Make the gchar* 
577         parameter const, just to be neat.
578         * src/modest-text-utils.c: (modest_text_utils_inline):
579         End g_strconcat() with NULL, as its documentation says. This is almost 
580         certainly the cause of my crash at startup on the device. Interestingly, 
581         valgrind doesn't tell us about these errors.
582
583 2007-05-11  Murray Cumming  <murrayc@murrayc.com>
584
585         * scripts/build-packages: Added more precise comments about how to use 
586         this script, though I still get this error:
587         dpkg-genchanges: error: cannot open .dsc file ../tinymail_1.0-svn1938.dsc: No such file or directory
588         error building tinymail
589         
590 2007-05-11  Murray Cumming  <murrayc@murrayc.com>
591
592         * src/maemo/modest-main-window.c: (on_account_update):
593         Very slight cleanup, hoping to make it simpler to discover what causes 
594         a crash here sometimes.
595         
596         * src/modest-tny-account.c:
597         (modest_tny_account_new_from_server_account): Set the port. Added 
598         comments about the options and a TODO comment because I need to find out 
599         how to specify the secure authentication method.
600
601 2007-05-11  Marcus Bauer  <marcusb@openismus.com>
602
603         * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in:
604         changed CFlags paths form modest to libmodest
605
606 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
607
608         * src/modest-account-mgr-helpers.c:
609         (modest_account_mgr_get_server_account_data),
610         (modest_account_mgr_free_server_account_data):
611         * src/modest-account-mgr-helpers.h:
612         * src/modest-account-mgr.c:
613         (modest_account_mgr_add_server_account):
614         * src/modest-defs.h:
615         * src/modest-tny-account.c:
616         (modest_tny_account_new_from_server_account):
617         Determine the options for tny_camel_account_add_option() here, 
618         based on the settings, rather than storing them directly in gconf.
619
620 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
621
622         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
623         Show a more friendly error dialog now that we expect (from the tinymail 
624         documentation) to get the UNKNOWN_ALERT error. Add explanatory comments.
625
626 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
627
628         * src/maemo/modest-main-window.c: (on_account_update): Check that 
629         account_name is not NULL, to prevent a crash at startup that I am 
630         seeing on the N800. I do wonder why it is NULL.
631         
632         * src/maemo/easysetup/modest-easysetup-wizard.c:
633         (create_page_user_details):
634         * src/maemo/modest-account-settings-dialog.c:
635         (create_page_user_details), (create_page_outgoing):
636         * src/maemo/modest-connection-specific-smtp-edit-window.c:
637         (modest_connection_specific_smtp_edit_window_init):
638         * src/modest-ui-actions.c:
639         (modest_ui_actions_on_password_requested):
640         Use HILDON_GTK_INPUT_MODE_INVISIBLE with password entries, which 
641         might do something useful with the on-screen keyboard.
642
643 2007-05-10  Murray Cumming  <murrayc@murrayc.com>
644
645         * src/maemo/modest-main-window.c: (on_account_update):
646         Avoid adding a menu item to priv->accounts_popup if accounts_popup is 
647         NULL, to avoid lots of warnings. However, it probably should not be NULL.
648
649 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
650
651         * src/modest-tny-account-store.c: (on_account_changed): 
652         Correct the signature of this signal handler.
653
654 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
655
656         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
657         Show a HildonNote instead of a GtkDialog for Maemo.
658
659 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
660
661         * src/widgets/modest-account-view.h:
662         * src/widgets/modest-account-view.c: (on_account_changed),
663         (on_account_removed). Added a boolean flag, set/unset by 
664         modest_account_view_block_conf_updates(), 
665         modest_account_view_unblock_conf_updates() to prevent unnecessary 
666         updates, but this is not very useful because the gconf notifications are 
667         so delays (maybe only on Maemo Bora).
668         So auto-updating is turned off, and these functions do an explicit 
669         update when necessary.
670         However, something else is still doing too much work when adding/removing 
671         accounts, probably in another part of the application.
672         
673         * src/maemo/modest-account-view-window.c:
674         (on_delete_button_clicked), (on_edit_button_clicked),
675         (on_new_button_clicked): Use the new functions.
676
677 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
678
679         * src/modest-account-mgr-helpers.c:
680         (modest_account_mgr_set_first_account_as_default):
681         Sort the list of names alphabetically-by-title, so we choose the first one 
682         based on that.
683         * src/widgets/modest-account-view.c: (init_view): Sort the TreeModel 
684         alphabetically by the title.
685         
686         This fixes projects.maemo.org bug NB#56418 .
687         
688         * src/modest-account-mgr-priv.c:
689         (_modest_account_mgr_account_from_key):
690         * src/modest-account-mgr.c: (on_key_change): Initialize variables to 
691         avoid a valgrind error, and possible random behaviour.
692
693 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
694
695         * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
696         Handle the new TNY_ACCOUNT_STORE_ERROR error domain. I will update the 
697         tinymail documentation to say that this can be expected.
698         Handle the new TNY_ACCOUNT_STORE_ERROR_UNKNOWN_ALERT error code. It is not 
699         pretty, and should not happen, but I would prefer to know when it does.
700
701 2007-05-09  Murray Cumming  <murrayc@murrayc.com>
702
703         * configure.ac: When using the older hildon version, probably on Bora, 
704         require gnome-vfs-module-2.0, which is the old provider of gnome-vfs-mime.h,
705         to fix the build.
706         * src/widgets/modest-attachment-view.c:
707         (modest_attachment_view_set_part_default): Initialize variables, to fix the 
708         build.
709
710 2007-05-09  Marcus Bauer  <marcusb@openismus.com>
711
712         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message):
713         Implemented the prototype. Can be tested with
714         tests/dbus_api/test_open_message: 
715
716 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
717
718         * src/modest-tny-account-store.c:
719         (modest_tny_account_store_instance_init), (get_password):
720         * src/modest-ui-actions.c:
721         (modest_ui_actions_on_password_requested):
722         Do not store the password in gconf, because this function is called 
723         for non-remembered passwords. Actually use the cached (in the hash map) 
724         password instead of releasing it.
725         The password will now not be remembered if it is asked via the protected 
726         password dialog, as per the UI spec.
727
728 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
729
730         * src/modest-defs.h:
731         * src/modest-account-mgr-helpers.h:
732         * src/modest-account-mgr-helpers.c:
733         Added modest_server_account_get_username_has_succeeded(),
734         modest_server_account_set_username_has_succeeded().
735         (modest_server_account_set_username),
736         Reset the has-succeeded flag if the username changes.
737         
738         * src/maemo/modest-account-settings-dialog.c: (save_configuration):
739         * src/maemo/modest-connection-specific-smtp-window.c:
740         (modest_connection_specific_smtp_window_save_server_accounts):
741         Use modest_server_account_set_username() instead of using 
742         modest_conf_set_string() directly, so that the has-succeeded flag is always 
743         reset.
744         
745         * src/modest-ui-actions.c:
746         (modest_ui_actions_on_password_requested): Dim the username entry if 
747         the username has ever worked, as per the UI spec.
748
749 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
750
751         * src/modest-tny-account-store.c: (get_password):
752         * src/modest-ui-actions.c:
753         (modest_ui_actions_on_password_requested):
754         Allow the username to be changed too, though there is more work to 
755         be done on exactly how this behaves.
756
757 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
758
759         * src/modest-account-mgr-helpers.h:
760         * src/modest-account-mgr-helpers.c:
761         Added modest_account_mgr_get_display_name(),
762         modest_server_account_get_username(),
763         modest_server_account_set_username(),
764         modest_server_account_set_password(),
765         modest_server_account_get_hostname() functions so we do not need to 
766         use the conf API directly.
767         
768         * src/maemo/modest-main-window.c: (connect_signals):
769         Actually connect ot the ModestAccountStore::request-password signal, 
770         so that we show the dialog when the password is requested by Tinymail, 
771         for isntance if it is empty.
772
773         * src/modest-marshal.list:
774         * src/modest-tny-account-store.c:
775         (modest_tny_account_store_class_init), (get_password),
776         (modest_tny_account_store_alert):
777         * src/modest-tny-account-store.h:
778         * src/modest-ui-actions.h:
779         * src/modest-ui-actions.c:
780         (modest_ui_actions_on_password_requested):
781         Change the signal parameters, so it is obvious that we are providing 
782         the non human-readable server name, and receiving both the username 
783         and password, though changing of the username is not yet implemented.
784         Change the dialog UI to match the Maemo UI specifications, with #idfefing 
785         for the GNOME version.
786         
787         This should fix the projects.maemo.org bug NB#56209, though it does not 
788         work on Bora, because the gconf_client_get() for the password fails 
789         immediately after we save it with gconf_client_set().
790
791 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
792
793         * configure.ac:
794         * src/Makefile.am: Reverted the use of AM_CONDITIONAL(), because it 
795         caused an undefined symbol error:
796         modest-platform.c:84: undefined reference to `modest_osso_cb_hw_state_handler
797
798 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
799
800         * src/modest-tny-account-store.c:
801         (modest_tny_account_store_alert): Adapt to the changed tinymail API, 
802         using a GError instead of a string message, so we can translate it in 
803         Modest.
804
805 2007-05-08  Murray Cumming  <murrayc@murrayc.com>
806
807         * src/maemo/modest-address-book.c:
808         (modest_address_book_check_names):
809         * src/maemo/modest-msg-view-window.c:
810         (modest_msg_view_window_clipboard_owner_change):
811         * src/modest-init.c: (modest_init_init_ui):
812         * src/modest-mail-operation.c: (modest_mail_operation_send_mail),
813         (update_folders_cb), (modest_mail_operation_update_account):
814         * src/modest-ui-actions.c: (modest_ui_actions_on_msg_link_hover),
815         (modest_ui_actions_on_msg_attachment_clicked),
816         (modest_ui_actions_on_msg_recpt_activated):
817         * src/widgets/modest-header-view.c: (drag_data_get_cb):
818         * src/widgets/modest-msg-view.c: (modest_msg_view_search),
819         (modest_msg_view_search_next):
820         * src/widgets/modest-recpt-editor.c:
821         (modest_recpt_editor_on_button_release_event),
822         (modest_recpt_editor_on_key_press_event): Commented-out unnecessary calls to 
823         g_message(). At this point we should only be seeing interesting errors on 
824         stdout. Debugging messages could be #ifdefed-out if they are still useful.
825
826 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
827         
828         (modest_wizard_dialog_force_title_update):
829         * src/maemo/easysetup/modest-wizard-dialog.h:
830         * src/maemo/easysetup/modest-wizard-dialog.c: (set_property):
831         For GTK+ 2.10, when present, connect to the GtkNotebook signals so we 
832         can update the title when appropriate. Otherwise the title is wrong if the 
833         pages are added after adding the notebook to the dialog.
834         This must be a problem in HildonWizardDialog too.
835         Added modest_wizard_dialog_force_title_update() for GTK+ 2.6.
836         
837         * src/maemo/easysetup/modest-easysetup-wizard.c:
838         (create_subsequent_customsetup_pages),
839         (create_subsequent_easysetup_pages): 
840         Call modest_wizard_dialog_force_title_update() so that the title is 
841         correct even with GTK+ < 2.10.
842         This fixes projects.maemo.org bug NB#56145 .
843         
844 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
845
846         * src/maemo/modest-platform.c:
847         (modest_platform_set_update_interval): Use the ALARM_EVENT_NO_DIALOG 
848         flag (awful lack of namespacing in this API) to prevent a useless %s dialog 
849         from being shown.
850
851 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
852
853         * src/widgets/modest-window.h:  
854         * src/widgets/modest-window.c: Added a save_state_func vfunc, 
855         and modest_window_save_state(), which invokes it.
856
857         * src/widgets/modest-window-mgr.h:
858         * src/widgets/modest-window-mgr.c:
859         Added modest_window_mgr_save_state_for_all_windows(), which calls 
860         the save_state vfunc on all registered windows, if implemented.
861         
862         * src/gnome/modest-msg-edit-window.c:
863         * src/gnome/modest-msg-view-window.c:
864         * src/maemo/modest-msg-edit-window.c:
865         * src/maemo/modest-msg-view-window.c:
866         * src/maemo/modest-main-window.c: 
867         Specify the existing save_settings functions as implementations of 
868         ModestWindow::save_state_func().
869
870         * src/maemo/modest-osso-state-saving.c: modest_osso_save_state():
871         Call modest_window_mgr_save_state_for_all_windows(). This happens before 
872         enabling hibernation, for instance.
873         
874         We may need to do the same thing for restoring settings.
875
876
877 2007-05-07  Murray Cumming  <murrayc@murrayc.com>
878
879         * src/widgets/modest-window-mgr.c: 
880         * src/widgets/modest-window-mgr.h:
881         Added modest_window_mgr_prevent_hibernation_while_window_is_shown() and
882         modest_window_mgr_get_hibernation_is_prevented().
883         
884         * src/maemo/modest-main-window.c:
885         (on_hildon_program_is_topmost_notify): Prevent hibernation 
886         (possible when the application goes to the background in the WM), 
887         if modest_window_mgr_get_hibernation_is_prevented() is TRUE.
888         
889         * src/maemo/easysetup/modest-easysetup-wizard.c:
890         (modest_easysetup_wizard_dialog_init):
891         * src/maemo/modest-account-settings-dialog.c:
892         (modest_account_settings_dialog_init):
893         * src/maemo/modest-connection-specific-smtp-edit-window.c:
894         (modest_connection_specific_smtp_edit_window_init):
895         * src/maemo/modest-connection-specific-smtp-window.c:
896         (modest_connection_specific_smtp_window_init):
897         * src/maemo/modest-signature-editor-dialog.c:
898         (modest_signature_editor_dialog_init):
899         Call modest_window_mgr_prevent_hibernation_while_window_is_shown() to 
900         prevent hibernation while any of these account settings dialogs are open.
901
902 2007-05-04  Murray Cumming  <murrayc@murrayc.com>
903
904         * src/maemo/Makefile.am:
905         * src/maemo/modest-osso-state-saving.c: 
906         * src/maemo/modest-osso-state-saving.h: Added 
907         modest_osso_load_state() and modest_osso_save_state() though they do 
908         nothing now. They should iterate through all the open windows and load/save 
909         their state.
910         * src/modest-ui-actions.c: (modest_ui_actions_on_quit): For Mameo, 
911         save state when closing.
912         
913         * src/maemo/modest-main-window.c:
914         (on_hildon_program_is_topmost_notify), (modest_main_window_new):
915         Add a notification handler for the HildonProgram::is-topmost property, 
916         so we can allow hibernation when the application goes into the background.
917         But we still need to detect when the accounts setup windows are open so 
918         we can stop hibernation when they are open.
919         To do this, I also added the main window the HildonProgram. This might have 
920         other side-effects/benefits, and should maybe be done for other windows.
921
922         * src/maemo/modest-osso-autosave-callbacks.h:
923         * src/maemo/modest-osso-autosave-callbacks.c:
924         (modest_on_osso_application_autosave): Add a libosso auto-save callback, 
925         though it does not do anything yet, and we might never need this to do 
926         anything. For instance, we already save drafts.
927         
928         * src/maemo/modest-platform.c: (modest_platform_init):
929         Specify the libosso auto-save callback.
930
931 2007-05-03  Murray Cumming  <murrayc@murrayc.com>
932
933         * src/maemo/modest-platform.c:
934         (modest_platform_set_update_interval):
935         * src/modest-defs.h: Store the alarmd cookie ID in gconf, because it 
936         aparently stays valid between application instances, so we can use this 
937         to remove and reset it later. According to a maemo-developers email from 
938         David Weinehall.
939
940 2007-05-03  Murray Cumming  <murrayc@murrayc.com>
941
942         * configure.ac: Depend on libalarm for Maemo.
943
944         * src/dbus_api/modest-dbus-api.h:
945         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_receive),
946         (on_send_receive), (modest_dbus_req_handler):
947         Handle a SEND_RECEIVE D-Bus method.
948         
949         * libmodest-dbus-client/libmodest-dbus-client.c:
950         (libmodest_dbus_client_send_and_receive):
951         * libmodest-dbus-client/libmodest-dbus-client.h:
952         Add C convenience functions for calling the new D-Bus method.
953         
954         * src/modest-platform.h:
955         * src/gnome/modest-platform.c:
956         * src/maemo/modest-platform.c: 
957         Added modest_platform_set_update_interval(), which uses the 
958         alarmd API on Maemo.
959         (modest_platform_init),
960         Call modest_platform_set_update_interval(), using a hard-coded 
961         interval for now (until the global settings dialog is implemented), 
962         though I am not sure that this makes sense yet.
963
964 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
965
966         * src/dbus_api/modest-dbus-callbacks.c:
967         (modest_osso_cb_hw_state_handler):
968         * src/dbus_api/modest-dbus-callbacks.h:
969         * src/maemo/modest-platform.c: (modest_platform_init):
970         Registered (empty) callbacks for the osso hardware state D-Bus signals, 
971         in case this has some effect on the ability for Maemo to ping the 
972         application.
973
974 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
975
976         * src/modest-text-utils.c: (modest_text_utils_validate_recipient):
977         Comment out an if() that checks a gchar for < 0, causing a build-breaking 
978         warning. It is probably a logic error, but I need to fix the build.
979
980 2007-05-02  Murray Cumming  <murrayc@murrayc.com>
981
982         * src/modest-account-mgr.h:
983         * src/modest-account-mgr.c: 
984         (modest_account_mgr_account_names): Add a gboolean enabled_only 
985         parameter, so we can get lists of onlt the enabled accounts.
986         
987         (modest_account_mgr_add_account),,
988         (modest_account_mgr_account_with_display_name_exists):
989         * src/maemo/modest-msg-edit-window.c: (get_transports):
990         * src/modest-account-mgr-helpers.c:
991         (modest_account_mgr_set_first_account_as_default):
992         * src/modest-init.c: (init_default_account_maybe):
993         * src/modest-tny-account-store.c: (get_accounts):
994         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts),
995         (do_send_receive_auto), (modest_ui_actions_on_send_receive):
996         * tests/check_account-mgr.c: (START_TEST):
997         Provide the extra parameter, as appropriate.
998         
999         * src/widgets/modest-account-view.c: (update_account_view):
1000         Do not show disabled accounts (meaning that there is no way to 
1001         enable/disable accounts in the UI (the feature is not in our UI 
1002         specification), so we can use this internally only to mark unfinished 
1003         or temporary account data.
1004         
1005         * src/maemo/easysetup/modest-easysetup-wizard.c:
1006         (create_account): Add boolean enable parameter, so we can specify FALSE 
1007         to create the temporary account.
1008         (on_button_edit_advanced_settings): Create the temporary account as disabled.
1009         (on_before_next): When finishing, when there is a temporary account, just 
1010         set it as enabled.
1011         Also, use a timeout to delay the showing of the dialog until gconf is likely 
1012         to return correct information, due to a maemo gconf bug that is fixed in 
1013         osso 1.1, but not yet in Bora.
1014         However, the dialog stays on screen after it is destroyed.
1015         
1016         * src/maemo/modest-account-settings-dialog.c: on_response(): Do not check 
1017         for invalid data when cancelling. Use a hildon note instead of a dialog 
1018         to complain about invalid data. Do not show the account-saved note if the 
1019         account is disabled (a temporary account that will not really be saved for use 
1020         until later.)
1021
1022 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
1023
1024         * src/modest-account-mgr-helpers.h:
1025         * src/modest-account-mgr-helpers.c:
1026         Added modest_account_mgr_unset_default_account(),
1027         Added modest_account_mgr_set_first_account_as_default().
1028
1029         * src/modest-account-mgr.c: (modest_account_mgr_remove_account): 
1030         If it was the default account, unset the default account name.
1031         
1032         * src/maemo/modest-account-view-window.c:
1033         (on_delete_button_clicked): If it was the default account, 
1034         set the first remaining account as the default instead.
1035         
1036         * src/maemo/modest-main-window.c: (on_account_update): Do not try to use 
1037         a NULL account or a NULL default account, to prevent a crash. This should 
1038         not happen now anyway. Bug #55343 in projects.maemo.org/bugzilla.
1039         
1040
1041 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
1042
1043         * src/widgets/modest-recpt-editor.c:
1044         (modest_recpt_editor_on_key_press_event): Put an #ifdef around the 
1045         use of gtk_text_buffer_get_has_selection() (from GTK+ 2.10), and add a 
1046         TODO comment for this. This fixes the build.
1047         
1048         * src/modest-ui-actions.c: Add do_send_receive(), though it might not 
1049         be the best place for it. This will in future update all auto-update accounts, 
1050         rather than just the current/default account, when that gconf key exists.
1051         (modest_ui_actions_on_send_receive): Offer the settings dialog (or wizard) 
1052         if there are no accounts, before calling do_send_receive().
1053         * src/modest-ui-actions.h: Specify the callback for the Send/Recieve menu item.
1054         
1055         * src/gnome/modest-main-window.c: (on_online_toggle_toggled):
1056         * src/maemo/modest-main-window-ui.h:
1057         * src/maemo/modest-main-window.c: (on_connection_changed),
1058         (sync_accounts_cb): Use do_send_receive() instead of calling the signal handler 
1059         directly, becaue the signal handler does more.
1060
1061 2007-04-30  Murray Cumming  <murrayc@murrayc.com>
1062
1063         * src/modest-account-mgr-helpers.c:
1064         (modest_account_mgr_get_account_data): Add a more helpful error message, and comment, 
1065         for the case that the account does not exist.
1066         
1067         * src/widgets/modest-folder-view.c: (filter_row): Use the tinymail account ID 
1068         (equivalent to the modest account name) rather than the tinymail account name 
1069         (equivalent to the modest account title - human readable) to get the account data.
1070         Check for null account data to prevent the crash, and add a TODO comment saying that 
1071         this needs fixing because it is using the server account name instead of the account name.
1072
1073 2007-04-29  Murray Cumming  <murrayc@murrayc.com>
1074
1075         * src/maemo/easysetup/modest-easysetup-wizard.c: (show_error):
1076         * src/maemo/modest-account-settings-dialog.c: (show_error),
1077         (show_ok):
1078         Use hildon_note_new_information() for informative and error messages, 
1079         which seems to be expected for Maemo applications (no documentation that I know of 
1080         says this). I am surprised that there is no distinction between info and error 
1081         dialogs.
1082
1083 2007-04-29  Murray Cumming  <murrayc@murrayc.com>
1084
1085         * src/maemo/modest-maemo-ui-constants.h: Add a MODEST_MARGIN_NONE constant, so 
1086         it is easy to find where this is used.
1087         
1088         * src/maemo/easysetup/modest-easysetup-wizard.c:
1089         (create_page_welcome), (create_page_account_details),
1090         (create_page_user_details), (create_page_complete_easysetup),
1091         (create_page_custom_incoming), (create_page_custom_outgoing),
1092         (create_page_complete_custom):
1093         * src/maemo/modest-account-settings-dialog.c:
1094         (create_page_account_details), (create_page_user_details),
1095         (create_page_incoming), (create_page_outgoing):
1096         * src/maemo/modest-account-view-window.c: (window_vbox_new):
1097         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1098         (modest_connection_specific_smtp_edit_window_init):
1099         * src/maemo/modest-connection-specific-smtp-window.c:
1100         (modest_connection_specific_smtp_window_init):
1101         * src/maemo/modest-signature-editor-dialog.c:
1102         (modest_signature_editor_dialog_init): Use the correct padding/spacing/borders 
1103         and scrolling policy as per the Email Application Layout Guide, if I have 
1104         understood it.
1105
1106 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1107
1108         * src/modest-tny-account-store.c: (modest_tny_account_store_init): 
1109         Remove the add_transport_account_func and add_store_account_func vfunc implementations, 
1110         which were empty, because these vfuncs have been removed from TnyAccountStore.
1111         This fixes the build.
1112
1113 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1114
1115         * src/maemo/modest-main-window.c:
1116         (modest_main_window_show_toolbar): Check that a toolbar item is not NULL before 
1117         showing/hiding it. Added TODO because it probably should not be NULL.
1118         * src/modest-init.c: (modest_init_init_ui): Use a g_message() instead of a g_warning() 
1119         because unnecessary g_warnings() make degugging difficult.
1120
1121 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1122
1123         * src/maemo/modest-msg-edit-window.c:
1124         (modest_msg_edit_window_select_color),
1125         (modest_msg_edit_window_select_background_color): 2 const corrections and 
1126         moving 2 #endifs before closing brackets, to fix the build.
1127
1128 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1129
1130         * src/maemo/easysetup/modest-easysetup-wizard.h:
1131         * src/maemo/easysetup/modest-easysetup-wizard.c:
1132         (modest_easysetup_wizard_dialog_finalize),
1133         (on_button_edit_advanced_settings), (create_page_complete_custom),
1134         (on_response), (create_account):
1135         Implement the Advanced Settings edit button, by saving the account information, 
1136         for the Advanded Settings dialog to use directly from gconf, and removing it 
1137         if Finish is never clicked. There is still some UI strangeness, so this is not finished.
1138         Bug #5533 in the projects.maemo.org bugzilla.
1139
1140 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1141
1142         * src/maemo/modest-msg-view-window.c:
1143         (modest_msg_view_window_show_toolbar): Prevent hide/show of a NULL toolbar widget, 
1144         when opening a message window.
1145
1146 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1147
1148         * src/maemo/easysetup/modest-easysetup-wizard.c:
1149         (create_page_custom_outgoing): Correct the position of the horizontal separator to 
1150         match the UI spec.
1151         
1152         * src/maemo/modest-main-window.c: (set_toolbar_mode): Check that widgets are not NULL 
1153         before showing/hiding them, to avoid a crash when clicking on folders when there are no 
1154         gconf settings. I probably added more checks than necessary, but that is safer.
1155         
1156         * src/modest-ui-actions.c: (modest_ui_actions_on_move_to): Initialize the mail_op 
1157         variable to fix the build, but this seems to be used when it is still NULL.
1158
1159 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1160
1161         * src/modest-platform.h:
1162         * src/gnome/modest-platform.c: (modest_platform_connect_and_wait):
1163         * src/maemo/modest-platform.c: (modest_platform_connect_and_wait):
1164         * src/modest-main.c: Implement this function so we can avoid using 
1165         maemo-specific API from cross-platform code.
1166         (main):
1167         * src/modest-tny-account-store.c:
1168         (get_smtp_specific_transport_account_for_open_connection):
1169         * src/modest-ui-actions.c: (check_for_connection),
1170         (modest_ui_actions_on_item_not_found):
1171         Use modest_platform_connect_and_wait() and put #idefs around other 
1172         maemo-specific code, because only maemo currently has a way to 
1173         identify connection names.
1174
1175 2007-04-27  Murray Cumming  <murrayc@murrayc.com>
1176
1177         * src/modest-tny-account-store.h:
1178         * src/modest-tny-account-store.c:
1179         Added modest_tny_account_store_get_transport_account_for_open_connection(), which respects 
1180         the connection-specific SMTP server settings in the configuration.
1181         
1182         * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_mail),
1183         (on_idle_mail_to):
1184         * src/maemo/modest-main-window.c: (on_connection_changed),
1185         (connect_signals):
1186         * src/modest-main.c: (main), (start_ui), (send_mail):
1187         Use tny_maemo_conic_device_connect() instead of tny_maemo_conic_force_online(), when 
1188         that is what is intended.
1189         
1190         * src/modest-ui-actions.c: (action_send), (action_receive),
1191         (modest_ui_actions_on_item_not_found), (modest_ui_actions_on_send):
1192         Use modest_tny_account_store_get_transport_account_for_open_connection() instead of 
1193         modest_tny_account_store_get_tny_account_by_account() so that the connection-specific 
1194         SMTP server is used when it is specified.
1195         
1196         (modest_ui_actions_on_send_receive): 
1197         Check that a connection is open before proceeding.
1198         Receive and then send, instead of vice-versa, as per the specification.
1199
1200 2007-04-26  Murray Cumming  <murrayc@murrayc.com>
1201
1202         * src/modest-mail-operation.c:
1203         (modest_mail_operation_remove_folder): Intialize the parent variable, to fix the build, 
1204         though I guess it should be something other than NULL.
1205
1206 2007-04-26  Murray Cumming  <murrayc@murrayc.com>
1207
1208         * src/maemo/easysetup/modest-easysetup-wizard.c:
1209         (create_page_custom_incoming): Add the checkbox to the caption instead of adding the 
1210         combo twice, to avoid an g_warning and to make it visible again.
1211         * src/maemo/modest-main-window.c: (on_account_update): Check whether the popup_menu is 
1212         attached before detaching it, to avoid a g_warning, and add comment about the implicit 
1213         (already intended) dereference when detaching, because we then recreate the menu.
1214         But I am not sure why the warning was happening, and it is possible that this is a memory 
1215         leak.
1216
1217 2007-04-25  Murray Cumming  <murrayc@murrayc.com>
1218
1219         * src/dbus_api/modest-dbus-callbacks.c: Added uri_unescape(),
1220         and uri_parse_mailto() utility functions.
1221         (on_idle_mail_to): Parse, unescape, and use the subject, cc, bcc, and body items in 
1222         the mailto URI.
1223         * tests/dbus_api/test_mail_to.c: (main): Add escaped spaces in the URI to test this.
1224
1225 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
1226
1227         * src/dbus_api/modest-dbus-api.h:
1228         * src/dbus_api/modest-dbus-callbacks.c:
1229         Use an idle callback to execute the modest code in the application's own thread.
1230         Remove the helloworld example method.
1231         Handle mail-to and open-message D-Bus methods, though the mail-to format needs to be 
1232         parsed, and the open-message method is not implemented because this is not yet implemented in 
1233         modest itself.
1234         * libmodest-dbus-client/libmodest-dbus-client.c:
1235         (libmodest_dbus_client_send_mail), (libmodest_dbus_client_mail_to),
1236         (libmodest_dbus_client_open_message):
1237         * libmodest-dbus-client/libmodest-dbus-client.h: New functions for the new methods.
1238         
1239         * src/modest-tny-msg.c: (modest_tny_msg_new), (add_body_part): Handle NULLs for subject and 
1240         body without crashing.
1241         
1242         * tests/dbus_api/Makefile.am:
1243         * tests/dbus_api/test_mail_to.c:
1244         * tests/dbus_api/test_open_message.c: New tests for the new methods.
1245
1246 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
1247
1248         * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in:
1249         Added file to fix the build. Sorry.
1250         
1251         * src/dbus_api/Makefile.am:
1252         * src/dbus_api/modest-dbus-api.h:
1253         * src/dbus_api/modest-dbus-callbacks.h:
1254         * src/dbus_api/modest-dbus-callbacks.c: (on_send_mail),
1255         (modest_dbus_req_handler):
1256         Put constants in a separate header so it can be reused by the 
1257         client library, without duplication
1258         
1259         * libmodest-dbus-client/Makefile.am:
1260         * libmodest-dbus-client/libmodest-dbus-client.c:
1261         (libmodest_dbus_client_call_helloworld),
1262         (libmodfest_dbus_client_send_mail),
1263         (libmodfest_dbus_client_mailto),
1264         (libmodfest_dbus_client_open_message):
1265         * libmodest-dbus-client/libmodest-dbus-client.h:
1266         (Partly) Implement a send_mail D-Bus method.
1267         
1268         * tests/dbus_api/Makefile.am:
1269         * tests/dbus_api/test_send_mail.c: (main): Added a test for 
1270         the send_email D-Bus method.
1271
1272 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
1273
1274         * Makefile.am:
1275         * configure.ac:
1276         * libmodest-dbus-client/Makefile.am:
1277         * libmodest-dbus-client/libmodest-dbus-client.c:
1278         * libmodest-dbus-client/libmodest-dbus-client.h:
1279         * tests/dbus_api/Makefile.am:
1280         * tests/dbus_api/test_hello.c: (main): Added directory structure for a C convenience library 
1281         for using the modest D-Bus API, and used that from the test. It is still just a helloworld.
1282
1283 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
1284
1285         * src/maemo/easysetup/modest-easysetup-wizard.c:
1286         (create_page_account_details):
1287         * src/maemo/modest-account-settings-dialog.c:
1288         (create_page_account_details): Explicitly set auto-capitalization mode for the title 
1289         widgets, because this might not be the default in future versions of the Maemo GTK+. 
1290         However, I can not not get capitalization to work even in a simple test case.
1291
1292 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
1293
1294         * src/maemo/easysetup/modest-easysetup-wizard.c:
1295         (create_page_custom_incoming), (create_page_custom_outgoing):
1296         * src/maemo/modest-account-settings-dialog.c:
1297         (create_page_account_details), (create_page_incoming),
1298         (create_page_outgoing): Use a separate label in a caption for GtkCheckButtons, 
1299         instead of using gtk_check_button_with_label(), so they are aligned like the other 
1300         widgets, as per the UI spec.
1301
1302 2007-04-24  Murray Cumming  <murrayc@murrayc.com>
1303
1304         * src/maemo/easysetup/modest-easysetup-wizard.c:
1305         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1306         * src/widgets/modest-validating-entry.c:
1307         * src/widgets/modest-validating-entry.h: Rename the validating widget so it has a 
1308         Modest prefix instead of an EasySetup prefix.
1309
1310 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
1311
1312         * src/widgets/modest-validating-entry.h:
1313         * src/widgets/modest-validating-entry.c: (on_insert_text),
1314         Added easysetup_validating_entry_set_max_func(), used to set a callback 
1315         to call when the max number of characters is reached. GtkEntry has a max-length 
1316         already but is silent about it.
1317
1318         * src/maemo/easysetup/modest-easysetup-wizard.c: (on_entry_max),
1319         (create_page_account_details), (create_page_user_details),
1320         (create_account):
1321         * src/maemo/modest-account-settings-dialog.c: (on_entry_max),
1322         (create_page_account_details), (create_page_user_details),
1323         (create_page_outgoing):
1324         * src/modest-ui-actions.c: (modest_ui_actions_on_details): 
1325         Use easysetup_validating_entry_set_max_func() to show the warning dialog, as per 
1326         the UI spec, when the user tries to enter more than the max number of characters.
1327
1328 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
1329
1330         * src/maemo/easysetup/modest-easysetup-wizard.c:
1331         (create_page_user_details), (create_page_custom_incoming),
1332         (create_page_custom_outgoing):
1333         * src/maemo/modest-account-settings-dialog.c:
1334         (create_page_user_details), (create_page_incoming),
1335         (create_page_outgoing):
1336         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1337         (modest_connection_specific_smtp_edit_window_init):
1338         Use hildon_gtk_entry_set_input_mode() to turn off auto-capitalization where it is 
1339         not appropriate. Bad Maemo-specific defaults!.
1340
1341 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
1342
1343         * src/maemo/modest-signature-editor-dialog.c: (enable_widgets),
1344         (on_toggle_button_changed), (modest_signature_editor_dialog_init),
1345         (modest_signature_editor_dialog_set_settings): 
1346         Disable the label and textview when the checkbox is disabled, and use the 
1347         specified (UI spec) default signature text.
1348
1349 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
1350
1351         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1352         (modest_connection_specific_smtp_edit_window_init): Use spacing constants.
1353         
1354         * src/modest-defs.h:
1355         * src/modest-account-mgr-helpers.h:
1356         * src/modest-account-mgr-helpers.c:
1357         Added modest_account_mgr_get/set_signature(), using new gconf keys.
1358         
1359         * src/maemo/Makefile.am:
1360         * src/maemo/modest-signature-editor-dialog.c:
1361         * src/maemo/modest-signature-editor-dialog.h: New dialog for editing signatures, 
1362         as per the UI spec.
1363         
1364         * src/maemo/modest-account-settings-dialog.h:
1365         * src/maemo/modest-account-settings-dialog.c:
1366         (modest_account_settings_dialog_finalize), (on_button_signature),
1367         (save_configuration): Use the new dialog when the Edit button is pressed, and 
1368         save the changes if necessary, as per the UI spec.
1369
1370 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
1371
1372         * src/maemo/Makefile.am:
1373         * src/maemo/modest-maemo-ui-constants.h: New header with some defines for widget spacing, 
1374         based on maemo-develoers email from Dirk.
1375         
1376         * src/maemo/easysetup/modest-easysetup-wizard.c:
1377         (create_page_welcome), (create_page_account_details),
1378         (create_page_user_details), (create_page_complete_easysetup),
1379         (create_page_custom_incoming), (create_page_custom_outgoing),
1380         (create_page_complete_custom),
1381         (modest_easysetup_wizard_dialog_init):
1382         * src/maemo/modest-account-settings-dialog.c:
1383         (create_page_account_details), (create_page_user_details),
1384         (create_page_incoming), (create_page_outgoing),
1385         (modest_account_settings_dialog_init):
1386         * src/maemo/modest-connection-specific-smtp-window.c:
1387         (modest_connection_specific_smtp_window_init): Used the smallest of the spacing constants.
1388
1389 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
1390
1391         * src/maemo/easysetup/modest-easysetup-wizard.c:
1392         (create_page_account_details), (create_page_custom_outgoing),
1393         (create_page_complete_custom):
1394         * src/maemo/modest-account-settings-dialog.c:
1395         (create_page_user_details), (create_page_incoming),
1396         (create_page_outgoing):
1397         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1398         (modest_connection_specific_smtp_edit_window_init): 
1399         Use the correct (UI spec) port min/max, and use horizontal separators, 
1400         as per the UI spec.
1401
1402 2007-04-23  Murray Cumming  <murrayc@murrayc.com>
1403
1404         * src/maemo/easysetup/modest-easysetup-wizard.c:
1405         (set_default_custom_servernames):
1406         * src/maemo/modest-account-settings-dialog.c:
1407         (create_page_incoming), (on_combo_outgoing_security_changed),
1408         (on_combo_incoming_security_changed), (create_page_outgoing),
1409         (modest_account_settings_dialog_set_account_name),
1410         (save_configuration):
1411         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1412         (on_combo_security_changed),
1413         (modest_connection_specific_smtp_edit_window_init),
1414         (modest_connection_specific_smtp_edit_window_set_connection),
1415         (modest_connection_specific_smtp_edit_window_get_settings): 
1416         Use HildonNumberEditor instead of GtkEntry for the port numbers so it has the - and + buttons,
1417         as per the UI spec.
1418
1419 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
1420
1421         * po/en_GB.po:
1422         * src/maemo/easysetup/modest-easysetup-wizard.c:
1423         (create_page_custom_outgoing), (create_page_complete_custom):
1424         * src/maemo/modest-account-settings-dialog.c:
1425         (create_page_user_details), (create_page_outgoing):
1426         * src/maemo/modest-account-view-window.c: (button_box_new):
1427         Use changed logical IDs as per the most recent UI spec:
1428         mcen_bd_emailsetup_edit -> mcen_bd_edit
1429         mcen_bd_emailsetup_delete -> mcen_bd_delete
1430         mcen_bd_emailsetup_close -> mcen_bd_close
1431
1432 2007-04-20  2007-04-20  Murray Cumming  <murrayc@murrayc.com>
1433
1434         * configure.ac:
1435         * src/Makefile.am:
1436         * src/dbus_api/Makefile.am:
1437         * src/dbus_api/modest-dbus-callbacks.c:
1438         * src/dbus_api/modest-dbus-callbacks.h:
1439         * src/maemo/modest-platform.c: (modest_platform_init):
1440         Added the beginnings of a D-Bus API. At the moment it just has a HelloWorld 
1441         method.
1442         * tests/Makefile.am:
1443         * tests/dbus_api/Makefile.am:
1444         * tests/dbus_api/test_hello.c: (main): Very simple test of the D-Bus API.
1445
1446 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
1447
1448         * src/maemo/modest-account-settings-dialog.c:
1449         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1450         Removed unnecessary includes.
1451
1452 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
1453
1454         * src/maemo/easysetup/modest-easysetup-wizard.c:
1455         * src/maemo/modest-account-settings-dialog.c:
1456         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1457         * src/widgets/Makefile.am:
1458         * src/widgets/modest-easysetup-secureauth-combo-box.c:
1459         * src/widgets/modest-easysetup-secureauth-combo-box.h:
1460         * src/widgets/modest-easysetup-serversecurity-combo-box.c:
1461         * src/widgets/modest-easysetup-serversecurity-combo-box.h:
1462         * src/widgets/modest-secureauth-combo-box.c:
1463         * src/widgets/modest-secureauth-combo-box.h:
1464         * src/widgets/modest-serversecurity-combo-box.c:
1465         * src/widgets/modest-serversecurity-combo-box.h: Renamed the files and 
1466         made the GObject names more consistent with the rest of the Modest code.
1467
1468 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
1469
1470         * src/maemo/easysetup/Makefile.am:
1471         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c:
1472         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.h:
1473         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c:
1474         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h:
1475         * src/maemo/easysetup/modest-easysetup-wizard.c:
1476         * src/maemo/easysetup/modest-validating-entry.c:
1477         * src/maemo/easysetup/modest-validating-entry.h:
1478         * src/maemo/modest-account-settings-dialog.c:
1479         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1480         * src/widgets/Makefile.am: Moved these widgets from maemo/easysetup into 
1481         widgets/ because they are used outside of easysetup too. After checking in, 
1482         svn will allow me to rename them too.
1483
1484 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
1485
1486         * src/gnome/modest-msg-edit-window.c:
1487         (modest_msg_edit_window_set_priority_flags): Added an empty implementation to fix a 
1488         linker error, to fix the build on the GNOME platform.
1489         modest_msg_edit_window_set_zoom(), modest_msg_edit_window_get_zoom(), 
1490         modest_msg_edit_window_zoom_plus(), modest_msg_edit_window_zoom_minus():
1491         ifdefed out to avoid a warning.
1492
1493 2007-04-20  Murray Cumming  <murrayc@murrayc.com>
1494
1495         * src/widgets/modest-header-view.c: (on_focus_in): Use GTK_CHECK_VERSION to #ifdef around the 
1496         use of gtk_tree_view_get_visible_range(), to fix the build on Mameo. This code probably needs 
1497         some alternative for GTK+ 2.6.
1498
1499 2007-04-19  Murray Cumming  <murrayc@murrayc.com>
1500
1501         * src/maemo/modest-address-book.c: Added include to avoid a warning.
1502
1503         * po/en_GB.po: Added missing mcen_bd_emailsetup_close string, 
1504         specified for EmailAccountsDialog in UI spec.
1505         
1506         * src/maemo/easysetup/modest-easysetup-wizard.c:
1507         * src/maemo/easysetup/modest-easysetup-wizard.h:
1508         * src/maemo/modest-account-settings-dialog.c:
1509         * src/maemo/modest-account-settings-dialog.h:
1510         Reuse a member window widget for the connection-specific SMTP server accounts, 
1511         so we can tell it to create/save the accounts only if we actually save changes.
1512
1513         * src/maemo/modest-connection-specific-smtp-edit-window.h:      
1514         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1515         (modest_connection_specific_smtp_edit_window_get_settings): 
1516         Return a struct instance for temporarily remembering the entered data.
1517
1518         * src/maemo/modest-connection-specific-smtp-window.h:
1519         * src/maemo/modest-connection-specific-smtp-window.c:
1520         (modest_connection_specific_smtp_window_finalize),
1521         (modest_connection_specific_smtp_window_fill_with_connections),
1522         (on_button_edit),
1523         (modest_connection_specific_smtp_window_save_server_accounts),
1524         (update_model_server_names): Do not actually save data until asked, 
1525         when the caller calls modest_connection_specific_smtp_window_save_server_accounts().
1526         
1527         (on_selection_changed),
1528         (modest_connection_specific_smtp_window_init): Disable the edit 
1529         button when nothing is selected.
1530         
1531         * src/modest-account-mgr-helpers.c:
1532         * src/modest-account-mgr-helpers.h: 
1533         Put modest_account_mgr_free_server_account_data() in the header now that I use the struct 
1534         elsewhere.
1535
1536 2007-04-19  Murray Cumming  <murrayc@murrayc.com>
1537
1538         * src/modest-account-mgr-helpers.h:
1539         * src/modest-account-mgr-helpers.c:
1540         (modest_account_mgr_get_unused_account_name),
1541         (modest_account_mgr_get_unused_account_display_name): Added these 
1542         utility functions, to avoid code duplication.
1543
1544         * src/maemo/easysetup/modest-easysetup-wizard.c:
1545         (create_page_account_details), (create_account):
1546         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1547         (on_combo_security_changed),
1548         (modest_connection_specific_smtp_edit_window_init),
1549         (modest_connection_specific_smtp_edit_window_save_settings):
1550         * src/maemo/modest-connection-specific-smtp-edit-window.h:
1551         * src/maemo/modest-connection-specific-smtp-window.c:
1552         (modest_connection_specific_smtp_window_finalize),
1553         (modest_connection_specific_smtp_window_fill_with_connections),
1554         (on_button_edit), (modest_connection_specific_smtp_window_init):
1555         * src/maemo/modest-connection-specific-smtp-window.h:
1556         Implementing saving of connection-specific server accounts.
1557         
1558         But I need to refactor this so we can save the data for each 
1559         possible connection-specific account and only actually create the server accounts 
1560         when the easysetup finished, or the OK button is pressed on the account settings 
1561         dialog.
1562
1563 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1564
1565         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1566         (on_combo_security_changed): 
1567         (modest_connection_specific_smtp_edit_window_init):
1568         Auto-fill the port number as in the account settings.
1569         
1570         (modest_connection_specific_smtp_edit_window_set_connection):
1571         * src/maemo/modest-connection-specific-smtp-edit-window.h:
1572         * src/maemo/modest-connection-specific-smtp-window.c:
1573         (fill_with_connections), (on_button_edit),
1574         (modest_connection_specific_smtp_window_init): 
1575         Turn the edit window into a dialog to simplify the code, and 
1576         set a WM hint as in a GtkDialog, because only a popup can be on top of 
1577         another window in Maemo, and popups usually have no WM decoration.
1578         
1579         * src/modest-defs.h:
1580         * src/modest-account-mgr-helpers.c:
1581         (modest_account_mgr_set_connection_specific_smtp),
1582         (modest_account_mgr_remove_connection_specific_smtp),
1583         (modest_account_mgr_get_connection_specific_smtp):
1584         * src/modest-account-mgr-helpers.h: Some functions to write the 
1585         connection-specific SMTP server information. Not yet used.
1586
1587         
1588         * src/widgets/modest-folder-view.c: (text_cell_data):
1589         Fix a warning about an uninitialized variable.
1590         (on_configuration_key_changed): Put an #ifdef around the use 
1591         of gtk_tree_view_column_queue_resize() because it is new in GTK+ 2.10.
1592
1593 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1594
1595         * src/maemo/modest-account-settings-dialog.h:
1596         * src/maemo/modest-account-settings-dialog.c:
1597         Added connect_for_modified() utility function to mark the new modified boolean.
1598         
1599         (create_page_account_details), (create_page_user_details),
1600         (create_page_incoming), (create_page_outgoing), (on_response),
1601         (modest_account_settings_dialog_init),
1602         (modest_account_settings_dialog_set_account_name):
1603         Only warn about unsaved changes when there are actually unsaved changes.
1604         
1605         * src/modest-account-mgr-helpers.c:
1606         * src/modest-account-mgr-helpers.h: Put the port, secure-auth, and security information 
1607         into the ModestServerAccountData struct. I do not use it yet, but someone might expect 
1608         to get the data from there in future.
1609
1610 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1611
1612         * src/modest-defs.h:
1613
1614         * src/modest-account-mgr-helpers.h:
1615         * src/modest-account-mgr-helpers.c:
1616         Store the security account setting in a single conf key instead of using 
1617         the options list, so that the list is left for just the to-be-removed camel hack, 
1618         and because gconf_client_set_list() is failing for some reason.
1619
1620         * src/modest-account-mgr.c:
1621         (modest_account_mgr_add_server_account):
1622         * src/maemo/modest-account-settings-dialog.c:
1623         (modest_account_settings_dialog_set_account_name),
1624         (save_configuration): Use the renamed functions.
1625
1626
1627 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1628
1629         * src/widgets/Makefile.am:
1630         * src/widgets/modest-limit-retrieve-combo-box.c:
1631         * src/widgets/modest-limit-retrieve-combo-box.h:
1632         * src/widgets/modest-retrieve-combo-box.c:
1633         * src/widgets/modest-retrieve-combo-box.h: Added new widgets for use in 
1634         the account settings dialog.
1635         
1636         * src/modest-defs.h:
1637         * src/modest-account-mgr-helpers.h:
1638         * src/modest-account-mgr-helpers.c:
1639         (modest_server_account_get_option_secure_auth),
1640         (modest_server_account_set_option_secure_auth):
1641         * src/modest-account-mgr.c:
1642         (modest_account_mgr_add_server_account):
1643         Use the existing AUTH_MECH conf key for the secure-auth setting, 
1644         instead of putting it in the list options, because this was actually used already.
1645         
1646         * src/maemo/modest-account-settings-dialog.c:
1647         (create_page_account_details),
1648         (modest_account_settings_dialog_set_account_name),
1649         (save_configuration):
1650         * src/maemo/modest-account-settings-dialog.h:
1651         Add the retrieve and retrieve-limit combo boxes, as per the UI spec.
1652         Hide the leave-messages checkbox for non-POP accounts, as per the UI spec.
1653
1654 2007-04-18  Murray Cumming  <murrayc@murrayc.com>
1655
1656         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h:
1657         * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c:
1658         Added easysetup_serversecurity_combo_box_get_active_serversecurity_port()
1659
1660         * src/modest-defs.h:
1661         * src/maemo/modest-account-settings-dialog.c:
1662         (create_page_incoming), (on_combo_outgoing_security_changed),
1663         (on_combo_incoming_security_changed), (create_page_outgoing),
1664         (modest_account_settings_dialog_set_account_name),
1665         (save_configuration): Load/Save the port number, and change it when the 
1666         security combo changes, to suitable defaults.
1667
1668 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1669
1670         * src/modest-account-mgr.c:
1671         (modest_account_mgr_add_server_account): Set the security and secure-auth 
1672         options, and add a comment saying that the other camel-specific options should be 
1673         removed in future.
1674
1675 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1676
1677         * src/maemo/modest-account-settings-dialog.c: (check_data): Always return something, 
1678         found by valgrind.
1679         * src/modest-tny-account-store.c: (account_list_free),
1680         (on_account_changed): Add a TODO comment about a valgrind error, caused by using 
1681         cursor->data after unreffing it. But there is some strange stuff there so it might not be 
1682         easy to fix.
1683
1684 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1685
1686         * src/modest-protocol-info.c:
1687         * src/modest-protocol-info.h: Added a MODEST_PROTOCOL_AUTH_CRAMMD5 enum value, because it 
1688         is required by our UI spec. Maybe something in our implementation will use this eventually.
1689         * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c: 
1690         (easysetup_secureauth_combo_box_fill): Use the CRAM MD5 enum value 
1691         instead of the previous 0 placeholder.
1692         
1693         * src/modest-defs.h: Added gconf list pair key names and value strings for the security and 
1694         secure-auth settings.
1695         * src/modest-account-mgr-helpers.h:
1696         * src/modest-account-mgr-helpers.c:
1697         (modest_server_account_data_get_option_secure_auth),
1698         (modest_server_account_set_option_secure_auth),
1699         (modest_server_account_data_get_option_security),
1700         (modest_server_account_set_option_security): Added this API for getting and setting the security 
1701         and secure-auth settings.
1702         
1703         * src/maemo/modest-account-settings-dialog.h:
1704         * src/maemo/modest-account-settings-dialog.c:
1705         (modest_account_settings_dialog_finalize), (check_data),
1706         (on_response): Store the original title as well as the name, to avoid unnececessary warnings 
1707         about changing titles.
1708         (modest_account_settings_dialog_set_account_name): Load the security and secure-auth settings.
1709         (save_configuration): Save the security and secure-auth settings.
1710
1711         * src/modest-conf.c: (modest_conf_set_list): Get the list after setting it, to show that this 
1712         is failing sometimes (though reporting success). I fear I may need to debug gconf to fix this.
1713
1714 2007-04-17  Murray Cumming  <murrayc@murrayc.com>
1715
1716         * src/modest-defs.h: 
1717         * src/modest-account-mgr.c:
1718         (modest_account_mgr_add_server_account):
1719         Added and used defines for the options key and value pair strings, 
1720         that are used so far, though they do not seem to correspond to anything in our 
1721         UI specs or ModestProtocol enum.
1722         
1723         * src/modest-account-mgr-helpers.h:
1724         * src/modest-account-mgr-helpers.c:
1725         (compare_option_strings_for_name),
1726         (modest_server_account_data_get_option_value),
1727         (modest_server_account_data_get_option_bool),
1728         (modest_account_mgr_get_server_account_option):
1729         Added helper functions for parsing the options GSList.
1730
1731 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1732
1733         * src/modest-account-mgr-helpers.c: Clarified the documentation to say that the initial 
1734         display name is based on the supplied account name.
1735         * src/modest-account-mgr.c:
1736         * src/modest-account-mgr.h: Added modest_account_mgr_account_with_display_name_exists(), 
1737         with an inefficient, but good-enough, implementation.
1738         
1739         * src/maemo/easysetup/modest-easysetup-wizard.c:
1740         (create_page_account_details), (on_before_next), (create_account): 
1741         Check for existing display names rather than (non-user-visible) account names, and just 
1742         create and set a unique account name at the end.
1743         
1744         * src/maemo/modest-account-settings-dialog.c:
1745         (modest_account_settings_dialog_init),
1746         (modest_account_settings_dialog_set_account_name),
1747         (create_page_incoming): Show the display name, instead of the account name.
1748         (on_response): Do some (not all) extra checks, as in the UI spec.
1749         (save_configuration): Save the display name if it was changed.
1750
1751 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1752
1753         * po/en_GB.po: Added needed logical ID and translation.
1754         * src/widgets/modest-account-view.c: (on_account_default_toggled),
1755         (init_view): Made the is-default column clicking work.
1756
1757 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1758
1759         * configure.ac:
1760         * src/maemo/easysetup/Makefile.am:
1761         * src/maemo/easysetup/modest-easysetup-wizard.c:
1762         (modest_easysetup_wizard_dialog_init):
1763         * src/maemo/easysetup/provider-data-test.keyfile:
1764         * src/maemo/easysetup/provider-data.keyfile: 
1765         Moved the provider data file to the new modest-providers-data package and used it from there.
1766
1767 2007-04-16  Murray Cumming  <murrayc@murrayc.com>
1768
1769         * src/modest-local-folder-info.c:
1770         (modest_local_folder_info_get_type_display_name): Use _() to actually get the translated string. 
1771         N_() was already used on the static strings, but this just marks it for translation without 
1772         using the translation.
1773
1774 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1775
1776         * src/maemo/modest-account-settings-dialog.c:
1777         (create_page_incoming),
1778         (modest_account_settings_dialog_set_account_name): 
1779         Added comments about the need for new API in ModestAccountMgr to handle the authentication 
1780         and secure-connection stuff that is stored in the options GSList* with hard-coded names.
1781         I will do this if nobody else gets there first.
1782
1783 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1784
1785         * src/maemo/modest-account-settings-dialog.c: (save_configuration): 
1786         Saved much of the incoming and outgoing data too, though I cannot yet see how to 
1787         save the security stuff.
1788
1789 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1790
1791         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): 
1792         Set the email address and user fullname, which I now see must be 
1793         done separately.
1794         
1795         * src/maemo/modest-account-settings-dialog.h:
1796         * src/maemo/modest-account-settings-dialog.c:
1797          (on_response),
1798         (modest_account_settings_dialog_set_account_name): Show the email address, fullname, 
1799         leave-on-server and authentication.
1800         (save_configuration): Save most of the non-server-account specific stuff, but I don't see 
1801         how to do the rest.
1802
1803 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1804
1805
1806         * src/maemo/modest-account-settings-dialog.c:
1807         * src/maemo/modest-account-settings-dialog.h:
1808         Most (but not all) of the widgets are now present as specified by the UI spec.
1809         No changes are yet saved, and some details are not properly shown yet.
1810         
1811         * po/en_GB.po: Added translations for logical IDs used by the Account Settings dialog.
1812
1813 2007-04-06  Murray Cumming  <murrayc@murrayc.com>
1814
1815         * src/maemo/Makefile.am:
1816         * src/maemo/modest-account-settings-dialog.c:
1817         * src/maemo/modest-account-settings-dialog.h: The beginnings of the dialog to edit 
1818         an existing account. Doesn't do much yet.
1819         
1820         * src/maemo/modest-account-view-window.c: (on_edit_button_clicked): 
1821         Open the accounts settings dialog when Edit is clicked.
1822
1823 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1824
1825         * src/maemo/easysetup/Makefile.am:
1826         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
1827         (load_from_file): 
1828         * src/maemo/easysetup/modest-easysetup-wizard.c:
1829         (modest_easysetup_wizard_dialog_init):
1830         Try to get the source directory from the build system,
1831         instead of hard-coding "./" into the source code, when opening our local 
1832         copies of the configuration files.
1833         But this still fails when opening the wizard from the Accounts window, 
1834         maybe because the working directory seems to change at runtime.
1835         So the wizard will fail the second time unless you copy the files into their 
1836         proper locations - see the stdout warnings for the paths.
1837         
1838         (create_page_account_details),(on_before_next): 
1839         Check for existing non-server accounts instead of server accounts, 
1840         so the default account name is useful again, and to prevent trying to 
1841         recreate accounts.
1842         
1843         * src/maemo/modest-account-view-window.c: (on_new_button_clicked): 
1844         Show the wizard when New is clicked.
1845         
1846         * src/widgets/modest-account-view.c: (on_account_default_toggled),
1847         (init_view): Show the column headers, and show the columns that are 
1848         specified in the UI specs. However, something in Maemo's GTK+ prevents 
1849         us from handling the GtkCellRendererToggle::toggled signal, so we cannot 
1850         change the default account. This is despite unsetting the special properties.
1851
1852 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1853
1854         * docs/reference/modest-design.sgml: Corrected spelling mistake.
1855         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): 
1856         Create the 2 server accounts and then create the account, using the names of the 2 server accounts.
1857         This seems to be how this should be used. If it is, then I will update the AccountMgr documentation 
1858         to make that clearer.
1859         * src/modest-account-mgr.h: Corrected the modest_account_mgr_search_server_account() documentation.
1860
1861 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1862
1863         * src/maemo/modest-account-view-window.c:
1864         (modest_account_view_window_init),
1865         (modest_account_view_window_new):
1866         Use the same buttons as specified in the 
1867         UI spec. Add the widgets to the vbox and action_area instead of just assigning them to 
1868         the existing widgets, which never had a chance of working.
1869         Put the ModestAccountView treeview in a scrolled window.
1870         Do not repeat the initialization in both _init() and _new().
1871         
1872         * src/widgets/modest-account-view.c: (update_account_view):
1873         Add a warning about modest_account_mgr_account_names() returning NULL, which is why 
1874         this widget and window shows no accounts.
1875         
1876         * po/en_GB.po: Added translations needed for the dialog button logical IDs.
1877         
1878 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1879
1880         * src/maemo/easysetup/modest-easysetup-wizard.c:
1881         (set_default_custom_servernames): Avoid a dereference of a destroyed widget.
1882         (create_account): Do a sanity check, showing that modest_account_mgr_account_names() 
1883         returns NULL after modest_account_mgr_add_server_account() returned TRUE, 
1884         which seems wrong.
1885         
1886         * src/maemo/modest-main-window-ui.h: Specify the callback for the Accounts menu item.
1887         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts): Open the wizard if no 
1888         accounts exist yet, as in the UI spec.
1889         
1890         * src/modest-account-mgr.h: Add TODO comment about a possible memory leak.
1891
1892 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1893
1894         * src/maemo/Makefile.am:
1895         * src/maemo/modest-connection-specific-smtp-edit-window.c:
1896         * src/maemo/modest-connection-specific-smtp-edit-window.h: 
1897         New window for editing connection-specific smtp details.
1898         Not fully implemented.
1899
1900         * src/maemo/modest-connection-specific-smtp-window.c:
1901         (modest_connection_specific_smtp_window_finalize) :
1902         unref the tree model.
1903         (on_button_edit): Show the edit window.
1904
1905 2007-04-05  Murray Cumming  <murrayc@murrayc.com>
1906
1907         * src/Makefile.am: Change sequence of sub-libraries, which fixed an undefined symbol 
1908         error for me.
1909         
1910         * src/maemo/Makefile.am:
1911         * src/maemo/modest-connection-specific-smtp-window.c:
1912         * src/maemo/modest-connection-specific-smtp-window.h:
1913         New window for showing the list of connections, for connection-specific 
1914         SMTP servers. Not fully implemented, because it needs an enhancement to TnyMaemoDevice.
1915         * src/maemo/easysetup/modest-easysetup-wizard.c:
1916         (create_page_custom_outgoing): Show the new window when the button is clicked.
1917
1918 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1919
1920         * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account):
1921         * src/maemo/easysetup/modest-presets.c: (modest_presets_new):
1922         * src/maemo/modest-msg-edit-window.c:
1923         (modest_msg_edit_window_insert_image):
1924         * src/modest-conf.c: (modest_conf_key_escape):
1925         * src/modest-mail-operation.c:
1926         (modest_mail_operation_send_new_mail):
1927         * src/modest-ui-actions.c: (modest_ui_actions_on_accounts),
1928         (modest_ui_actions_on_new_account):
1929         * src/widgets/modest-attachment-view.c: (update_filename_request):
1930         * src/widgets/modest-mail-header-view.c: 
1931         Corrected warnings that were breaking the build, by commenting out unused variables, 
1932         and a function, and by including a header.
1933
1934 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1935
1936         * configure.ac: Define MODEST_PLATFORM_MAEMO and MODEST_PLATFORM_GNOME in config.h, 
1937         so we can #ifdef around platform-specific code when necessary.
1938         * src/modest-ui-actions.c: (modest_ui_actions_on_new_account): Use MODEST_PLATFORM_MAEMO 
1939         to allow this to build for the GNOME platform too.
1940
1941 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1942
1943         * src/maemo/easysetup/modest-easysetup-wizard.c:
1944         Added util_increment_name() and used it in create_page_account_details() 
1945         to make sure that the default account name is always a new name.
1946         
1947         (modest_easysetup_wizard_dialog_init), 
1948         (set_default_custom_servernames): Some minor memory management fixes.
1949
1950 2007-04-04  Murray Cumming  <murrayc@murrayc.com>
1951
1952         * Makefile.am:
1953         * configure.ac:
1954         * src/modest-runtime.c: (init_i18n): Restored the translation 
1955         infrastructure, so that GETTEXT_PACKAGE and MODEST_LOCALE_DIR 
1956         are defined in config.h, and the translations are installed.
1957         
1958         * src/maemo/easysetup/: Include config.h so that GETTEXT_PACKAGE 
1959         is defined for translation.
1960
1961 2007-04-03  Murray Cumming  <murrayc@murrayc.com>
1962
1963         * src/maemo/easysetup/modest-easysetup-country-combo-box.c:
1964         (load_from_file):
1965         * src/maemo/easysetup/modest-easysetup-wizard.c:
1966         (modest_easysetup_wizard_dialog_init):
1967         * src/maemo/easysetup/modest-presets.c: (modest_presets_new): 
1968         Use realistic paths (though they should use $prefix generically) to the 
1969         mcc_mapping and provider-data.keyfile files which might work when they 
1970         are installed by the future version of the operator-wizard package, 
1971         and then fallback to paths in our source code, with an explanatory 
1972         warning.
1973
1974 2007-04-03  Murray Cumming  <murrayc@murrayc.com>
1975
1976         * configure.ac:
1977         * src/Makefile.am:
1978         * src/maemo/Makefile.am:
1979         * src/maemo/easysetup/: Added files from the previously-exernal 
1980         osso-modest-easysetup.
1981         * src/maemo/modest-main-window-ui.h:
1982         * src/modest-ui-actions.c: 
1983         * src/modest-ui-actions.h:
1984         Added modest_ui_actions_on_new_account() as a signal handler for the 
1985         New Account menu item. It shows the easysetup wizard.
1986         * po/en_GB.po: Added additional needed logical IDs and translations.
1987         
1988 Started ChangeLog2 file, because I cannot work without a ChangeLog. murrayc.
1989 Apparently ChangeLog is not used for some vague Nokia legal reasons.
1990