Commit Graph

52 Commits

Author SHA1 Message Date
d88c38abeb Rework handling of GOA mail.
Disabling the mail part of an online account through the Control Center
panel will now remove the CamelService from the EMailSession in addition
to disabling the account/identity/transport ESources, causing it to be
delisted from the account list in Preferences.

Furthermore, hide the Enabled check box for accounts linked to GOA in
Preferences.  The collection ESource for these accounts can no longer
be disabled through Evolution; all such account manipulation must be
done through the Control Center panel.

Lastly, display an icon next to accounts linked to GOA in Preferences.

* Might be nice to show the actual provider icon instead of the generic
  Online Accounts icon from the Control Center, but need to think about
  how best to do that.  Don't want a GOA dependency in core Evolution.
  Maybe ESourceCollection should grow a GIcon property for the online-
  accounts module in the registry service to set?
2012-07-15 18:19:39 -04:00
fcca366ecc mail_session_add_service(): Make display-name binding one-way.
We're leaking CamelService references when we remove a CamelService
from a CamelSession.  I don't yet know where or how.

If we remove a CamelService without finalizing the corresponding ESource,
and then add a new CamelService with the same UID, the ESource will have
a bidirectional "display-name" binding to multiple CamelService instances.
This creates an endless cascade of "notify" signals as soon as any of the
bound "display-name" properties change.

Until I can fix the leaking CamelService references, make the binding
one-way: ESource -> CamelService.  This means the ESource's display name
is authoritative, and camel_service_set_display_name() MUST NOT be called
explicitly or else it will become out-of-sync with the ESource.
2012-07-15 16:08:41 -04:00
fe2961aa50 mail_session_add_from_source(): Warn if backend name is unset.
Even send-only accounts should have a backend name of "none".
2012-07-15 11:07:16 -04:00
0c881254de Bug #223309 - Add "Include Subfolders" to "Search Folder Sources" 2012-07-11 16:38:27 +02:00
20973f9281 Bug #548778 - Use original location when replying in Search Folder 2012-07-10 19:21:28 +02:00
8ca9931144 Bug #677695 - Freeze on quit in emu_free_mail_cache() 2012-07-10 18:21:34 +02:00
a3bd7ff42f Add "auto-update" option to Search Folder Editor 2012-07-10 17:02:20 +02:00
82e980001b Always notify about finished updated_folders() call 2012-07-10 10:55:16 +02:00
a0bc647f07 Remove mail_expunge_folder().
Use e_mail_folder_expunge() instead.
2012-07-09 08:44:22 -04:00
c44c65e85f Add e_mail_folder_expunge().
To replace mail_expunge_folder().
2012-07-09 08:44:22 -04:00
0785722478 Use folder display name in status messages when possible. 2012-07-09 08:44:22 -04:00
5bd9b58290 Remove mail_refresh_folder().
Use e_mail_reader_refresh_folder() instead.
2012-07-09 08:44:22 -04:00
9c79788481 Add e_mail_reader_unsubscribe_folder_name().
Replaces e_mail_session_unsubscribe_folder().
2012-07-09 08:44:22 -04:00
5c53935ab2 Adapt to CamelStore API change.
compare_folder_name() -> equal_folder_name()
2012-07-06 22:14:20 -04:00
56333d439b Bug #677604 - Critical warnings on evolution start 2012-07-02 18:32:00 +02:00
cc8bf823ec Coding style and whitespace cleanup. 2012-06-24 20:31:43 -04:00
e439e17e2e Make em_utils_in_addressbook() cancellable 2012-06-14 13:01:57 +02:00
4f47f662f6 Bug #674887 - Hang on sender's photo lookup 2012-06-14 12:14:45 +02:00
a36294e7c7 Bug 677995 - Asks password for disabled mail account
Remove mail_folder_cache_service_added() and rely instead on
mail_folder_cache_service_enabled()/disabled().  Despite the function
names the folder cache doesn't actually care about enabled status, it
simply maintains a set of CamelStores to monitor.  We should refactor
the folder cache API to better reflect that.

EMailAccountStore always immediately follows a "service-added" signal
emission with either a "service-enabled" or "service-disabled" emission,
which will add or remove the service from the folder cache.
2012-06-13 11:19:56 -04:00
b4fbbde6ab Remove "enable-local" and "enable-vfolders" GSettings key.
We have built-in ESources for the 'local' and 'vfolder' mail stores,
and can now track their enabled state as we would any other mail store.
2012-06-08 13:47:22 -04:00
77645577f5 CamelNullStoreClass: Override settings_type.
CamelStoreClass bumps the settings_type to CAMEL_TYPE_STORE_SETTINGS,
which has a filter-inbox property.  But we don't want ANY settings in
a CamelNullStore, so revert the settings_type to CAMEL_TYPE_SETTINGS.
2012-06-07 19:12:29 -04:00
ab69060ca3 EMailSession: Use e_source_camel_generate_subtype().
Use e_source_camel_generate_subtype() to register an ESourceCamelNone
class based on the newly-registered "none" CamelProvider.

