Commit Graph

36 Commits

Author SHA1 Message Date
e5eb699ce3 Fix few memory leaks 2012-06-27 20:17:28 +02:00
a9cfed5938 Avoid passing EMailBackend as much as possible.
More mail API churn... reversing some previous API decisions.

I've made some key API changes to EMailSession on the account-mgmt
branch which should allow for this, and will hopefully also benefit
the "email-factory" branch.

EMailBackend barely needs to exist anymore, except as the owner of
EMailSession.

For several low-level functions, we replace its EMailBackend parameter
with EMailSession and EAlertSink parameters; the latter so it can still
pass user alerts up the chain.
2011-12-16 10:58:54 -05:00
a01525c931 Miscellaneous EShellView-related cleanups. 2011-12-07 22:11:21 -05:00
756c8abcb8 Bug #646109 - Fix use of include <config.h> to make sure translations work 2011-05-27 15:23:07 +02:00
ff9fcffeca EMFolderTree: Add an EAlertSink property.
Now EMFolderTree has access to both an EShellBackend and an EAlertSink;
everything it needs to build and submit EActivity instances.
2011-05-24 11:02:59 -04:00
9692758dc5 EMFolderTree: Store an EMailBackend instead of an EMailSession.
All this so EMFolderTree can submit EActivity instances for async ops.
You can obtain an EMailSession from an EMailBackend, but not vice versa.

Creates lots of pretty ripples in the mail code, but ultimately reduces
complexity.  So it's a code cleanup of sorts.
2011-05-23 21:50:50 -04:00
c6fd77460f Coding style and whitespace cleanup. 2011-03-05 12:34:28 -05:00
1301cf02ef Bug #614480 - Avoid using G_TYPE_INSTANCE_GET_PRIVATE repeatedly 2011-02-25 16:20:41 +01:00
21ab8044da Coding style and whitespace cleanup. 2011-01-29 20:22:57 -05:00
b7c2f49973 Adapt size_request vfuncs to latest gtk+-3.0 API. 2011-01-25 10:37:16 -05:00
a133df0caf Add an "ellipsize" property to EMFolderTree.
So we don't have to access GConf directly from EMFolderTree.  The
property gets bound to an EShellSettings property, which is in turn
bound to the "no_folder_dots" GConf key by way of a transform function.
2010-10-18 16:00:29 -04:00
1e663aa132 Replace EBinding with GBinding.
GObject now does property bindings itself.

Requires GLib >= 2.26.
2010-10-14 07:12:52 -04:00
a06e4484b8 Give MailSession a permanent home.
Global variables in shared libraries are a bad idea.  EMailBackend now
owns the MailSession instance, which is actually now EMailSession.

Move the blocking utility functions in mail-tools.c to e-mail-session.c
and add asynchronous variants.  Same approach as Camel.

Replace EMailReader.get_shell_backend() with EMailReader.get_backend(),
which returns an EMailBackend.  Easier access to the EMailSession.
2010-10-12 13:58:59 -04:00
c9ec8c3f4d Merge branch 'express2' 2010-05-26 13:09:33 -04:00
9653887891 Coding style and whitespace cleanup. 2010-05-25 10:15:32 -04:00
c30d29425e Coding style and whitespace cleanup. 2010-05-01 23:18:28 -04:00
448685bd5d Forgot to commit some bits. 2010-04-08 11:33:01 -04:00
7c214d64f6 Fix build break due to GTK+ deprecations. 2010-03-30 09:56:40 +05:30
1dd4c129bd Fix build break due to GTK+ deprecations. 2010-03-26 11:32:54 -04:00
31ece25312 Start the mailer's folder sidebar with a reasonable width
We measure a sample string, and then clamp this to one fourth of the
screen's width; we do some voodoo to guess the monitor we are in.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-03-25 15:47:48 -06:00
1457c12bb1 Ensure that the width of the mail sidebar is not too wide
We just clamp this to one fourth of the screen's width; we do
some voodoo to guess the monitor we are in.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-03-25 15:43:32 -06:00
f794e6a003 Oops, remove debug printf
Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-03-23 14:26:07 +05:30
7245c36554 Don't hardcode a width, but compute a suitable one
We do this by measuring a template string, which contains a sample name for an email account.
This is what normally gets displayed in the folder tree, so such a sample string
should give a reasonable width.

Signed-off-by: Federico Mena Quintero <federico@novell.com>

Conflicts:

	modules/mail/e-mail-shell-sidebar.c
2010-03-23 14:25:40 +05:30
c8ead63857 Start the mailer's folder sidebar with a reasonable width
We do this by measuring a template string, which contains a sample name for an email account.
This is what normally gets displayed in the folder tree, so such a sample string
should give a reasonable width.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-03-22 14:07:22 -06:00
5ba8caffba Introduce EMailSidebar into libevolution-mail.
EMailSidebar is a subclass of EMFolderTree that implements the state
saving and restoration feature from EMailShellSidebar.  Placing this
in the shared mail library allows Anjal to reuse it.
2009-12-14 20:11:38 -05:00
d94534c367 Merge bits and pieces of the anjal-evo-2-30 branch. 2009-11-30 18:34:38 -05:00
e3768ee534 Bug 600933 - Empty Trash missing for real trash folders 2009-11-13 20:21:29 -05:00
1f455a0855 Bug #268644 - unread mail shortcut collides with gtk tree search
Re-applied, as it got lost on kill-bonobo merge
2009-10-29 12:35:01 +01:00
2b7aa4a797 Bug 599896 - Flush outbox option is missing
This also reverts commit f5165c618a.
2009-10-28 18:46:41 -04:00
54de40109d Bug #596824 - evolution hangs on start up 2009-10-07 13:08:32 +02:00
f5165c618a Bug 597151 - [regression] Folder doesn't get deleted properly 2009-10-03 12:15:48 +03:00
a60c3f3736 Bug 596268 - Crash when sidebar was clicked while 'loading' 2009-09-25 00:53:58 -04:00
3d7193ad9d Copy folder tree state of 1st window when opening new windows. 2009-09-03 18:54:45 -04:00
8962868ff9 Relax the EBinding API to reduce GObject casting.
Also make it more fault-tolerant by warning about non-existent
property names instead of just crashing.
2009-09-01 21:12:44 -04:00
6e7f42e0a6 Use an EShellSettings property for folder tree search. 2009-07-10 14:42:53 -04:00
f0d3f3afdf Radically reorganize source code.
- Collect all shell modules into a new top-level 'modules' directory:

      $(top_srcdir)/modules/addressbook
      $(top_srcdir)/modules/calendar
      $(top_srcdir)/modules/mail

  Nothing is allowed to link to these, not plugins nor other modules.

  THIS SOLVES BUG #571275 AND OPENS THE DOOR TO PORTING TO MAC OS X.

- Mimic the libevolution-mail-shared library from master (except drop
  the "shared" suffix) and have libevolution-mail-importers and all
  mail-related plugins link to it.

- Discard the a11y subdirectories and have the files live alongside
  their counterpart widgets.
2009-06-24 18:29:22 -04:00