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