Commit Graph

593 Commits

Author SHA1 Message Date
b1ed35f70d Coding style and whitespace cleanup. 2013-01-10 11:20:32 -05:00
53937a3dbd Bug 588216 - 'Unsubscribe' disabled for newsgroups
Unsubscribable folders are not necessarily deletable.
2012-12-28 14:25:54 -05:00
79f9fe7f77 e-config: Remove unused functions.
e_config_add_skip_check()
e_config_class_remove_factory()
e_config_create_window()
e_config_page_get()
e_config_page_next()
e_config_page_prev()
e_config_set_page_is_finish()

Also remove E_CONFIG_ASSISTANT and all the assistant support therein.
2012-12-16 18:07:54 -05:00
bed06d9ec3 Move the contact map widgets to addressbook/gui/widgets.
Move the supporting widgets for the contact maps feature alongside
EABContactDisplay.  Removing them from libeutil helps isolate our usage
of libchamplain so it's not imposed on the entire application, and even
3rd party software.  That libchamplain is an optional dependency only
further complicates the matter.

Ideally I'd like to somehow isolate this feature in an extension module,
but we currently lack sufficient hooks for such an extension.  So this
arrangement will have to suffice for now.
2012-12-12 14:33:47 -05:00
d09d8de870 Consolidate base utility libraries into libeutil.
Evolution consists of entirely too many small utility libraries, which
increases linking and loading time, places a burden on higher layers of
the application (e.g. modules) which has to remember to link to all the
small in-tree utility libraries, and makes it difficult to generate API
documentation for these utility libraries in one Gtk-Doc module.

Merge the following utility libraries under the umbrella of libeutil,
and enforce a single-include policy on libeutil so we can reorganize
the files as desired without disrupting its pseudo-public API.

   libemail-utils/libemail-utils.la
   libevolution-utils/libevolution-utils.la
   filter/libfilter.la
   widgets/e-timezone-dialog/libetimezonedialog.la
   widgets/menus/libmenus.la
   widgets/misc/libemiscwidgets.la
   widgets/table/libetable.la
   widgets/text/libetext.la

This also merges libedataserverui from the Evolution-Data-Server module,
since Evolution is its only consumer nowadays, and I'd like to make some
improvements to those APIs without concern for backward-compatibility.

And finally, start a Gtk-Doc module for libeutil.  It's going to be a
project just getting all the symbols _listed_ much less _documented_.
But the skeletal structure is in place and I'm off to a good start.
2012-12-12 14:33:43 -05:00
91822b42dc Make EMailPartList thread-safe.
Exposing data members in the public struct is unwise, especially when
EMailPartList is used from multiple threads.  Instead keep the members
private and provide a set of thread-safe functions to manipulate them.
2012-12-07 14:01:04 -05:00
ae6344a22b Bug #315317 - Add option to expunge messages on folder leave 2012-12-04 19:33:29 +01:00
d2fb5ee1a8 Avoid using GdkEventButton directly in certain places.
Prefer dealing with GdkEvent pointers and using accessor functions like
gdk_event_get_button().

This is complicated by the fact that some GtkWidget method declarations
still use GdkEventButton pointers, and synthesizing button events pretty
much requires direct GdkEventButton access.  But GDK seems to be nudging
itself toward sealing the GdkEvent union.  Likely to happen in GDK4.

Mainly clean up signal handlers and leave method overrides alone for now.
2012-11-29 13:24:24 -05:00
dd958f0120 Bug #202576 - A way to refresh IMAP folder list 2012-11-22 16:18:51 +01:00
2c4ae5e768 Coding style and whitespace cleanup. 2012-11-10 15:54:43 -05:00
75595d233b Bug #683877 - No more contextual menus for links 2012-11-08 17:27:37 +01:00
acd6a6aed8 Bug #686325 - Preview message window keyboard use severely limited 2012-11-07 19:31:20 +01:00
cd27672f61 Bug #656143 - Stop using deprecated Gtk[HV]Box(Class) 2012-11-06 18:33:37 +01:00
d610562650 Bug 687400 - Composer settings not applied
EMailConfigWebView is an extension that configures EWebView instances.
This used to cover both the email formatter and the email composer, but
with the email formatter now using WebKit/GTK+ and the email composer
still using GtkHtml, the composer was left unconfigured.

