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