Commit Graph

44 Commits

Author SHA1 Message Date
91aee2a805 Add a gravatar module.
This is a new EPhotoSource that obtains images from gravatar.com.
2013-04-25 20:17:20 -04:00
822fcbbd0f Add contact-photos module.
This encapsulates the EContactPhoto look up feature that was previously
built into EPhotoCache.  It's now implemented as an EPhotoSource -- one
per address book.  One advantage of this implementation is that address
books are now queried concurrently rather than serially.

EPhotoCacheContactLoader is an EPhotoCache extension that takes care of
adding and removing EPhotoSources for available address books.
2013-04-23 20:06:01 -04:00
d9fc5e4912 Remove backward-compatibility cruft for goa-1.0 < 3.8.
In particular, GOA's Google provider uses OAuth 2.0 now, so we can drop
the OAuth 1.0a support in CamelSaslXOAuth which was GMail-specific, and
with it the entire "online-accounts" module in Evolution.  Evolution no
longer links to libgoa-1.0 at all.
2013-04-16 19:00:26 -04:00
8a71509ee4 Add a "settings" module.
Collect all the "config" extensions from the "addressbook", "calendar",
and "mail" modules into one place.  These extensions typically just bind
GObject properties of extensible classes to app-specific GSettings keys.
2013-01-20 20:56:16 -05:00
c418c7d69a Remove the "imap-features" module.
This only worked with the legacy IMAP backend, which has now been
removed per bug 665371.
2012-12-24 09:59:07 -05:00
5437fa7c35 Bug #684447 - Check for highlight during configure.
If the highlight program cannot be found width AC_PATH_PROGS,
configure will abort with an error message.

You can either
a) install highlight
b) specify the patch with HIGHLIGHT=/path/to/highlight
c) pass --disable-text-highlight to configure to exclude the module

This also makes text-highlight module to fallback to text/plain
formatter when highlight program would crash or fail to ensure
the content is delivered to user.
2012-10-08 23:27:29 +02:00
0d0654c19f Check for SpamAssassin during configure.
If the spamassassin and sa-learn programs cannot be found with
AC_PATH_PROG, configure will abort with an error message.

You can then either:
a) install the SpamAssassin software
b) specify the path with SPAMASSASSIN=/path/to/spamassassin and/or
   SA_LEARN=/path/to/sa-learn
c) pass --disable-spamassassin to configure to exclude the module

This also drops the "spamc" and "spamd" GSettings keys.
2012-09-30 23:26:23 -04:00
b46da7735a Check for Bogofilter during configure.
If the bogofilter program cannot be found with AC_PATH_PROG, configure
will abort with an error message.

You can then either:
a) install the Bogofilter software
b) specify the path with BOGOFILTER=/path/to/bogofilter
c) pass --disable-bogofilter to configure to exclude the module
2012-09-30 23:26:23 -04:00
e9c96b8b79 Remove Mono and Python EPlugin bindings.
EPlugin is deprecated.  These bindings have never been used for anything
and they're never going to be used at this point.  Remove the dead weight.
2012-06-18 20:48:32 -04:00
9311914746 Mail formatter rewrite - convert some plugins to modules
audio-inline, itip-formatter, prefer-plain, tnef-attachments
and vcard-inline plugins were converted to modules so that they
can fit into concept of the new formatter.

Every module still installs .eplug file, because there is no
suitable API at the moment to register plugins to the plugins dialog
and to extend the Preferences dialog.
2012-06-06 15:29:38 +02:00
48e680cdf3 Add 'mail-config' module.
This breaks a good chunk of logic out of EMAccountEditor and hopefully
makes it less brittle.  Because honestly, every time I fix one thing in
EMAccountEditor it breaks three other things.  It's unmaintainable.
2012-06-02 23:00:42 -04:00
209e47b133 Add 'imap-features' module.
Adds an extra page to EMailConfigNotebook for 'imap' accounts.

Replaces the 'imap-features' plugin.
2012-06-02 23:00:42 -04:00
3efee090f0 Add 'cal-config-webcal' module.
Registers the "On The Web" backend in ECalSourceConfig widgets.

Replaces the 'calendar-http' plugin.
2012-06-02 23:00:42 -04:00
d21230f743 Add 'cal-config-weather' module.
Registers the "Weather" backend in ECalSourceConfig widgets.

