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