Commit Graph

457 Commits

Author SHA1 Message Date
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
36b9debed0 More code cleanup. 2010-07-26 12:26:55 -04:00
9279429501 Drop the "quote-from-selection" property.
David's solution is simpler: check if the HTML widget is mapped.
Avoids having to propagate the property to Srini's new classes.
2010-07-26 07:40:48 -04:00
81e5428a59 Coding style and whitespace cleanup. 2010-07-26 01:16:42 -04:00
21f5bfa2ab Fix right click issues. 2010-07-25 21:30:01 -04:00
fa7a4af975 Add switch for tab & non-tab mode. 2010-07-25 21:30:01 -04:00
b9564c4d01 Add folder pane for tabbed browser. 2010-07-25 21:29:59 -04:00
75de89ef04 Make the update-actions work across tabs. 2010-07-25 21:29:59 -04:00
34900a5909 More bug fixes. 2010-07-25 21:29:59 -04:00
10df2a43b8 Add EMailReader i/f recurrsive from tne Content. 2010-07-25 21:29:59 -04:00
9097741700 Rewrite the content piece of evolution. 2010-07-25 21:29:59 -04:00
efc1898b70 Report error to user when fails to open calendar/task/memo list 2010-07-16 14:27:56 +02:00
858a2a884d Clean up "ensure_sources" backend routines.
Remove redundant logic (we call e_source_list_ensure_group() and then
proceed to do the same thing it just did), and use "local:" as the base
URI for the "On This Computer" group.

This requires commit 9e0845207b39f256f7e81d388741ed30a764ea7b in
Evolution-Data-Server to work properly.
2010-07-15 13:14:43 -04:00
51a41db621 Add nag popup when mailing list hijacks private reply with Reply-To: header 2010-07-15 17:20:16 +01:00
21b0925061 Change 'Reply to All' toolbar button into configurable 'Group Reply'
...with a dropdown menu like the Forward button, and configuration for
whether it tries to do 'Reply to List' by default.
2010-07-15 16:48:45 +01:00
1e6adfccc8 Add support for ignoring mailing list Reply-To: headers 2010-07-15 16:48:45 +01:00
8b8fdabfa6 Warn on reply-to-all with too many recipients 2010-07-15 16:48:45 +01:00
0f7b73d639 Bug 624204 - Warn when replying privately to a mailing list message 2010-07-15 16:48:45 +01:00
a972d9ab59 Bug 624285 - When replying, ignore text selection if preview is hidden 2010-07-13 19:30:20 -04:00
78bf9d9d70 Bug 624128 - Folder -> Subscriptions is always enabled 2010-07-12 11:26:47 -04:00
eb29179da6 Coding style and whitespace cleanup. 2010-07-11 22:25:06 -04:00
03d626856b Bug #623204 - Be able to report detailed errors from backends 2010-07-09 14:29:51 +02:00
137b0743dd Migrate from CamelException to GError. 2010-07-08 14:37:52 -04:00
1a4ee432c9 Bug #621770 - Bottom-left calendar too big 2010-06-25 15:16:12 +02:00
71e92f3f2c EShellContent: Add a focus_search_results() method.
This gives EShellSearchbar something concrete to call to direct focus
away from itself instead of tabbing forward and hoping for the best.
2010-06-24 20:42:09 -04:00
9d538474a8 Bug 622633 - Can't launch Evolution from clock applet 2010-06-24 13:19:14 -04:00
bcdea3f01e Bug #611165 - Use memo start date from a calendar view, if active 2010-06-23 20:42:03 +02:00