Replaces the 'calendar-weather' plugin.
2012-06-02 23:00:42 -04:00
c030e2f0a5 Add 'cal-config-google' module.
Registers the "Google" backend in ECalSourceConfig widgets.

Replaces the 'google-account-setup' plugin.
2012-06-02 23:00:41 -04:00
1ad9dfdc9f Add 'cal-config-contacts' module.
Registers the "Contacts" backend in ECalSourceConfig widgets.
2012-06-02 23:00:41 -04:00
691ab73cd4 Add 'cal-config-caldav' module.
Registers the "CalDAV" backend in ECalSourceConfig widgets.

Replaces the 'caldav' plugin.
2012-06-02 23:00:41 -04:00
cb1220aff2 Add 'cal-config-local' module.
Registers the "On This Computer" backend in ECalSourceConfig widgets.

Replaces the 'calendar-file' plugin.
2012-06-02 23:00:41 -04:00
8b03b8a20c Add 'book-config-webdav' module.
Registers the "WebDAV" backend in EBookSourceConfig widgets.

Replaces the 'webdav-account-setup' plugin.
2012-06-02 23:00:41 -04:00
4c9c82d884 Add 'book-config-ldap' module.
Register the "On LDAP Servers" backend in EBookSourceConfig widgets.
2012-06-02 23:00:41 -04:00
a4607aee99 Add 'book-config-google' module.
Register the "Google" backend in EBookSourceConfig widgets.

Partially replaces the 'google-account-setup' plugin.
2012-06-02 23:00:41 -04:00
305b51db24 Add 'book-config-local' module.
Registers the "On This Computer" backend in EBookSourceConfig widgets.

Replaces the 'addressbook-file' plugin.
2012-06-02 23:00:41 -04:00
cd3759369b Add 'backup-restore' module.
Replaces the 'backup-restore' plugin.
2012-06-02 23:00:41 -04:00
bfb1d53650 Drop the ConnMan/NetworkManager/WindowsSENS modules.
We rely on GNetworkMonitor for network availability now.

Not our problem anymore.  \o/
2012-03-31 15:48:01 -04:00
6d2c382788 WebKit port - port formatter and mail module 2012-03-28 18:38:25 +02:00
c4fedc0494 Split MDN handling into a module. 2011-11-22 00:12:36 -05:00
8dfd4278a7 Convert junk filtering EPlugins to EExtensions.
We now have a proper junk mail filtering API.  All junk filtering
extensions must subclass EMailJunkFilter for user preferences and
availability testing, and implement the CamelJunkFilter interface
for the actual junk filtering and learning operations.

The bogofilter module should be feature-equivalent to its former
EPlugin.  The spamassassin module is far more complex.  It's nearly
feature-equivalent to its former EPlugin, but I ditched the spamd
respawning code since it seemed unnecessary for a mail client to
have to deal with.  If there's a huge outcry from users about it
I'll reluctantly put it back, but I don't expect one.

This gets us a step closer to killing off EConfig, and eventually
the EPlugin framework itself.
2011-07-13 22:46:26 -04:00
dd6e64ad30 Prototype an online-accounts module.
Integrates with the GNOME Online Accounts service.

Creates Evolution sources for a GOA Google account and keeps them
synchronized.  Also registers a new CamelSaslXOAuth class for use
with GMail.

Authentication of Google Calendars and Google Contacts using OAuth
is still under development.
2011-06-24 19:05:15 -04:00
b674a37a38 Add an EOfflineAlert module.
This module posts an alert to the first EShellWindow when starting
offline, and also posts an alert when the network connection drops.

We get frequent questions on the mailing list from users not realizing
Evolution is starting in offline mode, so this is meant to help address
that confusion.
2010-10-18 12:32:36 -04:00
c23de2688e Convert plugin-manager to an EExtension.
How ironic.
2010-09-13 08:28:59 -04:00
7ecdf26069 Add composer-autosave to SUBDIRS. 2010-09-03 22:00:32 -04:00
7959b11113 Convert "startup-wizard" to an EExtension.
Convert the "startup-wizard" EPlugin to an EExtension, and fix up the
importing UI a bit (but it still needs a lot more love).  Importing
progress is now shown directly in the GtkAssistant window.

Define a new EConfigItem type (E_CONFIG_PAGE_PROGRESS) for creating
progress pages in a GtkAssistant.

