Commit Graph

7245 Commits

Author SHA1 Message Date
853abba1d3 Bug #693254 - Mail reply uses wrong "From:" account 2013-03-05 14:14:31 +01:00
642eaed17f Fix a regression from the previous commit for bug #645476
Evolution could crash when changing message view, like when
toggling Show Deleted messages. This effectively reverts
the previous commit and propagates the same changes further
in the code.
2013-03-05 07:58:37 +01:00
4010ad11b4 Bug #645476 - Avoid scroll to cursor on folder change in message list (take 3) 2013-03-04 22:07:47 +01:00
d5480344fc EMailTagEditor: Remove calendar configuration properties.
Remove EMailTagEditor's "use-24-hour-format" and "week-start-day"
properties, which were being used to manually configure its internal
EDateEdit instance.  This is unnecessary since all EDateEdit instances
are automatically configured by the ESettingsDateEdit extension.
2013-03-04 09:21:38 -05:00
6bb4295b92 e_mail_config_service_backend_get_settings: Another corner case.
ESourceCollection's default backend name is "none".  Unfortunately so
is CamelNullStore's provider name.  Make sure these two misfits don't
get paired up!
2013-02-28 12:46:19 -05:00
4a06e1bb63 Remove emu_free_mail_cache().
No longer needed, since the resources it frees are no longer used.
2013-02-27 10:59:55 -05:00
d509f21104 EHTTPRequest: Use e_mail_ui_session_check_known_address_sync().
Use e_mail_ui_session_check_known_address_sync() to help determine
whether to automatically display images in a text/html MIME part.
2013-02-27 10:59:55 -05:00
0b2607486e Move CamelSession.lookup_addressbook() handler to EMailUISession.
Have the new handler call e_mail_ui_session_check_known_address_sync()
instead of em_utils_in_addressbook().
2013-02-27 10:59:55 -05:00
ef355cd5c3 Add e_mail_ui_session_check_known_address_sync().
Replaces em_utils_in_addressbook().

Foregos any address caching since any such cache would likely not be
updated properly as contacts are added and removed and would lead to
incorrect results.

An asynchronous variation of this function can be easily added at some
future date should a need arise.
2013-02-27 10:59:55 -05:00
7001c2fe65 EMailReader: Remove addresses from EPhotoCache as needed.
Use e_photo_cache_remove() instead of emu_remove_from_mail_cache_1().
2013-02-27 10:59:54 -05:00
26e1f45bf3 EMailFormatter: Remove "only-local-photos" property.
EPhotoCache already handles this setting.
2013-02-27 10:59:54 -05:00
c9a20f545f EMailRequest: Use EPhotoCache to obtain contact photos. 2013-02-27 10:59:54 -05:00
8e20704597 EMailUISession: Add a read-only "photo-cache" property.
New functions:

    e_mail_ui_session_get_photo_cache()
2013-02-27 10:59:54 -05:00
4ac5e7162c EMailRequest cleanups. 2013-02-27 10:59:54 -05:00
33bbdaa50b Coding style and whitespace cleanup. 2013-02-23 22:24:59 -05:00
fcf360d051 Fix a memory leak in EMailDisplay::do_reload_display 2013-02-21 11:10:44 +01:00
da975dadf5 Replace deprecated static mutexes 2013-02-13 18:46:30 +01:00
3b11207dcb Use camel_service_ref_session(). 2013-02-11 10:38:29 -05:00
60d1c3054a G_PRIORITY_HIGH_IDLE is sufficient to beat GTK+ redraws.
GTK+ uses (G_PRIORITY_HIGH_IDLE + 20) for redrawing operations, which is
actually a slightly lower priority than G_PRIORITY_HIGH_IDLE.  Therefore
for our purpose, G_PRIORITY_HIGH_IDLE is sufficient.
2013-02-08 14:21:42 -05:00
9c6a7673b8 Add comments around g_idle_add() changes 2013-02-08 18:26:49 +01:00
eb9e927926 Bug #683867 - Schedule actions with higher idle priority 2013-02-08 18:26:48 +01:00
6ba0a6a95b Revert "Bug #683867 - Schedule actions with higher idle priority"
This reverts commit 2b507716b2.

The commit contains not a single comment as to why these custom priority
values are being used.  The rationale needs to be documented in the code,
either at each call point or preferrably at a centralized priority value
definition.
2013-02-08 07:03:26 -05:00
2b507716b2 Bug #683867 - Schedule actions with higher idle priority 2013-02-08 12:37:30 +01:00
e6a149efce EMailAccountStore: Use an appropriate icon for online accounts.
Use "goa-panel" for GOA, "credentials-preferences" for UOA.

