Commit Graph

1285 Commits

Author SHA1 Message Date
e2fff99a0b e-composer-header-table.c: Remove redundant #define. 2013-01-10 20:25:28 -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
3924dc759d EMailParserExtension: Collect EMailParts in a GQueue.
Collect EMailParts in a GQueue provided to the EMailParserExtension,
and change the return type of parse() to gboolean to indicate whether
the given CamelMimePart was handled (even if no parts were added to
the output GQueue).

This avoids the awkward corner case of a parser extension returning a
linked list node with a NULL data member to indicate the CamelMimePart
was handled but no EMailParts produced, and then having to watch out
for that NULL data member corner case throughout the application.

Also, remove the GCancellable parameter from e_mail_parser_error() and
e_mail_parser_wrap_as_attachment() since neither function blocks.
2012-12-07 14:01:04 -05:00
91822b42dc Make EMailPartList thread-safe.
Exposing data members in the public struct is unwise, especially when
EMailPartList is used from multiple threads.  Instead keep the members
private and provide a set of thread-safe functions to manipulate them.
2012-12-07 14:01:04 -05:00
a92d93fdf2 Bug #687998 - Attachment dialog shown when storing assigned task 2012-11-12 11:39:29 +01:00
2c4ae5e768 Coding style and whitespace cleanup. 2012-11-10 15:54:43 -05:00
704b78d23b Replace deprecated GLib symbols (as of GLib 2.34.x) 2012-11-06 16:21:37 +01:00
4f6b7704e2 Bug #681314 - Add address dialog should follow composer's view settings 2012-10-15 19:51:57 +02:00
d495e19945 Bug 684249 - Signatures get compounded, not replaced 2012-10-04 02:05:42 -04:00
e18f1b8709 Composer could start with empty From 2012-09-05 16:43:58 +02:00
d89e767a1c Coding style and whitespace cleanup. 2012-09-01 08:06:32 -04:00
c85109fc32 Coding style and whitespace cleanup. 2012-08-19 14:17:55 -04:00
8248614e36 composer: Remove redundant tooltips.
These are defined in GtkhtmlEditor now (bug #681087).
2012-08-02 23:06:50 -04:00
ae1f880dd8 Trust attachments from ~/.kde and ~/.kde4.
This came about from a mailing list thread entitled:

   Sending photos from digKam: "Skipping suspicious attachment"

Apparently KDE still uses dot-folders quite heavily, despite having
helped draft the XDG Base Directory Specification.
2012-07-02 11:02:56 -04:00
137eec97eb Bug #617557 - Can close composer while message is sending 2012-06-26 12:02:36 +02:00
6c05b09be1 Do not call g_object_notify() when property didn't change 2012-06-18 15:35:44 +02:00
0c2a0824be Bug #678304 - Save Draft prevents Evolution's quit 2012-06-18 12:25:35 +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
2a39437ee9 Adapt to single-include E-D-S libraries. 2012-06-03 15:14:03 -04:00
f78795f4df Adapt composer to the new ESource API. 2012-06-02 23:00:40 -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
ecc1f7ae88 Bug #200683 - Composer subject spell checking 2012-05-09 19:50:33 +02:00
3fbbdd80ac Bug #674248 - Lost new lines from text/plain 2012-04-19 09:22:36 +02:00
e3295b4d11 Bug 673895 - "Send To..." doesn't work anymore
Our hidden file/directory blacklist went a little too far.  Evolution
was blacklisting its own temporary files.  This changes the blacklist
function to trust the user's own XDG Base Directories.
2012-04-11 09:44:11 -04:00
299521f02c Whitespace cleanup.
Replace 8-space indentation with tab characters, and various other
automated cleanups.
2012-04-01 23:15:38 -04:00
9ed9a99bad EMFormat: Add "session" as a constructor property.
Pass it in instead of digging it out of EShellSettings.
2012-03-31 15:48:01 -04:00
a269411bac WebKit port - port addressbook, calendar and update composer to keep working with GtkHtml 2012-03-28 18:39:13 +02:00
da3bd3696e Bug #665106 - Memory leak from composer setup when opening Preferences 2012-03-16 12:06:18 +01: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
78cd0d0a73 Bug #617557 - Can lost message after send failed 2012-03-01 09:43:47 +01:00
23f5773903 Coding style and whitespace cleanup. 2012-02-20 10:04:25 -05:00
933ba0f066 Bug 670280 - Remove "Recent Documents" attachment feature
GTK's file chooser dialog provides one-click access to recently used
documents now, so we can remove the redundancy from Evolution's mail
composer main menu and calendar component editor main menu and leave
it at "Insert -> Attachment".
2012-02-17 08:38:02 -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
d41d432ccb EComposerHeaderTable: Rearrange initialization code.
Prefer GObjectClass.constructed() over GObjectClass.constructor().
2011-12-31 16:44:25 -05:00
70b27af74e Move gtkhtml data encoding/decoding to e-composer-private.c.
Simplify the algorithms, trading efficiency for readability.
2011-12-31 14:57:30 -05:00
a7abe3ac59 Composer cleanups. 2011-12-31 14:40:06 -05:00
832bea90bf Composer: "mailto" blacklist touch ups. 2011-11-30 07:16:08 -06:00
06e45c8e87 Bug #664708 - Composer's headers preference is reset on From change 2011-11-29 14:48:51 +01:00
f6f46ce7fc Use e_restore_window() and "org.gnome.evolution.window".
Apply it to all windows with persistent size and/or position.
2011-11-27 18:03:45 -06:00
e64d6fe05c Miscellaneous cleanups. 2011-11-22 20:43:04 -05:00
0c83b9b25d Miscellaneous cleanups. 2011-11-22 14:50:09 -05:00
c75f58d01b Fix compiler warnings. 2011-11-22 14:34:11 -05:00
c7a08c2272 Migrate most of the composer to GSettings 2011-10-13 18:11:35 +02:00
ff8b1650ea Port EComposerHeaderTable to GSettings 2011-10-13 17:44:28 +02:00
126aa2398a Prefer g_simple_async_result_take_error().
Slightly more efficient and convenient than:

    g_simple_async_result_set_from_error (simple, error);
    g_error_free (error);

One less GError to copy and destroy.
2011-10-06 09:37:01 -04:00
938505da18 Let GtkFileChooser track its own last-used-folder.
GtkFileChooser in GTK+ 3.2 now keeps track of the last-used-folder
itself, even across applications, so get out of its way and let it
handle it.
2011-10-06 08:16:21 -04:00