Also, change EMAccountEditor semantics slightly: you now have to call
e_config_create_window() manually after creating a new EMAccountEditor
instance.  This allows extra EConfigItems (specifications for the window
content) to be added manually before the window is created.
2010-06-02 16:36:11 -04:00
c9ec8c3f4d Merge branch 'express2' 2010-05-26 13:09:33 -04:00
0b60ec7c89 Convert "default-mailer" plugin to an extension. 2010-05-13 09:21:21 -04:00
a16f08974d Merge gnome-2-30 into express2 to get bugfixes
Note that express2 got some documentation for EExtensible and friends,
and that documentation is not in gnome-2-30 yet.  We need to cherry-pick
those commits into gnome-2-30 and elsewhere.
2010-04-09 12:21:32 -05:00
d358da9481 [win32] Implement network status detection
The implementation is done using System Event Notification Service
by implementing ConnectionMade ConnectionMadeNoQOCInfo and
ConnectionLost methods of ISensNetwork interface.

Make the subscription to the network status notification receive
the event only if the ownerof the subscription is logged on to
the same computer as the publisher. This makes this module work
on Windows Vista and Windows 7 with normal user account.

Don't try to build Windows SENS when not building for Windows.
Extract the relevant COM structs and typedefs from mingw-w64 headers
to allow to build the module with mingw.org toolchain and fix
build breakages with Microsoft compilers.
2010-04-07 23:44:16 +02:00
cd7fadfcdb Convert NetworkManager integration to an EShell extension.
This demonstrates how to extend EShell without having to modify and
recompile e-shell.c.  If NetworkManager integration is enabled, the
extension is loaded automatically when the EShell is created.

The same pattern can be applied to integrate other network monitoring
software like ConnMan or Microsoft's Wireless Zero Configuration.
2010-04-07 13:09:42 -04:00
6416086f14 Add ConnMan support (words fail me ...)
Conflicts:

	configure.ac
	modules/Makefile.am
2010-04-07 12:22:09 +01:00
b674497bcc Convert NetworkManager integration to an EShell extension.
This demonstrates how to extend EShell without having to modify and
recompile e-shell.c.  If NetworkManager integration is enabled, the
extension is loaded automatically when the EShell is created.

The same pattern can be applied to integrate other network monitoring
software like ConnMan or Microsoft's Wireless Zero Configuration.
2010-04-07 12:13:02 +01:00
342fa27bb7 Add ConnMan support (words fail me ...) 2010-03-25 19:53:12 +00:00
8a8e79622e [win32] Implement network status detection
The implementation is done using System Event Notification Service
by implementing ConnectionMade ConnectionMadeNoQOCInfo and
ConnectionLost methods of ISensNetwork interface.

Introduces C++ dependency for Windows port only
2010-03-23 18:54:37 +01:00
6c569e64af Convert NetworkManager integration to an EShell extension.
This demonstrates how to extend EShell without having to modify and
recompile e-shell.c.  If NetworkManager integration is enabled, the
extension is loaded automatically when the EShell is created.

The same pattern can be applied to integrate other network monitoring
software like ConnMan or Microsoft's Wireless Zero Configuration.
2010-03-20 11:49:46 -04:00
32f545cdf0 Simplify EPlugin loading at startup.
- Require all EPlugin and EPluginHook subtypes be registered before
  loading plugins.  This drastically simplifies the EPlugin/EPluginHook
  negotiation.

- Turn most EPluginHook subtypes into GTypeModules and register their
  types from an e_module_load() function (does not include shell hooks).

- Convert EPluginLib and the Mono and Python bindings to GTypeModules
  and register their types from an e_module_load() function, and kill
  EPluginTypeHook.
2009-08-29 17:23:20 -04:00
f0d3f3afdf Radically reorganize source code.
- Collect all shell modules into a new top-level 'modules' directory:

      $(top_srcdir)/modules/addressbook
      $(top_srcdir)/modules/calendar
      $(top_srcdir)/modules/mail

  Nothing is allowed to link to these, not plugins nor other modules.

  THIS SOLVES BUG #571275 AND OPENS THE DOOR TO PORTING TO MAC OS X.

- Mimic the libevolution-mail-shared library from master (except drop
  the "shared" suffix) and have libevolution-mail-importers and all
  mail-related plugins link to it.

- Discard the a11y subdirectories and have the files live alongside
  their counterpart widgets.
2009-06-24 18:29:22 -04:00