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