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.
Pass a referenced StoreInfo as the closure so it doesn't have to be
looked up in the signal handler, but do so without leaking references.
Simplifies the signal handlers a bit.
Always ellipsize folder names, otherwise it interferes with the status
icons. The property was once bound to a hidden GSettings key, but the
setting was silly and was removed some time ago.