Commit Graph

114 Commits

Author SHA1 Message Date
59bd81691d Compiler and linker flag cleanups. 2009-12-27 14:32:39 -05:00
bd31f49bac Coding style and whitespace cleanup. 2009-12-26 00:26:18 -05:00
abc0e4c694 Introduce ESelectable and EFocusTracker.
EFocusTracker tracks the input focus within a window and helps keep
the sensitivity of "selectable" actions in the main menu up-to-date.
Selectable actions include Cut, Copy, Paste, Select All and Delete.

EFocusTracker has built-in support for widgets that implement the
GtkEditable interface such as GtkEntry and GtkTextView.  It also
supports custom widgets that implement the ESelectable interface,
which is a subset of GtkEditable and can apply to anything that
displays selectable content (esp. tree views and ETables).

This commit integrates EFocusTracker with EShellWindow, CompEditor,
EMsgComposer, and ESignatureManager.

It also bumps the GtkHTML requirement to 2.29.5 to utilize the new
GtkhtmlEditor:html constructor property.
2009-12-25 15:42:17 -05:00
3f36489c67 Bug #329693 - Add contexts to translated "None" words 2009-12-23 17:11:59 +01:00
60e6ecbb42 Remove some obsolete GConf keys.
/apps/evolution/mail/display/show_preview
/apps/evolution/mail/display/thread_list

These keys are no longer needed since we're storing the settings by
folder now in ~/.evolution/mail/config/state.  To simplify things we use
hard-coded defaults: TRUE for PreviewVisible, FALSE for GroupByThreads.
2009-12-19 00:46:19 -05:00
4cbbdedf52 Refactor the EShell search API.
Move the search interface to a new widget: EShellSearchbar

The current search rule is now stored in EShellView, and the search
context in EShellViewClass similar to GalViewCollection (since it's
class-specific, not instance-specific).

Also add a couple new signals to EShellView: "clear-search" and
"custom-search" ("custom" refers to an advanced search or a saved
search -- something more complex than a quick search).

Still working out a few kinks.  The search entry is clearly trying to
be too many things.  We need a different way of indicating that you're
looking at search results.  Perhaps a search results banner similar to
Nautilus.
2009-12-18 22:38:00 -05:00
1059076803 Bug #596967 - Per-folder setting for threading and preview panel 2009-12-18 17:56:11 +01:00
134a7d4bbd Bug #593700 - Restore folder's last selected message as expected 2009-12-17 20:17:04 +01:00
fe15c797a0 Bug #603184 - Various problems with search box in folders 2009-12-17 18:17:21 +01:00
f65f8935bc Kill MailSession's interactive flag.
After analyzing this again I'm confident we really don't need it.

The only state change is from FALSE to TRUE at startup, and that
one-time event happens while the mail shell backend is starting up
(see: e_shell_backend_start()).

If a need arises to query for this in the future I'll extend the
EShellBackend API with an e_shell_backend_started() function, but
for now there's no need.
2009-12-16 13:39:39 -05:00
2a7f68fe45 Move MailFolderCache signal handlers to EMailBackend.
Move the MailFolderCache signal handlers from EMailShellBackend down to
EMailBackend (in libevolution-mail.so) to share with Anjal.
2009-12-16 13:29:17 -05:00
0eb2649bde Introduce EMailBackend into libevolution-mail.
EMailBackend is an abstract subclass of EShellBackend that handles
online and offline modes and application shutdown.  Placing this in
the shared mail library allows Anjal to reuse it.  Evolution's mail
module further extends this class as EMailShellBackend.
2009-12-15 22:27:43 -05:00
6818a05259 Add MailFolderCache::folder-changed signal
Yes, this signal is kind of an ugly monster.  I'm not sure how to improve this
significantly.  But this commit removes the last EMFolderTreeModel and EShell
dependencies from MailFolderCache, which is a big step towards splitting off
the backend.

https://bugzilla.gnome.org/show_bug.cgi?id=604627
2009-12-15 14:16:09 -06:00
0eef4618ca Remove mail-config, vfolder, and filter deps from mail-folder-cache
Instead of pushing the updates to the right places, the folder cache simply
emits the appropriate signals and other objects are responsible for listening
and handling them appropriately.  This allows us to cut down the dependencies of
MailFolderCache significantly, which is a huge step towards allowing us to split
it off for the backend.

Another nice thing about this is that it allows us to trim a lot of 'public' api
from the filter, vfolder, and config classes that were only used by the cache.
Now that stuff can all be internal since they're pulling changes rather than
having the changes pushed.

The last remaining problematic dependency in MailFolderCache is
EmFolderTreeModel.  That is next on the chopping block.

https://bugzilla.gnome.org/show_bug.cgi?id=604627
2009-12-15 14:16:09 -06:00
2aea353ce7 Move mail migration code to libevolution-mail.so.
So Anjal can reuse it.
2009-12-15 11:53:50 -05: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
65931feb2a Bug #591938 - Update translator's comments 2009-12-09 18:55:15 +01:00
eb60a4e448 Kill ETreeScrolled.
Kill ETreeScrolled and convert MessageList to an ETree subclass.

