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