Add an EMailConfigWebViewGtkHTML extension that targets EWebViewGtkHTML
instances and applies the relevant settings, and remove all the GtkHTML
contortions from EMailConfigWebView.
2012-11-03 11:00:24 -04:00
94eb069ea3 Bug #687442 - Magic spacebar avoids iTip formatter comment write 2012-11-02 15:18:10 +01:00
d3e3d93e81 Remove unused/forgotten function declarations 2012-11-02 11:36:42 +01:00
66fdfbcf89 EMailShellView: Remove GroupWise-specific cruft.
The GroupWise backend is dead, and this logic never belonged here in the
first place.
2012-10-19 08:51:54 -04:00
32ca78553b Remove "Disable Account" menu item for GOA-based accounts.
GOA-based accounts must only be disabled from gnome-control-center.
2012-10-19 08:42:42 -04:00
a902cc15ed Remove mail module's g_module_check_init().
Not needed anymore since all modules are resident nowadays.
2012-10-16 04:51:08 -04:00
2b46866a5c Bug 685675 - Fix packing of spell check language options
Word-wrapped GtkLabels and GtkTables just don't seem to get along.
The vertical allocation for the GtkLabel was way too big.  Replace
the GtkTable with a GtkGrid.
2012-10-09 18:25:25 -04:00
4483209dba Bug 684691 - EMailConfigFormatHTML: Signal handler never disconnected
EMailConfigFormatHTML listens for "changed" signals from a GSettings
instance, passing itself as the 'user_data' to the signal handler.  But
the signal handler was left connected after EMailConfigFormatHTML was
finalized, resulting in the signal handler receiving a dangling pointer.

Not using g_signal_connect_object() here because of the unresolved
reference leak issue in GObject.  The GSettings instance is likely
cached internally and lives well beyond the EMailConfigFormatHTML.
2012-10-09 16:56:42 -04:00
9cee475a1a EMailConfigWebView: Use G_DEFINE_DYNAMIC_TYPE.
Follow the usual GObject conventions.
2012-10-09 11:31:26 -04:00
5acc8469ce EMailConfigReader: Use G_DEFINE_DYNAMIC_TYPE.
Follow the usual GObject conventions.
2012-10-09 11:13:38 -04:00
c3eacfd37e EMailConfigFormatHTML: Use G_DEFINE_DYNAMIC_TYPE.
Follow the usual GObject conventions.
2012-10-09 10:01:05 -04:00
146f9f653f Avoid code duplication for reply on message attachment 2012-09-12 16:50:53 +02:00
c85109fc32 Coding style and whitespace cleanup. 2012-08-19 14:17:55 -04:00
6be2668e48 Adapt to CamelSession API changes.
These functions now return new references:

  camel_session_add_service()
  camel_session_list_services()

These functions have been renamed and also return new references:

  camel_session_get_service()        -> camel_session_ref_service()
  camel_session_get_service_by_url() -> camel_session_ref_service_by_url()
2012-08-12 11:44:37 -04:00
e8e4661811 Remove the settings capplet.
The evolution-settings capplet was originally designed for Anjal, it was
used in MeeGo as part of the Express Mode effort, but doesn't really fit
in GNOME 3 nowadays (nor did it really fit in GNOME 2, in my opinion).

This is pretty clearly dead weight at this point.  The MeeGo developers
have disappeared, and the remaining Evolution developers are not and do
not intend to maintain it.  Plus it doesn't even build currently.
2012-08-10 13:03:30 -04:00
0ae8e9e7b7 Return of the "mark messages as read" preference.
This reverses the removal of the "Mark messages as read" preference in
commit e7247d6d60.

I apparently misjudged the popularity of this preference, as there's
been a surprising amout of backlash and confusion as to its removal on
the mailing list, IRC channel, and various distro-support forums.

So, "mea culpa" for removing that one.  Haven't heard a peep about the
other removed preferences, however, so they will stay gone.
2012-08-08 10:12:15 -04:00
304a2c1c91 Bug #246530 - Rules editor lacks "Label is (not) 'None'" 2012-08-06 16:10:09 +02:00
518eb70213 Bug #678635 - File->Send/Receive lists too many sources 2012-07-25 16:51:13 +02:00
75ecbc91bd EMailShellBackend: Fix an EAlertSink runtime warning. 2012-07-18 17:43:24 -04:00
c14ebe7358 Bug 679649 - Remove "Recent Messages" from Quick Search Bar
The story on this is a question [1] was recently posed to the mailing
list about what's the different between "Recent Messages" and "Last 5
Days' Messages" as listed in the Show: combo box, and even I could not
answer before looking up the query expression for "Recent Messages" in
the source code (messages received in the past 24 hours, it turns out).

