Commit Graph

483 Commits

Author SHA1 Message Date
d00c445e8e Bug 588851 - Don't show unsubscribe option for local folders 2010-10-05 08:39:36 -04:00
9675f18d91 Coding style and whitespace cleanup. 2010-10-03 13:29:20 -04:00
a69cbcd79a Bug 510020 - Add "Manage Subscriptions" to store context menus 2010-10-03 09:39:10 -04:00
ec089b4a41 Rewrite the folder subscription editor.
Redesign the "Folder Subscriptions" dialog and use Camel's async API
instead of the MailMsg infrastructure to simplify the implementation.
2010-10-02 15:22:07 -04:00
e41b4083a6 camel_operation_new() now returns a GCancellable pointer. 2010-09-29 09:33:36 -04:00
6ec1118c92 Bug #629462 - Tasks 'Due' filters don't work properly 2010-09-29 11:39:26 +02:00
a28f6db7fc Bug #629266 - Crash on search in Current Account 2010-09-29 11:02:35 +02:00
2a772badda Bug #629636 - Doesn't recognize local ESource-s 2010-09-29 10:43:04 +02: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
a98c07a569 Add a GCancellable to EActivity.
EActivity now uses a GCancellable to manage cancellations, instead of
having its own redundant cancellation API.  API changes are as follows:

  + e_activity_get_cancellable()
  + e_activity_set_cancellable()

  - e_activity_cancel()
  - e_activity_is_cancelled()
  - e_activity_get_allow_cancel()
  - e_activity_set_allow_cancel()

EActivity's "cancelled" signal remains, but only as a repeater for
GCancellable::cancelled signals.  It should not be emitted directly.

The presence of a GCancellable implies that cancellation is allowed.
EActivity does not create its own default GCancellable, it has to be
given one.

If a CamelOperation (cast as a GCancellable) is given, EActivity will
configure itself to listen for status updates from the CamelOperation
and propagate the information to its own "primary-text" and "percent"
properties.

These changes allowed me to start cleaning up some of the incredibly
convoluted logic in mail-mt.c -- in particular, mail_operation_status()
is completely gone now.  mail-mt.c is still in a transitional state --
much more significant changes coming soon.
2010-09-18 16:40:19 -04:00
afe6f502c3 Use new GDK keysym names if available.
In GTK+ 2.21.8, the keysym names were renamed from GDK_* to GDK_KEY_*.

I've added backward-compatibility macors to gtk-compat.h, which can be
dumped as soon as we require GTK+ >= 2.22.0.
2010-09-17 18:39:59 -04:00
5310e4a0b1 Adapt to CamelOperation API changes. 2010-09-14 23:48:02 -04:00
c7f5d54cb7 Kill the subject-thread plugin.
All this time I never realized the subject-thread plugin was nothing
more than a stupid checkbox.  The actual thread-by-subject code lives
in the core mail library.
2010-09-14 14:56:15 -04:00
95fe925630 Fix a crapload of run-time warnings.
EConfig and EMAccountEditor are very, very brittle.
2010-09-14 13:49:08 -04:00
4074ffa416 Bug #346438 - Error dialog too wide.
The patch suggests displaying the calendar name and group instead of uri
for the source of error.
2010-09-14 09:54:47 +05:30
23cbe11a5b Avoid dll hijacking
Load sensapi.dll only from system directory where it should normally
be and not from any random place.
2010-09-13 22:58:24 +02:00
2798ae38f4 mail-config.ui cleanups.
- Fix GtkVBox orientations.
- Reduce container widgets.
- Remove unused widgets.
2010-09-13 08:28:59 -04:00
e7247d6d60 Remove uninteresting mail options from Preferences.
Remove some options from Mail Preferences that aren't worth the screen
real estate they take up.  For now, the corresponding GConf keys still
remain and are honored by Evolution.  These same options were already
removed for Express mode.

Options removed are:

[ ] Mark messages as read after XXX seconds

[ ] Do not display messages when text size exceeds XXX KB

[ ] Shrink To / Cc / Bcc headers to XXX addresses

[ ] Enable Magic Spacebar

[ ] Enable Search Folders
2010-09-13 08:28:59 -04:00
c23de2688e Convert plugin-manager to an EExtension.
How ironic.
2010-09-13 08:28:59 -04:00
ebcce86769 Coding style and whitespace cleanups. 2010-09-11 14:14:04 -04:00
bc9ece413f Re-work my GtkDialog:has-separator workaround.
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.
2010-09-11 09:03:45 -04:00
e54ff6fd90 Add missing linker flag to composer-autosave module. 2010-09-11 08:39:58 -04:00
a6e137295f Work around deprecation of gtk_dialog_set_has_separator()
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.
2010-09-11 00:30:54 -04:00
7ecdf26069 Add composer-autosave to SUBDIRS. 2010-09-03 22:00:32 -04:00
aa61df9527 Bug #580623 - Mishandling of evolution's proxy ignore_hosts key 2010-09-03 12:04:03 +02:00
429234ff21 Convert composer autosave to an EExtension.
Given the way the autosave feature was awkwardly bolted on to the
composer, an EExtension seemed like a natural fit.  And it helped
clean up some object lifecycle hacks (and bugs).