e_source_camel_register_types() won't pick up the new provider if it was
already called prior to the provider being registered.  That might be a
bug... I'm not sure yet.  The Camel/ESource integration is kinda messy.
2012-06-05 14:48:40 -04:00
2a39437ee9 Adapt to single-include E-D-S libraries. 2012-06-03 15:14:03 -04:00
3449e5fcc7 Adapt mail to the new ESource API. 2012-06-02 23:00:40 -04:00
93178424f2 Bug #673946 - Cannot delete search folders 2012-05-31 11:50:44 +02:00
c88d317030 Adapt to vFolder changes from evolution-data-server 2012-05-30 18:46:49 +02:00
98f39d7ee0 Adapt to CamelService API changes.
em_utils_connect_service_sync() and em_utils_disconnect_service_sync()
are no longer needed.  CamelService itself now effectively does what
these functions were doing.
2012-05-19 13:35:28 -04:00
53a3d2f4e1 Use g_simple_async_result_set_check_cancellable().
Always call it immediately after g_simple_async_result_new().
2012-05-13 09:40:23 -04:00
89777f0726 Whitespace cleanups. 2012-05-13 09:15:42 -04:00
7981771ea6 Bug #674381 - Show contact photo from address book doesn't work 2012-04-27 18:26:49 +02:00
7950d6a0c6 Adapt to libedataserver[ui] changes. 2012-04-21 17:07:15 -04:00
785515dcbd Bug #465076 - INBOX confusion with outbox 2012-04-19 13:46:56 +02:00
3d962efe57 Remove forgotten debug prints 2012-04-18 12:48:42 +02:00
9e541010cb Bug #667046 - Outgoing filter cannot override used Sent folder 2012-04-17 15:24:26 +02:00
4e2f3534ae Bug #672916 - Spam is not detected automatically 2012-04-02 12:41:21 +02:00
299521f02c Whitespace cleanup.
Replace 8-space indentation with tab characters, and various other
automated cleanups.
2012-04-01 23:15:38 -04:00
afb3db076d Add ability to specify INBOX for non-storage type accounts. Email daemon
allows to store mails in individual INBOX rather than a common one.
2012-03-29 11:31:09 +05:30
ad543e6684 Fix more compiler warnings. 2012-03-03 15:22:13 -05:00
b4f895265d Add missing linker flags. 2012-03-03 14:11:12 -05:00
5234efadbd Whitespace cleanups. 2012-03-03 10:24:38 -05:00
a8fc75d4f3 Fix some "unused-but-set-variable" warnings. 2012-03-03 09:02:34 -05:00
18593a0fb9 Move vfolders to libemail-engine and rest as mail-vfolder-ui. It all works and
the daemon can now start the vfolder storage without bothering much with the
UI.
2012-03-03 09:02:34 -05:00
23f5773903 Coding style and whitespace cleanup. 2012-02-20 10:04:25 -05:00
14063dfbe5 Bug #659394 - Missing plural handling for "Failed to send %d of %d messages" 2012-02-16 10:37:09 +01:00
effaa44b46 Bug #670014 - Remove-duplicates reads all messages into memory 2012-02-16 10:10:16 +01:00
1600064022 Bug #591436 - Add -avoid-version to LDFLAGS 2012-02-15 11:22:21 +01:00
f2e87c8741 Fix libemail-engine.so install path.
Keep this in Evolution's private library directory until the APIs are
fully documented and we begin using libtool versioning on the library.
2012-02-07 09:05:39 -06:00
df3495a6ec Bug 667576 - Junk between messages after saving an mbox file 2012-02-02 09:20:26 -05:00
8fb84dda12 e-mail-store-utils.c: Use the service's display name in status messages.
The display name is a user-provided name for the service.  We should
be using that in all status messages the refer to the service by name.
2012-01-30 11:13:45 -05:00
d75f6c6364 Bug 668479: Missing transport-only accounts in Preferences
Evolution kinda sorta supports multiple identities by allowing users
to set up so-called "transport-only" accounts by choosing "None" for
the account type.

Add a CamelStore subclass for those types of accounts so they get
added to EMailAccountStore.  It's just a stupid hack to keep another
stupid hack working, but this should sustain us until we can support
multiple identities FOR REAL.
2012-01-24 22:21:59 -05:00