Commit Graph

372 Commits

Author SHA1 Message Date
99a875edae Bug #515004 - Allow toggling between text and HTML view of mail 2012-06-26 13:40:59 +02:00
94daae3dba Remove the last remaining usage of GConf 2012-06-15 09:04:08 +02:00
5b8340563c Mail formatter rewrite
All mail-parsing and formatting code has been moved to em-format.
Parsing is handeled by EMailParser class, formatting by EMailFormatter.
Both classes have registry which hold extensions - simple classes
that do actual parsing and formatting. Each supported mime-type
has it's own parser and formatter extension class.
2012-06-06 15:27:19 +02:00
02d4410fc2 Remove local mail autoconfiguration data.
We're using version 1.1 of Mozilla's ClientConfig format now.  These
files are all version 1.0.  But even aside from that, offline autoconfig
is not compelling enough to warrant maintaining two copies of this data.
2012-06-03 21:31:46 -04:00
6135faaf1e Remove mail-guess-servers.[ch].
Obsoleted by EMailAutoconfig.
2012-06-03 21:27:44 -04:00
3449e5fcc7 Adapt mail to the new ESource API. 2012-06-02 23:00:40 -04:00
d571c56260 Bug #674272 - Contacts preview differs with mailer running and not
This splits the giant EMailRequest to individual EFileRequest, EStockRequest, EHTTPRequest and EMailRequest,
making the first two available globally from e-utils, the othe two are loaded only with mailer,
since no other component uses them.
2012-04-23 08:40:20 +02:00
76c3cb95c7 Remove EMSyncStream.
Not needed now that Evolution uses WebKit.