What we have now is a new module consisting of two EExtensions:

   EComposerAutosave extends EMsgComposer and determines when to
   kick off an asynchronous autosave operation.

   EComposerRegistry extends EShell and offers to restore orphaned
   autosave files on startup (which is also asynchronous now).

e-autosave-utils.c holds the actual asynchronous functions and a few
other miscellaneous utility functions.

Source code for the new module lives in /modules/composer-autosave.
2010-09-02 13:37:31 -04:00
4c05b9e925 Coding style and whitespace cleanup. 2010-08-29 11:22:28 -04:00
935bc4be07 Bug 628141 - Duplicate signal connections in EMailReader
EMailShellContent implements the EMailReader interface but acts as a
proxy for EMailPanedView, from which it obtains MessageList and EWebView
widgets.  The problem was both classes call e_mail_reader_init_private()
which connects to signals emitted from the MessageList and EWebView
widgets.  But since EMailShellContent is a proxy for EMailPanedView,
the signals were being connected twice.

This commit does away with e_mail_reader_init_private(), instead adding
options to e_mail_reader_init() to control what parts of initialization
to run.  It's an ugly and temporary hack.

I'm beginning to realize EMailReader is too bloated and needs rethought.
EMailReader should just manage actions.  EMailView should own and manage
the widgets, and EMailReader should just have a get_mail_view() method
so it has access to those widgets.  That way the EMailView subclasses
won't have to implement EMailReader themselves and wind up allocating
a bunch of duplicate, unused actions.

It's too close to a stable release to rip these interfaces apart and
reorganize them.  I'll try to do that for 2.33 to help make the design
more intuitive.
2010-08-27 15:44:25 -04:00
87a3fac95c Mail module + EMailView cleanups. 2010-08-26 13:14:01 -04:00
5270b3042f Crash on Startup wizard cancel
As reported in Red Hat bugzilla in 626810
2010-08-26 16:24:46 +02:00
ecf3434da0 GObject boilerplate cleanup.
Prefer thread-safe G_DEFINE_TYPE and G_DEFINE_INTERFACE macros over
manual GType registration.

This is just a start... lots more to do.
2010-08-24 14:37:02 -04:00
d07f15d207 Build break with evolution-connman - new parameter in a GDBus function 2010-08-24 09:27:27 +02:00
7c1ec3723a Add e_load_cal_source_async().
Similar to e_load_book_source_async() in libedataserverui (and may wind
up there eventually).  This replaces e_auth_new_cal_from_source().

  void   e_load_cal_source_async  (ESource *source,
                                   ECalSourceType source_type,
                                   icaltimezone *default_zone,
                                   GtkWindow *parent,
                                   GCancellable *cancellable,
                                   GAsyncReadyCallback callback,
                                   gpointer user_data);

  ECal * e_load_cal_source_finish (ESource *source,
                                   GAsyncResult *result,
                                   GError **error);
2010-08-23 15:21:59 -04:00
acb73cd105 Fix more non-removal of signals on user_data object distruction by
using g_signal_connect_object in many places; fixes bgo#627525#
2010-08-20 20:04:37 +01:00
705be92229 Use e_load_book_source_async() in EBookShellBackend.
For handling "new-contact" and "new-contact-list" actions.
2010-08-19 13:55:54 -04:00
a536d74906 Use the new e_load_book_source_async() where possible.
It's easier to use than addressbook_load() but requires starting with
an ESource rather than an EBook, and there's a couple places left where
that's not so easy.  I'll spend more time on it later.
2010-08-18 15:49:49 -04:00
4e9050bc1e Whitespace and coding style cleanup. 2010-08-13 21:32:32 -04:00
8f7b23276d Fix a runtime warning. 2010-08-13 21:00:35 -04:00
6cb0cbd0be Pass an EShell to EMsgComposer instances.
Reduce the composer's dependency on e_shell_get_default().
2010-08-13 20:56:33 -04:00
18813ccd8f Defer the load / creation of configuration UI with changes to
e_preferences_window to take factory callbacks and store a reference
to the shell. - This makes start-up substantially faster, particularly
on Atom (eg.).

Remove a number of idle handlers used to create these UIs in the
first instance, cleaning the code.
2010-08-10 21:17:40 +01:00
809f7a3ee8 use g_signal_connect_object to improve reliability 2010-08-05 16:55:42 +01:00
b5299135f6 fix lifecycle nasties bgo#625852 2010-08-02 17:47:14 +01:00
2dfabd3909 addressbook: Port to use new _async suffix instead of _ex suffix 2010-08-02 13:27:24 +01:00
71eff23a1d Bug 625624 - Customizations of contacts views forgotten
Found similar bugs in EShellMemoContent and EShellTaskContent.
2010-07-29 23:32:53 -04:00
831cb20c97 Fix build break in network-manager module. 2010-07-29 20:32:05 -04:00
52ad80d601 Bug #625606 - git/master build dies with glib-2.25.12 2010-07-29 21:07:26 +02:00
6158bcecd7 Bug #622912 - Migrate from dbus-glib to glib's GDBus 2010-07-28 16:21:40 +02:00
6affbe33e9 Migrate ~/.evolution to XDG base directories.
Migration runs just before the main loop starts.
It's just a sequence of local directory and file renames.
2010-07-27 08:58:50 -04:00
eba9b45f9e Use PVOID instead of gpointer when working with COM+ function pointers 2010-07-27 14:52:37 +02:00