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