Drop our explicit gstreamer requirement and merge audio support directly
into libevolution-mail-formatter. We now use the HTML5 <audio> tag and
let WebKit show much nicer playback controls, with volume and seeking.
GLib/GTK+ uses different deprecation macros nowadays.
The MIN_REQUIRED macros do a better job of catching deprecated symbol
usage up to the minimum build requirement, and the MAX_ALLOWED macros
catch symbol usage that violates our minimum build requirement.
These newer deprecation macros are always enabled, so we don't need a
special configure flag for them.
This is a theoretical crash (not actually reproduced) caused by calling
g_object_ref(source) when source is NULL, which can happen if no
calendars or task lists exist.
This fixes the crash, but there may be UI bugs if this condition is
reached.
Found by scan-build.
https://bugzilla.gnome.org/719540
This is a theoretical crash (not actually reproduced), caused by the
client variable being NULL if no address books exist. Instead of
crashing, gracefully exit with an error.
Found by scan-build.
https://bugzilla.gnome.org/719540
Added features:
- show all four selectors (for Calendars/Memos/Tasks/Books)
- be able to open/close selected source
Especially the later can be used for testing the factories easily,
without running evolution or other client. There can be added more
actions on an opened EClient descendant in the future, if it'll be
found useful.
Turns out this function was a no-op, because nothing registered itself
to be cancelled this way. This was part of the legacy async framework,
which we've mostly moved away from now.
glib has removed g_memmove, since it was a macro there is no ABI break but sources have to be adapted to switch to memmove
See glib commit 6e4a7fca431f53fdfd89afbe956212229cf52200 for further reference.
EMeetingStore needs an ESourceRegistry property so it can obtain
an appropriate proxy ESource to serve as a GProxyResolver for the
SoupSession.
But frankly, this code is a mess and I can't be bothered right now.
The SoupSession will just use the desktop-wide proxy settings which
is fine for the vast majority of users.
When creating a temporary SoupSession, synchronize its GProxyResolver
with the SoupRequest's SoupSession which is already configured to use
our built-in proxy ESource.
EProxy is deprecated. No easy access to ESourceRegistry from which to
grab the "system-proxy" ESource, so just rely on SoupSession's default
GProxyResolver. Good enough; this is a nice-to-have feature anyway.
This prevents Evolution from prompting to restore what it thinks are
orphaned messages during an Evolution session. This is triggered by
a shell window emitting another "map-event" signal for some reason.
Some GNOME Shell users have reported seeing this.
The ESourceExtension had a 'unit' property, but it was not used
anywhere, thus I changed it to reflect possible values of current
libgweather and made it used in the background.