ETreeScrolled is nothing but a GtkScrolledWindow containing an ETree.
It adds nothing of value and actually makes customizing ETree harder.
2009-12-08 01:55:28 -05:00
31204c9cc2 Port all error code to use GObject-ified EAlert / EAlertDialog
The changes are mainly including the e-alert-header.h header instead of just
e-alert.h.  This allows us to include e-alert.h in non-UI situations when
necessary.
2009-12-07 12:25:23 -06:00
86770f6b77 Fixing widgets order and adding back mnemonics after glade removal 2009-12-02 13:56:13 +01:00
5e938b590f Expand the EMailReader interface so it's easier to use.
Adds the following methods:

  CamelFolder *   (*get_folder)          (EMailReader *reader);
  const gchar *   (*get_folder_uri)      (EMailReader *reader);
  GPtrArray *     (*get_selected_uids)   (EMailReader *reader);
2009-12-01 15:01:14 -05:00
76fbb9d232 Kill message_list_free_uids().
Use em_utils_uids_free() instead.
2009-12-01 15:01:14 -05:00
d94534c367 Merge bits and pieces of the anjal-evo-2-30 branch. 2009-11-30 18:34:38 -05:00
c2ee0afbc8 Rename EError to EAlert to match general use better
The EError mechanism is used both for error dialogs as well as basic alerts or
user prompts, so we should give it a more general name which matches this use.

This patch also cleans up a few includes of e-alert.h (formerly e-error.h) that
were not actually being used.

https://bugzilla.gnome.org/show_bug.cgi?id=602963
2009-11-30 13:33:04 -06:00
495e9bf800 port modules/ to new EError API.
This should be everything now.

https://bugzilla.gnome.org/show_bug.cgi?id=602963
2009-11-30 13:32:22 -06:00
e3561c50ba Fixes a build break. 2009-11-30 15:15:39 +05:30
463032d132 Bug 602844 - Flags not saved to IMAP account on exit 2009-11-25 00:44:20 -05:00
aa813bd7ca Bug #579599 - Let the Advanced Search work again 2009-11-19 15:40:50 +01:00
054c088169 Bug 589153 - Use GtkBuilder instead of libglade 2009-11-16 19:33:32 -05:00
5a53fa86ce Whitespace cleanup. 2009-11-14 11:55:17 -05:00
51fe60cd69 Bug 600714 - No label colors in popup menu 2009-11-14 00:20:35 -05:00
e3768ee534 Bug 600933 - Empty Trash missing for real trash folders 2009-11-13 20:21:29 -05:00
7a2a0d05a9 Mark also create_combo_text_widget() for export
As it is used from mail/mail-config.glade.
2009-11-12 14:41:31 +02:00
e210c876f5 Fix a potential crash in the mail migration code. 2009-11-11 10:39:48 -05:00
99dcc19b92 Fix build for Windows
Do compile some more parts of modules/mail/e-mail-shell-migrate.c. No idea
whether any migration might actually work on Windows, of course.
2009-11-11 17:14:32 +02:00
214f3a8038 Bug 600926 - Fails to build due to missing dependencies 2009-11-09 19:11:03 -05:00
950401c29d Bug 600926 - Fails to build due to missing dependencies 2009-11-09 19:07:52 -05:00
c79efd6590 Bug #597582 - Original Date: header should be given precedence 2009-11-05 14:53:05 +01:00
c75bacce45 Fix few compiler warnings 2009-11-03 13:06:38 +01:00
07fb0ffe30 Lets the saved searches to work. 2009-10-30 16:01:13 +05:30
46bfd9b497 Bug 599837 - Junk plugin combo box is invisible 2009-10-29 13:46:27 -04:00
bafba91e9d Bug 600019 - Menu glitches when an account name is selected 2009-10-29 10:41:57 -04: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
1cd5fb6de3 Don't update the message list when right-clicking on a folder.
After the folder's context menu closes the folder tree selection jumps
back to the folder whose contents are showing in the message list.
Suggested by Philippe LeCavalier on evolution-list.
2009-10-28 09:47:57 -04:00
9b4c243865 Bug #550049 - Disable Mark messages as read actions when unusable 2009-10-27 21:18:01 +01:00
2b16aef841 Cleanup and rename filter classes. 2009-10-27 09:25:01 -04:00
58166e6459 Prefer G_N_ELEMENTS over sizeof calculations. 2009-10-27 09:25:01 -04:00
12cb5975ab Bug #397265 - Image loading for new contact requires restarting Evolution 2009-10-26 15:05:27 +05:30
3827cbee4c Bug #522783 - Signature separator for HTML E-mails
Reapplied patch from bug #551470, as this got dropped on merging.

Be sure you all also
gconftool-2 --install-schema-file=$PREFIX/etc/gconf/schemas/evolution-mail.schemas
as new key had been added.
2009-10-16 11:20:31 +02:00