Commit Graph

95 Commits

Author SHA1 Message Date
1570f53d1e em_utils_edit_message: Change return type to EMsgComposer. 2013-06-02 11:58:08 -04:00
9bfe38c419 Rename libcomposer to libevolution-mail-composer.
To make Evolution's shared libraries more consistent.

Also add an evolution-mail-composer documentation module.
2013-05-28 09:56:30 -04:00
70a9fcdf9c Rename libeshell to libevolution-shell.
To make Evolution's shared libraries more consistent.

Also rename the documentation module to evolution-shell.
2013-05-28 09:56:30 -04:00
6c9a3243c9 Rename libeutil to libevolution-util.
To make Evolution's shared libraries more consistent.

Also rename the documentation module to evolution-util.
2013-05-28 09:56:30 -04:00
58ef547151 Coding style and whitespace cleanup. 2013-05-08 08:28:09 -04:00
b254ea37ef Bug #301323 - "Edit as new message" doesn't strip signature properly 2013-05-06 23:54:37 +02:00
7bd4880d6c Bug #662568 - Use-after-free in Templates plugin signal handlers 2013-03-25 14:13:21 +01:00
8e2902eefc Bump GDK_VERSION_MIN_REQUIRED to GDK_VERSION_3_2.
Clean up resulting deprecation warnings, which were all related to
GtkOrientable consolidation (e.g. gtk_hbox_new() -> gtk_box_new()).
2013-01-19 19:08:01 -05:00
b1ed35f70d Coding style and whitespace cleanup. 2013-01-10 11:20:32 -05:00
bed06d9ec3 Move the contact map widgets to addressbook/gui/widgets.
Move the supporting widgets for the contact maps feature alongside
EABContactDisplay.  Removing them from libeutil helps isolate our usage
of libchamplain so it's not imposed on the entire application, and even
3rd party software.  That libchamplain is an optional dependency only
further complicates the matter.

Ideally I'd like to somehow isolate this feature in an extension module,
but we currently lack sufficient hooks for such an extension.  So this
arrangement will have to suffice for now.
2012-12-12 14:33:47 -05:00
d09d8de870 Consolidate base utility libraries into libeutil.
Evolution consists of entirely too many small utility libraries, which
increases linking and loading time, places a burden on higher layers of
the application (e.g. modules) which has to remember to link to all the
small in-tree utility libraries, and makes it difficult to generate API
documentation for these utility libraries in one Gtk-Doc module.

Merge the following utility libraries under the umbrella of libeutil,
and enforce a single-include policy on libeutil so we can reorganize
the files as desired without disrupting its pseudo-public API.

   libemail-utils/libemail-utils.la
   libevolution-utils/libevolution-utils.la
   filter/libfilter.la
   widgets/e-timezone-dialog/libetimezonedialog.la
   widgets/menus/libmenus.la
   widgets/misc/libemiscwidgets.la
   widgets/table/libetable.la
   widgets/text/libetext.la

This also merges libedataserverui from the Evolution-Data-Server module,
since Evolution is its only consumer nowadays, and I'd like to make some
improvements to those APIs without concern for backward-compatibility.

And finally, start a Gtk-Doc module for libeutil.  It's going to be a
project just getting all the symbols _listed_ much less _documented_.
But the skeletal structure is in place and I'm off to a good start.
2012-12-12 14:33:43 -05:00
ab3f65a15e Address couple issues found by a Coverity scan 2012-11-30 15:30:45 +01:00
dad357207e Bug #688199 - Replying via a template doesn't mark mail as read/replied 2012-11-13 15:02:40 +01:00
2c4ae5e768 Coding style and whitespace cleanup. 2012-11-10 15:54:43 -05:00
c85109fc32 Coding style and whitespace cleanup. 2012-08-19 14:17:55 -04:00
cbf51737fa Add e_mail_session_append_to_local_folder().
Asynchronous + synchronous convenience functions.

Uses the EMailLocalFolder enumeration to specify a well-known folder.
2012-08-15 11:44:29 -04:00
94daae3dba Remove the last remaining usage of GConf 2012-06-15 09:04:08 +02:00
71924fc487 Fix memory leaks around gtk_tree_model_get() function 2012-05-31 10:44:49 +02:00
bdb60aa9ce Bug #593444 - templates-plugin: minor tweak to configuration tab 2012-03-26 17:18:56 +02:00
b4f895265d Add missing linker flags. 2012-03-03 14:11:12 -05:00
14f82dde34 Move EAlert* and e-xml-utils references from other part of the code to libevolution-utils. 2012-03-03 09:02:33 -05:00
23f5773903 Coding style and whitespace cleanup. 2012-02-20 10:04:25 -05: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
e64d6fe05c Miscellaneous cleanups. 2011-11-22 20:43:04 -05:00
2e60b6a4a2 Tweak GSettings schemas.
- Don't use the term "eplugin" for modules.

- Use the term "plugin" instead of "eplugin" for plugins.

- Split SpamAssassin settings into a separate schema.
2011-11-22 20:42:56 -05:00
925b03c373 Make it fully build 2011-11-09 12:35:00 +01:00
202cf6bfef Migrate template plugin to GSettings 2011-11-02 17:29:14 +01:00
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
fcbbdfbd18 Coding style and whitespace cleanup. 2011-09-04 07:34:32 -04:00
394e580dfd Including <glib.h> directly is rarely needed. 2011-05-28 10:39:52 -04:00
756c8abcb8 Bug #646109 - Fix use of include <config.h> to make sure translations work 2011-05-27 15:23:07 +02:00
527a1a020d Reimplement part of the "templates" plugin.
Now uses camel_folder_get_message().
2011-05-13 12:44:01 -04:00
b663d51f1b Miscellaneous cleanups. 2011-05-12 19:00:09 -04:00
1217a54192 Add a 'message_uid' param to em_utils_edit_message().
So we can remove the internal edit_message() function and do the work
directly in em_utils_edit_message().
2011-05-11 12:58:58 -04:00
8a186c3588 Coding style cleanups. 2011-05-08 13:37:20 -04:00
4cfb84c573 Whitespace and coding style cleanups. 2011-05-07 18:48:38 -04:00
4660d0fcad Adapt to CamelFolderInfo.name -> display_name. 2011-05-07 10:29:37 -04:00
5fcaadbc9a Bug #641845 - Add default expansion variables to templates plugin
Users can read values from original message in the template
by $ORIG[header] and with a special value $ORIG[body].
2011-04-27 17:10:14 +02:00
4b9ac3879d Fix few memory leaks 2011-02-14 19:15:36 +01:00
3cce94edcb Bug #634403 - Mails Label popup menu is not updated properly 2011-01-19 14:56:35 +01:00
d61a48b9d9 Bug #633854 - [templates] Crash in build_template_menus_recurse 2011-01-06 15:52:23 +01:00
ffd6e52808 Avoid a crash when building templates menu. 2010-12-03 15:36:40 -06:00
831d6dca44 Kill mail_append_mail().
Use e_mail_folder_append_message() instead.
2010-10-30 21:01:11 -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
31b57ed038 Adapt to Camel API changes. 2010-09-28 11:35:55 -04:00
a91eeb6471 Pass GCancellable to Camel. 2010-09-28 11:35:55 -04:00
cd53ba9900 Coding style cleanups. 2010-09-13 08:28:58 -04:00