I can't defend why we need both options, and "Last 5 Days' Messages"
is less ambiguous and overlaps the results for "Recent Messages", so
"Last 5 Days' Messages" seems sufficient to me.  There are  numerous
ways to re-create the "Recent Messages" query if it's still desired:
saved search, search folder, or just sort messages by date received.

[1] https://mail.gnome.org/archives/evolution-list/2012-July/msg00044.html
2012-07-09 20:06:00 -04:00
69e55b253e Bug #602425 - Search in "Current Account"/"All Accounts" depends on vfolders 2012-07-09 16:44:31 +02:00
a0bc647f07 Remove mail_expunge_folder().
Use e_mail_folder_expunge() instead.
2012-07-09 08:44:22 -04:00
5bd9b58290 Remove mail_refresh_folder().
Use e_mail_reader_refresh_folder() instead.
2012-07-09 08:44:22 -04:00
9c79788481 Add e_mail_reader_unsubscribe_folder_name().
Replaces e_mail_session_unsubscribe_folder().
2012-07-09 08:44:22 -04:00
451afa8429 Add e_mail_reader_delete_folder_name().
Fetches the CamelFolder asynchronously, then deletes it asynchronously.
2012-07-09 08:44:22 -04:00
acac6795d9 Avoid em_folder_tree_get_selected_folder() in some places.
em_folder_tree_get_selected_folder() currently blocks, and I'm about to
remove the function.  But there's a couple places where we just need to
block for now, else it would require a significant rewrite.  So execute
the em_folder_tree_get_selected_folder() logic manually in those places.
2012-07-09 08:44:21 -04:00
749b49e507 Disconnect a CamelService after editing its settings.
This will force Evolution to reconnect to the service using the current
settings.  However this is not a complete solution.  If the new settings
now point to a completely different mail account, we leave behind cached
messages and database tables from the previous account such that you end
up with some weird hybrid of the previous account and current account.

I guess for now the answer is "don't do that", but we should try to
handle that more gracefully in the future -- more for architectural
correctness than it being a common real world use case.
2012-07-06 15:35:41 -04:00
e5eb699ce3 Fix few memory leaks 2012-06-27 20:17:28 +02:00
cc8bf823ec Coding style and whitespace cleanup. 2012-06-24 20:31:43 -04:00
d6ad0c22a2 Bug 678397 - Move "mail-to-task" actions to a submenu
Shortens the Message menu a little for low screen resolutions.
2012-06-21 01:31:56 -04:00
50a5e067d5 Bug 678393 - Disable Properties for built-in mail stores 2012-06-20 14:40:06 -04:00
94daae3dba Remove the last remaining usage of GConf 2012-06-15 09:04:08 +02:00
b4fbbde6ab Remove "enable-local" and "enable-vfolders" GSettings key.
We have built-in ESources for the 'local' and 'vfolder' mail stores,
and can now track their enabled state as we would any other mail store.
2012-06-08 13:47:22 -04:00
c4071b0a1d Fix displayed message headers
The new formatter was ignoring selected headers, always displaying
only From, To, Subject and Date (default headers).

Handling of the currently displayed headers has been moved to
EMailConfigFormatHTML extension, because it is related to
configuration of EMailFormatter, rather then EMailReader.
2012-06-08 17:08:00 +02:00
b3c57ed8e5 Bug 677624 - Disable Properties when Search Folders is selected 2012-06-07 20:32:51 -04:00
5b8340563c Mail formatter rewrite
All mail-parsing and formatting code has been moved to em-format.
Parsing is handeled by EMailParser class, formatting by EMailFormatter.
Both classes have registry which hold extensions - simple classes
that do actual parsing and formatting. Each supported mime-type
has it's own parser and formatter extension class.
2012-06-06 15:27:19 +02:00
2a39437ee9 Adapt to single-include E-D-S libraries. 2012-06-03 15:14:03 -04:00