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.
I broke contact maps when I removed the settings capplet.
The contact maps feature uses clutter-gtk, so we still need to call
gtk_clutter_init_with_args() instead of gtk_init_with_args() if the
contact maps feature is enabled.
This was another MeeGo feature. MeeGo is dead, the code is starting to
bit rot and crashes on startup, the original author disappeared and the
remaining developers are not interested in maintaining it. So it's out.
Invoke the mbox-to-Maildir conversion directly from main(), just
before the call to e_shell_load_modules().
The reason the code is here and not in the mail module is because
we inform the user at startup of the impending mail conversion by
displaying a popup dialog and waiting for confirmation.
This has to be done before we load modules because some of the
EShellBackends immediately add GMainContext sources that would
otherwise get dispatched during gtk_dialog_run(), and we don't
want then dispatched until after the conversion is complete.
This is a silly and misleading option. It gives the impression that it
activates extra debugging output, when really it's precisely the same as
"evolution &> LOGFILE" and nothing more.
Work around GLib API churn with regard to registering UNIX signal
callbacks on the main loop. GLib >= 2.29.5 calls the function one
thing, GLib >= 2.29.19 calls it another.
This plugin was for developers, but no one uses it anymore. Plus the
only profiling hooks left in Evolution were in the MessageList widget,
which performs fine. There's better ways to collect profiling data
these days anyway (sysprof, systemtap, etc.).
If we're using GTK+ 2.21.8 (where gtk_dialog_set_has_separator() is
deprecated but the property is still present and defaults to TRUE), we
still need to set the property to FALSE. So instead use g_object_set()
up through GTK+ 2.90.6, after which the property itself is gone.
Unfortunately the default value for this property is TRUE (bzzt, WRONG!)
so we can't just remove the function outright until we require GTK+ 2.22.
It was deprecated in GTK+ 2.21.8.