Been wanting to get rid of this for years...
2012-04-06 00:16:58 -04:00
6d2c382788 WebKit port - port formatter and mail module 2012-03-28 18:38:25 +02:00
b4f895265d Add missing linker flags. 2012-03-03 14:11:12 -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
e758de5b1d Redo Filters/Search folder editors to use a shared non ui based library for
making search folders running remotely.
2012-03-03 09:02:34 -05:00
1600064022 Bug #591436 - Add -avoid-version to LDFLAGS 2012-02-15 11:22:21 +01:00
61ae36351b Introduce libemail-engine and libemail-utils.
These libraries are bound for E-D-S so they live at the lowest layer of
Evolution for now -- even libeutil can link to them (but please don't).

This is the first step toward moving mail handing to a D-Bus service.
2012-01-18 23:48:47 -05:00
7c0c40f833 Reorder accounts by drag-and-drop.
This implements https://bugzilla.gnome.org/show_bug.cgi?id=663527#c3.

Account reordering is now done by drag-and-drop instead of up/down
buttons.

Turned out to be a wee bit more complicated than I initially thought.

This scraps EAccountManager and EAccountTreeView and replaces them with
new classes centered around EMailAccountStore, which EMailSession owns.

EMailAccountStore is the model behind the account list in Preferences.
The folder tree model now uses it to sort its own top-level rows using
gtk_tree_path_compare().  It also broadcasts account operations through
signals so we don't have to rely so heavily on EAccountList signals,
since EAccountList is going away soon.

Also as part of this work, the e-mail-local.h and e-mail-store.h APIs
have been merged into EMailSession and MailFolderCache.
2011-12-10 21:34:19 -05:00
f9ffebc2f7 Mail widget cleanups. 2011-11-22 00:12:36 -05:00
7f962687ba Bug #636214 fetch configuration details from server
Code changes
2011-11-09 21:16:12 +05:30
1f38f4d92c Simplify library dependency flags.
We have a confusing array of nearly-identical CFLAGS/LIBS definitions in
configure.ac.  Time to simplify.  Instead let's just have one definition
that includes all the libraries provided by Evolution-Data-Server (incl.
Camel).  That, in combination with GNOME_PLATFORM, gives us most of what
we need for compliation and linking, and we can sprinkle definitions for
additional library dependencies in Makefile.am's as needed.
2011-10-04 22:27:14 -04:00
aa3b6c57a5 Fix enum generation problems in glib-gen.mak.
Don't use pattern rules like %-enumtypes.h anymore because it matches
installed header files like camel-enumtypes.h, so you get very strange
things happening during the build like:

    .../camel/camel-enumtypes.h: e-util-enums.h
            glib-mkenums ... $^ > $@

when e-util-enums.h has a newer timestamp than camel-enumtypes.h.

Instead, we'll use another variable name -- glib_enum_output -- to
replace the %-enumtypes pattern rules like so:

    $(glib_enum_output).h: $(glib_enum_headers)
            glib-mkenums ... $^ > $@

    $(glib_enum_output).c: $(glib_enum_headers)
            glib-mkenums ... $^ > $@

Also use $(AM_V_GEN) to get cleaner looking output while building.
2011-08-27 08:07:52 -04: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
a8bde44b69 Bug #436914 - Reply to inline GPG quotes raw GPG message 2010-12-13 16:30:21 +01:00
2636da7dac Kill mail_store_set_offline().
Replace it with new async functions:

  e_mail_store_go_offline()
  e_mail_store_go_offline_finish()

  e_mail_store_go_online()
  e_mail_store_go_online_finish()
2010-10-22 17:26:08 -04:00
ae478d1e3c Collect mail enum types in e-mail-enums.h.
And generate GTypes for each of them in e-mail-enumtypes.[ch].

Also, the glib-gen.mak script forced me to add a <mail/e-mail.h>
top-level header, which really isn't a bad idea anyway.

TODO: We should do this for calendar and addressbook too.
2010-10-18 14:31:16 -04:00
4118d671d4 Composer: Show cancellable operations and errors inline.
'Send' and 'Save Draft' are now asynchronous and run outside of
Evolution's MailMsg infrastructure.

Add an EActivityBar to the composer window so these asynchronous
operations can be tracked and cancelled even in the absense of a main
window.  Also add an EAlertBar to the composer window so error messages
can be shown directly in the window.

Instead of calling e_alert_dialog_run_for_args(), call e_alert_submit()
and pass the EMsgComposer as the widget argument.  The EMsgComposer will
decide whether to show an EAlertDialog or use the EAlertBar, depending
on the GtkMessageType of the alert.
2010-10-12 13:59:00 -04:00
a06e4484b8 Give MailSession a permanent home.
Global variables in shared libraries are a bad idea.  EMailBackend now
owns the MailSession instance, which is actually now EMailSession.

Move the blocking utility functions in mail-tools.c to e-mail-session.c
and add asynchronous variants.  Same approach as Camel.

Replace EMailReader.get_shell_backend() with EMailReader.get_backend(),
which returns an EMailBackend.  Easier access to the EMailSession.
2010-10-12 13:58:59 -04:00
ec089b4a41 Rewrite the folder subscription editor.
Redesign the "Folder Subscriptions" dialog and use Camel's async API
instead of the MailMsg infrastructure to simplify the implementation.
2010-10-02 15:22:07 -04:00
c8a56cad7f Missing linker flag. 2010-08-02 08:43:18 -04:00
2dfabd3909 addressbook: Port to use new _async suffix instead of _ex suffix 2010-08-02 13:27:24 +01:00
f454ba7142 Redo everything with optional clutter support. 2010-07-25 21:30:00 -04:00
af1c99f24c Build awesome clutter/Mx based tab'ed mail reader. 2010-07-25 21:30:00 -04:00
b9564c4d01 Add folder pane for tabbed browser. 2010-07-25 21:29:59 -04:00
b1f4b08565 Add EMailNotebook View 2010-07-25 21:29:59 -04:00
237abb86d5 Redo EMailPanedView and almost match to the basic one. 2010-07-25 21:29:58 -04:00
26240e0b18 Generate ChangeLog files for tarball releases.
Remove old ChangeLog files that predate our switch to git.
2010-04-02 18:18:33 -04:00
2971ce413c Make the gconf schemas installation rules consistent in all Makefiles.am 2010-03-15 17:10:46 +01:00
c4cde23066 Actually respect the --disable-schemas-install configure option 2010-03-15 14:51:13 +01:00
c69e242109 More relocation cleanup EVOLUTION_ICONSDIR -> EVOLUTION_ICONDIR 2010-03-11 15:57:20 +01:00
594dc83bc0 Use proper URIs in markup and be consistent in directory names 2010-03-11 10:28:11 +01:00
a674eab94d Update win32 directory relocation and some consistency cleanup 2010-03-10 12:18:12 +01:00
39ee1b7890 Give all preview panes a search bar.
Use Shift+Ctrl+F as the accelerator for consistency with the mailer.
2010-01-17 23:54:06 -05:00
4bd4e95a27 Remove more unneeded gunk from configure.ac. 2009-12-27 17:12:14 -05:00
59bd81691d Compiler and linker flag cleanups. 2009-12-27 14:32:39 -05:00
0eb2649bde Introduce EMailBackend into libevolution-mail.
EMailBackend is an abstract subclass of EShellBackend that handles
online and offline modes and application shutdown.  Placing this in
the shared mail library allows Anjal to reuse it.  Evolution's mail
module further extends this class as EMailShellBackend.
2009-12-15 22:27:43 -05:00
2aea353ce7 Move mail migration code to libevolution-mail.so.
So Anjal can reuse it.
2009-12-15 11:53:50 -05:00
5ba8caffba Introduce EMailSidebar into libevolution-mail.
EMailSidebar is a subclass of EMFolderTree that implements the state
saving and restoration feature from EMailShellSidebar.  Placing this
in the shared mail library allows Anjal to reuse it.
2009-12-14 20:11:38 -05:00
054c088169 Bug 589153 - Use GtkBuilder instead of libglade 2009-11-16 19:33:32 -05:00
51fe60cd69 Bug 600714 - No label colors in popup menu 2009-11-14 00:20:35 -05:00
e13eb8a5b5 Add zooming and drag-and-drop to the plugin.
A bunch of crusty old code in em-format-html-display.c falls out.
2009-11-09 19:57:12 -05:00
214f3a8038 Bug 600926 - Fails to build due to missing dependencies 2009-11-09 19:11:03 -05:00
950401c29d Bug 600926 - Fails to build due to missing dependencies 2009-11-09 19:07:52 -05:00