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