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