Also move the icon before the account name.  Looks better.
2013-01-31 17:39:05 -05:00
fd43cd692a Incorporate ESourceUOA.
Where we make exceptions for GNOME Online Accounts, so too shall we for
Ubuntu Online Accounts.
2013-01-31 17:39:05 -05:00
e583928e04 Use e_book_client_connect().
Instead of e_client_utils_open_new() and e_book_client_new().
2013-01-30 08:37:15 -05:00
3aedeee20f Bug #692781 - [pine-importer] Abort on book failure during contact import 2013-01-29 17:48:11 +01:00
67bacdcdb4 Bug #692777 - Crash on folder rename 2013-01-29 16:51:51 +01:00
f3dfdae845 Bug #692009 - text/css always formatted as attachment
Might be the final change for this bug, the two previous commits
were not using the right approach, causing regression in rendering
of text/* parts which were not named in the list of excluded content
types for a 'raw' formatting.
2013-01-24 13:07:33 +01:00
dde7200f40 Exclude also text/calendar in a fix for bug #692009 2013-01-21 19:08:11 +01:00
ab8cff63d2 EMailBrowser: Fix packing of preview pane.
Using gtk_box_new() instead of gtk_vbox_new() changes the way child
widgets are packed by default via gtk_container_add().  gtk_vbox_new()
expands them by default, gtk_box_new() does not, and the preview pane
was being packed with gtk_container_add().

Packing widgets into a GtkBox with gtk_container_add() is usually the
wrong way.  Use gtk_box_pack_start() instead, with expand=TRUE.
2013-01-21 08:42:27 -05:00
0e0060e639 Bug 692143 - Auto-configured MSN account should use POP, not IMAP
In e_mail_config_service_page_auto_configre(), we do detect that only
POP3 is available for MSN accounts and switch to the appropriate service
backend.

The problem was with the hack I added awhile back to momentarily skip to
the Receiving page just before skipping to the Summary page, so clicking
"Go Back" from the Summary page would return to the Receiving page.

That momentary skip triggered mail_config_assistant_prepare() on the
Receiving page, which then triggered e_mail_config_page_setup_defaults()
since the Receiving page was not yet in the visited pages hash table.

The Receiving page's setup_defaults() method reset the service backend
to IMAPX, which is the correct thing to do when not auto-configured.

The solution is add the Receiving page to the visited pages hash table
after a successful auto-configuration, but just BEFORE we momentarily
skip to it.  This tricks mail_config_assistant_prepare() into thinking
the page was already visited, and it skips setting up defaults for it.

Also added the Sending page to visited pages, just for consistency.
2013-01-21 08:02:14 -05:00
43911af529 Bug #692009 - text/css always formatted as attachment 2013-01-21 13:23:35 +01:00
8e2902eefc Bump GDK_VERSION_MIN_REQUIRED to GDK_VERSION_3_2.
Clean up resulting deprecation warnings, which were all related to
GtkOrientable consolidation (e.g. gtk_hbox_new() -> gtk_box_new()).
2013-01-19 19:08:01 -05:00
722a27e850 Bug #692005 - Changing character encoding doesn't work 2013-01-18 18:34:56 +01:00
a55f24dfb3 Adapt to CamelSession API changes. 2013-01-12 14:15:57 -05:00
de978d4231 Use g_hash_table_add() when using a hash table as a set.
g_hash_table_add(table, key) uses less memory than
g_hash_table_insert(table, key, GINT_TO_POINTER (1)).

Also use g_hash_table_contains() when testing for membership.
2013-01-11 13:43:19 -05:00
6a79322ff6 Reduce diff noise with webkit-composer branch. 2013-01-11 09:39:04 -05:00
b1ed35f70d Coding style and whitespace cleanup. 2013-01-10 11:20:32 -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
6fecc5899e Fix compiler warnings. 2012-12-15 08:16:36 -05:00
edf538b50b Revert part of the previous commit, EMailUISession::alert_user()
Keep the EMailUISession define its own implementation of
CamelSession::alert_user(). It's good for couple reasons:
a) dialog is shown above Evolution itself (has parent)
b) info dialogs are shown in an alert bar
2012-12-14 15:49:46 +01:00
da874077be Implement and use CamelSession::trust_prompt() 2012-12-14 15:30:29 +01:00
011747a5f7 e_mail_migrate(): Remove directory creation code.
e_shell_backend_get_data_dir() already creates the user's data directory
for mail, so there's no need to try and create the directory again.

This eliminates the only usage of the E_SHELL_MIGRATE_ERROR domain.
2012-12-13 17:28:32 -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
2f0d83cf74 EMailFormatterContext: Keep a reference to EMailPartList.
Replace the individual components of an EMailPartList with a reference
on the EMailPartList itself in EMailFormatContext.  Easier to manage.
2012-12-07 14:01:04 -05:00
2bbd4baef0 Do not empty trash/delete junk in disabled accounts on exit 2012-12-04 19:35:55 +01:00
ae6344a22b Bug #315317 - Add option to expunge messages on folder leave 2012-12-04 19:33:29 +01:00