Accepting request 160754 from GNOME:Factory

Update to 3.8.0 (forwarded request 160733 from dimstar)

OBS-URL: https://build.opensuse.org/request/show/160754
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/evolution?expand=0&rev=138
This commit is contained in:
Stephan Kulow 2013-04-05 05:27:25 +00:00 committed by Git OBS Bridge
commit fc2a58febd
13 changed files with 197 additions and 1032 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2c564f3e59cb26663d3e3992c881842815fb8fbc037074475f906030c8c5fd25
size 12396872

3
evolution-3.8.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6f78bcce1d4da7640dad8d083cc90de3500d51f190a089c723b0dcced690f642
size 12318896

View File

@ -1,102 +0,0 @@
From b19b5a6c30216e7663022bd406bcffbf8e6d5aa3 Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Wed, 23 Jan 2013 14:25:19 +0000
Subject: Bug #639698 - Crash in mail_shell_view_execute_search()
---
diff --git a/modules/mail/e-mail-shell-view.c b/modules/mail/e-mail-shell-view.c
index 29bb788..d500cfc 100644
--- a/modules/mail/e-mail-shell-view.c
+++ b/modules/mail/e-mail-shell-view.c
@@ -546,8 +546,8 @@ all_accounts:
* account-wide searches still in progress. */
text = e_shell_searchbar_get_search_text (searchbar);
if (text == NULL || *text == '\0') {
- CamelStore *selected_store;
- gchar *selected_folder_name;
+ CamelStore *selected_store = NULL;
+ gchar *selected_folder_name = NULL;
if (priv->search_account_all != NULL) {
g_object_unref (priv->search_account_all);
@@ -565,13 +565,17 @@ all_accounts:
* avoid search conflicts, so we can't just grab the
* folder URI and let the asynchronous callbacks run
* after we've already kicked off the search. */
- em_folder_tree_get_selected (
- folder_tree, &selected_store, &selected_folder_name);
- folder = camel_store_get_folder_sync (
- selected_store, selected_folder_name,
- CAMEL_STORE_FOLDER_INFO_FAST, NULL, NULL);
- e_mail_reader_set_folder (reader, folder);
- g_object_unref (selected_store);
+ if (em_folder_tree_get_selected (folder_tree, &selected_store, &selected_folder_name) &&
+ selected_store && selected_folder_name) {
+ folder = camel_store_get_folder_sync (
+ selected_store, selected_folder_name,
+ CAMEL_STORE_FOLDER_INFO_FAST, NULL, NULL);
+ e_mail_reader_set_folder (reader, folder);
+ g_object_unref (folder);
+ }
+
+ if (selected_store)
+ g_object_unref (selected_store);
g_free (selected_folder_name);
gtk_widget_set_sensitive (GTK_WIDGET (combo_box), TRUE);
@@ -610,7 +614,7 @@ all_accounts:
camel_service_connect_sync (service, NULL, NULL);
search_folder = (CamelVeeFolder *) camel_vee_folder_new (
- CAMEL_STORE (service), _("All Account Search"), 0);
+ CAMEL_STORE (service), _("All Account Search"), CAMEL_STORE_FOLDER_PRIVATE);
priv->search_account_all = search_folder;
g_object_unref (service);
@@ -643,8 +647,8 @@ current_account:
* account-wide searches still in progress. */
text = e_shell_searchbar_get_search_text (searchbar);
if (text == NULL || *text == '\0') {
- CamelStore *selected_store;
- gchar *selected_folder_name;
+ CamelStore *selected_store = NULL;
+ gchar *selected_folder_name = NULL;
if (priv->search_account_current != NULL) {
g_object_unref (priv->search_account_current);
@@ -662,13 +666,17 @@ current_account:
* avoid search conflicts, so we can't just grab the
* folder URI and let the asynchronous callbacks run
* after we've already kicked off the search. */
- em_folder_tree_get_selected (
- folder_tree, &selected_store, &selected_folder_name);
- folder = camel_store_get_folder_sync (
- selected_store, selected_folder_name,
- CAMEL_STORE_FOLDER_INFO_FAST, NULL, NULL);
- e_mail_reader_set_folder (reader, folder);
- g_object_unref (selected_store);
+ if (em_folder_tree_get_selected (folder_tree, &selected_store, &selected_folder_name) &&
+ selected_store && selected_folder_name) {
+ folder = camel_store_get_folder_sync (
+ selected_store, selected_folder_name,
+ CAMEL_STORE_FOLDER_INFO_FAST, NULL, NULL);
+ e_mail_reader_set_folder (reader, folder);
+ g_object_unref (folder);
+ }
+
+ if (selected_store)
+ g_object_unref (selected_store);
g_free (selected_folder_name);
gtk_widget_set_sensitive (GTK_WIDGET (combo_box), TRUE);
@@ -707,7 +715,7 @@ current_account:
camel_service_connect_sync (service, NULL, NULL);
search_folder = (CamelVeeFolder *) camel_vee_folder_new (
- CAMEL_STORE (service), _("Account Search"), 0);
+ CAMEL_STORE (service), _("Account Search"), CAMEL_STORE_FOLDER_PRIVATE);
priv->search_account_current = search_folder;
g_object_unref (service);
--
cgit v0.9.0.2

View File

@ -1,152 +0,0 @@
From 9f5d682172643701e51452c4803db904cd6dbeac Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Wed, 23 Jan 2013 19:06:47 +0000
Subject: Bug #680537 - Reply to individual message in digest generates empty body
---
diff --git a/modules/mail/e-mail-attachment-handler.c b/modules/mail/e-mail-attachment-handler.c
index 8bc2aad..1623cca 100644
--- a/modules/mail/e-mail-attachment-handler.c
+++ b/modules/mail/e-mail-attachment-handler.c
@@ -60,40 +60,87 @@ static GtkTargetEntry target_table[] = {
{ (gchar *) "x-uid-list", 0, 0 }
};
-static void
-mail_attachment_handler_forward (GtkAction *action,
- EAttachmentHandler *handler)
+static CamelMimeMessage *
+mail_attachment_handler_get_selected_message (EAttachmentHandler *handler)
{
- EMailAttachmentHandlerPrivate *priv;
- EShellSettings *shell_settings;
EAttachment *attachment;
EAttachmentView *view;
CamelMimePart *mime_part;
CamelDataWrapper *wrapper;
- EMailForwardStyle style;
- const gchar *property_name;
+ CamelMimeMessage *message = NULL;
+ CamelContentType *content_type;
GList *selected;
view = e_attachment_handler_get_view (handler);
- priv = E_MAIL_ATTACHMENT_HANDLER_GET_PRIVATE (handler);
selected = e_attachment_view_get_selected_attachments (view);
- g_return_if_fail (g_list_length (selected) == 1);
+ g_return_val_if_fail (g_list_length (selected) == 1, NULL);
attachment = E_ATTACHMENT (selected->data);
mime_part = e_attachment_get_mime_part (attachment);
wrapper = camel_medium_get_content (CAMEL_MEDIUM (mime_part));
+ content_type = camel_data_wrapper_get_mime_type_field (wrapper);
+ if (content_type && camel_content_type_is (content_type, "message", "rfc822")) {
+ CamelDataWrapper *inner;
+ CamelContentType *inner_content_type;
+
+ inner = camel_medium_get_content (CAMEL_MEDIUM (wrapper));
+ inner_content_type = camel_data_wrapper_get_mime_type_field (inner);
+ if (!camel_content_type_is (inner_content_type, content_type->type, content_type->subtype)) {
+ CamelStream *mem;
+
+ /* Create a message copy in case the inner content-type doesn't match
+ the mime_part's content type, which can happen for multipart/digest,
+ where it confuses the formatter on reply, which skips all rfc822 subparts.
+ */
+ mem = camel_stream_mem_new ();
+ camel_data_wrapper_write_to_stream_sync (CAMEL_DATA_WRAPPER (wrapper), mem, NULL, NULL);
+
+ g_seekable_seek (G_SEEKABLE (mem), 0, G_SEEK_SET, NULL, NULL);
+ message = camel_mime_message_new ();
+ if (!camel_data_wrapper_construct_from_stream_sync (CAMEL_DATA_WRAPPER (message), mem, NULL, NULL)) {
+ g_object_unref (message);
+ message = NULL;
+ }
+
+ g_object_unref (mem);
+ }
+ }
+
+ if (!message)
+ message = g_object_ref (wrapper);
+
+ g_list_foreach (selected, (GFunc) g_object_unref, NULL);
+ g_list_free (selected);
+
+ return message;
+}
+
+static void
+mail_attachment_handler_forward (GtkAction *action,
+ EAttachmentHandler *handler)
+{
+ EMailAttachmentHandlerPrivate *priv;
+ EShellSettings *shell_settings;
+ EMailForwardStyle style;
+ CamelMimeMessage *message;
+ const gchar *property_name;
+
+ priv = E_MAIL_ATTACHMENT_HANDLER_GET_PRIVATE (handler);
+
+ message = mail_attachment_handler_get_selected_message (handler);
+ g_return_if_fail (message != NULL);
+
property_name = "mail-forward-style";
shell_settings = e_shell_get_shell_settings (priv->shell);
style = e_shell_settings_get_int (shell_settings, property_name);
em_utils_forward_message (
priv->shell, CAMEL_SESSION (priv->session),
- CAMEL_MIME_MESSAGE (wrapper), style, NULL, NULL);
+ message, style, NULL, NULL);
- g_list_foreach (selected, (GFunc) g_object_unref, NULL);
- g_list_free (selected);
+ g_object_unref (message);
}
static void
@@ -102,34 +149,24 @@ mail_attachment_handler_reply (EAttachmentHandler *handler,
{
EMailAttachmentHandlerPrivate *priv;
EShellSettings *shell_settings;
- EAttachment *attachment;
- EAttachmentView *view;
- CamelMimePart *mime_part;
- CamelDataWrapper *wrapper;
EMailReplyStyle style;
+ CamelMimeMessage *message;
const gchar *property_name;
- GList *selected;
- view = e_attachment_handler_get_view (handler);
priv = E_MAIL_ATTACHMENT_HANDLER_GET_PRIVATE (handler);
- selected = e_attachment_view_get_selected_attachments (view);
- g_return_if_fail (g_list_length (selected) == 1);
-
- attachment = E_ATTACHMENT (selected->data);
- mime_part = e_attachment_get_mime_part (attachment);
- wrapper = camel_medium_get_content (CAMEL_MEDIUM (mime_part));
+ message = mail_attachment_handler_get_selected_message (handler);
+ g_return_if_fail (message != NULL);
property_name = "mail-reply-style";
shell_settings = e_shell_get_shell_settings (priv->shell);
style = e_shell_settings_get_int (shell_settings, property_name);
em_utils_reply_to_message (
- priv->shell, CAMEL_MIME_MESSAGE (wrapper),
+ priv->shell, message,
NULL, NULL, reply_type, style, NULL, NULL);
- g_list_foreach (selected, (GFunc) g_object_unref, NULL);
- g_list_free (selected);
+ g_object_unref (message);
}
static void
--
cgit v0.9.0.2

View File

@ -1,33 +0,0 @@
From 61f3f5669ac6418c33dd4bbfaef61ee29bd9fecd Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Tue, 29 Jan 2013 13:50:00 +0000
Subject: Bug #692775 - Double-quoting message with HTML and text
---
diff --git a/modules/prefer-plain/e-mail-parser-prefer-plain.c b/modules/prefer-plain/e-mail-parser-prefer-plain.c
index 66ff321..02cfd99 100644
--- a/modules/prefer-plain/e-mail-parser-prefer-plain.c
+++ b/modules/prefer-plain/e-mail-parser-prefer-plain.c
@@ -322,6 +322,20 @@ empe_prefer_plain_parse (EMailParserExtension *extension,
}
if (plain_text_parts) {
+ if (parts && nparts > 1) {
+ /* a text/html part is hidden, but not marked as attachment,
+ thus do that now, when there exists a text/plain part */
+ GSList *piter;
+
+ for (piter = parts; piter; piter = g_slist_next (piter)) {
+ EMailPart *mpart = piter->data;
+
+ if (mpart && mpart->is_hidden && g_strcmp0 (mpart->mime_type, "text/html") == 0) {
+ mpart->is_attachment = TRUE;
+ }
+ }
+ }
+
/* plain_text parts should be always first */
parts = g_slist_concat (plain_text_parts, parts);
}
--
cgit v0.9.0.2

View File

@ -1,58 +0,0 @@
From d25c6ff68132221ae1369aff29b8d7acbb2fb3aa Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Thu, 24 Jan 2013 12:11:00 +0000
Subject: 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.
---
diff --git a/em-format/e-mail-formatter.h b/em-format/e-mail-formatter.h
index 9b4e84d..befa473 100644
--- a/em-format/e-mail-formatter.h
+++ b/em-format/e-mail-formatter.h
@@ -50,6 +50,7 @@ typedef enum {
E_MAIL_FORMATTER_MODE_NORMAL = 0,
E_MAIL_FORMATTER_MODE_SOURCE,
E_MAIL_FORMATTER_MODE_RAW,
+ E_MAIL_FORMATTER_MODE_CID,
E_MAIL_FORMATTER_MODE_PRINTING,
E_MAIL_FORMATTER_MODE_ALL_HEADERS
} EMailFormatterMode;
diff --git a/mail/e-mail-display.c b/mail/e-mail-display.c
index 9bb3238..9da76863 100644
--- a/mail/e-mail-display.c
+++ b/mail/e-mail-display.c
@@ -354,7 +354,7 @@ mail_display_resource_requested (WebKitWebView *web_view,
new_uri = e_mail_part_build_uri (
part_list->folder, part_list->message_uid,
"part_id", G_TYPE_STRING, uri,
- "mode", G_TYPE_INT, E_MAIL_FORMATTER_MODE_RAW, NULL);
+ "mode", G_TYPE_INT, E_MAIL_FORMATTER_MODE_CID, NULL);
webkit_network_request_set_uri (request, new_uri);
diff --git a/mail/e-mail-request.c b/mail/e-mail-request.c
index 2794cee..b27b009 100644
--- a/mail/e-mail-request.c
+++ b/mail/e-mail-request.c
@@ -142,15 +142,7 @@ handle_mail_request (GSimpleAsyncResult *res,
}
if (part) {
- CamelContentType *content_type;
-
- content_type = camel_mime_part_get_content_type (part->part);
-
- if (context.mode == E_MAIL_FORMATTER_MODE_RAW && content_type &&
- camel_content_type_is (content_type, "text", "*") &&
- !camel_content_type_is (content_type, "text", "plain") &&
- !camel_content_type_is (content_type, "text", "html") &&
- !camel_content_type_is (content_type, "text", "calendar")) {
+ if (context.mode == E_MAIL_FORMATTER_MODE_CID) {
CamelDataWrapper *dw;
CamelStream *raw_content;
GByteArray *ba;
--
cgit v0.9.0.2

View File

@ -1,21 +0,0 @@
From e0944f093a1dd302cae7995c5e495066fb8b5497 Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Tue, 29 Jan 2013 16:48:40 +0000
Subject: Bug #692781 - [pine-importer] Abort on book failure during contact import
---
diff --git a/mail/importers/pine-importer.c b/mail/importers/pine-importer.c
index 664a77b..60a7c54 100644
--- a/mail/importers/pine-importer.c
+++ b/mail/importers/pine-importer.c
@@ -157,7 +157,7 @@ import_contact (EBookClient *book_client,
book_client, card, &new_uid, NULL, &error);
if (error != NULL) {
- g_error (
+ g_warning (
"%s: Failed to add contact: %s",
G_STRFUNC, error->message);
g_error_free (error);
--
cgit v0.9.0.2

View File

@ -1,20 +0,0 @@
From ffb1a132cba3700d60a79e250616632a4e1371db Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Tue, 29 Jan 2013 16:07:56 +0000
Subject: Bug #692783 - [mail-to-task] Crash on edit prompt cancel
---
diff --git a/plugins/mail-to-task/mail-to-task.c b/plugins/mail-to-task/mail-to-task.c
index 86d644a..553955c 100644
--- a/plugins/mail-to-task/mail-to-task.c
+++ b/plugins/mail-to-task/mail-to-task.c
@@ -821,7 +821,6 @@ do_manage_comp_idle (struct _manage_comp *mc)
} else {
/* User canceled editing already existing event, so treat it as if he just closed the editor window */
comp_editor_closed (NULL, FALSE, mc);
- g_cond_signal (mc->cond);
}
if (error) {
--
cgit v0.9.0.2

View File

@ -1,32 +0,0 @@
From 0559de901e376c897515d684b357e6d9566f3b89 Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Tue, 29 Jan 2013 15:52:45 +0000
Subject: Bug #692777 - Crash on folder rename
---
diff --git a/mail/e-mail-backend.c b/mail/e-mail-backend.c
index 24a46ed..bad33f5 100644
--- a/mail/e-mail-backend.c
+++ b/mail/e-mail-backend.c
@@ -685,9 +685,6 @@ mail_backend_folder_renamed_cb (MailFolderCache *folder_cache,
g_list_free_full (list, (GDestroyNotify) g_object_unref);
- g_free (old_uri);
- g_free (new_uri);
-
/* Rename GalView files. */
for (ii = 0; ii < G_N_ELEMENTS (cachenames); ii++) {
@@ -704,6 +701,9 @@ mail_backend_folder_renamed_cb (MailFolderCache *folder_cache,
g_free (newname);
}
+ g_free (old_uri);
+ g_free (new_uri);
+
/* This does something completely different.
* XXX Make it a separate signal handler? */
mail_filter_rename_folder (
--
cgit v0.9.0.2

View File

@ -1,338 +0,0 @@
From cabfd4b9f6c9f5f8deaba750529308de7aafde5d Mon Sep 17 00:00:00 2001
From: Michel Dänzer <michel@daenzer.net>
Date: Fri, 08 Feb 2013 11:37:46 +0000
Subject: Bug #683867 - Schedule actions with higher idle priority
---
diff --git a/em-format/e-mail-parser.c b/em-format/e-mail-parser.c
index 36e6676..b13ebd9 100644
--- a/em-format/e-mail-parser.c
+++ b/em-format/e-mail-parser.c
@@ -660,9 +660,10 @@ e_mail_parser_wrap_as_attachment (EMailParser *parser,
}
/* e_attachment_load_async must be called from main thread */
- g_idle_add (
+ g_idle_add_full (G_PRIORITY_HIGH,
(GSourceFunc) load_attachment_idle,
- g_object_ref (empa->attachment));
+ g_object_ref (empa->attachment),
+ NULL);
if (size != 0) {
GFileInfo *fileinfo;
diff --git a/libemail-engine/e-mail-utils.c b/libemail-engine/e-mail-utils.c
index f29b2f7..3043e06 100644
--- a/libemail-engine/e-mail-utils.c
+++ b/libemail-engine/e-mail-utils.c
@@ -883,7 +883,7 @@ free_mail_cache_thread (gpointer user_data)
G_UNLOCK (photos_cache);
- g_idle_add (free_mail_cache_idle, user_data);
+ g_idle_add_full (G_PRIORITY_HIGH, free_mail_cache_idle, user_data, NULL);
return NULL;
}
diff --git a/libemail-engine/mail-folder-cache.c b/libemail-engine/mail-folder-cache.c
index 5561bb6..9c9c17d 100644
--- a/libemail-engine/mail-folder-cache.c
+++ b/libemail-engine/mail-folder-cache.c
@@ -304,8 +304,8 @@ flush_updates (MailFolderCache *cache)
if (g_queue_is_empty (&cache->priv->updates))
return;
- cache->priv->update_id = g_idle_add (
- (GSourceFunc) flush_updates_idle_cb, cache);
+ cache->priv->update_id = g_idle_add_full (G_PRIORITY_DEFAULT,
+ (GSourceFunc) flush_updates_idle_cb, cache, NULL);
}
/* This is how unread counts work (and don't work):
diff --git a/libemail-utils/mail-mt.c b/libemail-utils/mail-mt.c
index 00b3272..f27a645 100644
--- a/libemail-utils/mail-mt.c
+++ b/libemail-utils/mail-mt.c
@@ -216,7 +216,7 @@ mail_msg_unref (gpointer msg)
/* Destroy the message from an idle callback
* so we know we're in the main loop thread. */
- g_idle_add ((GSourceFunc) mail_msg_free, mail_msg);
+ g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) mail_msg_free, mail_msg, NULL);
}
}
@@ -429,8 +429,8 @@ mail_msg_proxy (MailMsg *msg)
G_LOCK (idle_source_id);
if (idle_source_id == 0)
- idle_source_id = g_idle_add (
- (GSourceFunc) mail_msg_idle_cb, NULL);
+ idle_source_id = g_idle_add_full (G_PRIORITY_DEFAULT,
+ (GSourceFunc) mail_msg_idle_cb, NULL, NULL);
G_UNLOCK (idle_source_id);
}
@@ -484,8 +484,8 @@ mail_msg_main_loop_push (gpointer msg)
G_LOCK (idle_source_id);
if (idle_source_id == 0)
- idle_source_id = g_idle_add (
- (GSourceFunc) mail_msg_idle_cb, NULL);
+ idle_source_id = g_idle_add_full (G_PRIORITY_DEFAULT,
+ (GSourceFunc) mail_msg_idle_cb, NULL, NULL);
G_UNLOCK (idle_source_id);
}
diff --git a/mail/e-mail-browser.c b/mail/e-mail-browser.c
index ac72716..6b9d04f 100644
--- a/mail/e-mail-browser.c
+++ b/mail/e-mail-browser.c
@@ -306,7 +306,7 @@ mail_browser_message_list_built_cb (EMailBrowser *browser,
g_return_if_fail (IS_MESSAGE_LIST (message_list));
if (!message_list_count (message_list))
- g_idle_add (close_on_idle_cb, browser);
+ g_idle_add_full (G_PRIORITY_DEFAULT, close_on_idle_cb, browser, NULL);
}
static gboolean
diff --git a/mail/e-mail-display.c b/mail/e-mail-display.c
index 9da76863..7430a2e 100644
--- a/mail/e-mail-display.c
+++ b/mail/e-mail-display.c
@@ -1923,7 +1923,7 @@ e_mail_display_reload (EMailDisplay *display)
/* Schedule reloading if neccessary */
display->priv->scheduled_reload =
- g_idle_add ((GSourceFunc) do_reload_display, display);
+ g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) do_reload_display, display, NULL);
}
GtkAction *
diff --git a/mail/e-mail-ui-session.c b/mail/e-mail-ui-session.c
index 47eeea2..66057c3 100644
--- a/mail/e-mail-ui-session.c
+++ b/mail/e-mail-ui-session.c
@@ -599,7 +599,7 @@ mail_ui_session_add_service (CamelSession *session,
context->service = g_object_ref (service);
g_idle_add_full (
- G_PRIORITY_DEFAULT_IDLE,
+ G_PRIORITY_DEFAULT,
(GSourceFunc) mail_ui_session_add_service_cb,
context, (GDestroyNotify) source_context_free);
}
diff --git a/modules/itip-formatter/itip-view.c b/modules/itip-formatter/itip-view.c
index 0e9b39f..c15fa5d 100644
--- a/modules/itip-formatter/itip-view.c
+++ b/modules/itip-formatter/itip-view.c
@@ -5723,7 +5723,7 @@ view_response_cb (ItipView *view,
send_item (pitip, view);
break;
case ITIP_VIEW_RESPONSE_OPEN:
- g_idle_add (idle_open_cb, pitip);
+ g_idle_add_full (G_PRIORITY_DEFAULT, idle_open_cb, pitip, NULL);
return;
default:
break;
diff --git a/plugins/mail-to-task/mail-to-task.c b/plugins/mail-to-task/mail-to-task.c
index 553955c..1ff2ccc 100644
--- a/plugins/mail-to-task/mail-to-task.c
+++ b/plugins/mail-to-task/mail-to-task.c
@@ -1014,7 +1014,7 @@ do_mail_to_event (AsyncData *data)
if (!e_cal_client_get_object_sync (client, icalcomponent_get_uid (icalcomp), NULL, &(mc->stored_comp), NULL, NULL))
mc->stored_comp = NULL;
- g_idle_add ((GSourceFunc) do_manage_comp_idle, mc);
+ g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) do_manage_comp_idle, mc, NULL);
oldmc = mc;
diff --git a/shell/e-shell-searchbar.c b/shell/e-shell-searchbar.c
index 7975f74..5c8e050 100644
--- a/shell/e-shell-searchbar.c
+++ b/shell/e-shell-searchbar.c
@@ -1546,7 +1546,7 @@ e_shell_searchbar_load_state (EShellSearchbar *searchbar)
/* Execute the search when we have time. */
g_object_ref (shell_view);
searchbar->priv->state_dirty = FALSE;
- g_idle_add (idle_execute_search, shell_view);
+ g_idle_add_full (G_PRIORITY_DEFAULT, idle_execute_search, shell_view, NULL);
}
void
diff --git a/smime/gui/certificate-manager.c b/smime/gui/certificate-manager.c
index 3d823e6..f9f1b8a 100644
--- a/smime/gui/certificate-manager.c
+++ b/smime/gui/certificate-manager.c
@@ -1078,7 +1078,7 @@ e_cert_manager_config_init (ECertManagerConfig *ecmc)
* fully initialize itself and start its main loop before we
* load certificates, since doing so may trigger a password
* dialog, and dialogs require a main loop. */
- g_idle_add ((GSourceFunc) populate_ui, ecmc);
+ g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) populate_ui, ecmc, NULL);
/* Disconnect cert-manager-notebook from it's window and attach it
* to this ECertManagerConfig */
--
cgit v0.9.0.2
From c364610d5f3939d5ee263615a94626602a35a9ae Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Fri, 08 Feb 2013 17:26:30 +0000
Subject: Add comments around g_idle_add() changes
---
diff --git a/em-format/e-mail-parser.c b/em-format/e-mail-parser.c
index b13ebd9..213e324 100644
--- a/em-format/e-mail-parser.c
+++ b/em-format/e-mail-parser.c
@@ -660,6 +660,7 @@ e_mail_parser_wrap_as_attachment (EMailParser *parser,
}
/* e_attachment_load_async must be called from main thread */
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (G_PRIORITY_HIGH,
(GSourceFunc) load_attachment_idle,
g_object_ref (empa->attachment),
diff --git a/libemail-engine/e-mail-utils.c b/libemail-engine/e-mail-utils.c
index 3043e06..72a7473 100644
--- a/libemail-engine/e-mail-utils.c
+++ b/libemail-engine/e-mail-utils.c
@@ -883,6 +883,7 @@ free_mail_cache_thread (gpointer user_data)
G_UNLOCK (photos_cache);
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (G_PRIORITY_HIGH, free_mail_cache_idle, user_data, NULL);
return NULL;
diff --git a/libemail-engine/mail-folder-cache.c b/libemail-engine/mail-folder-cache.c
index 9c9c17d..5a02340 100644
--- a/libemail-engine/mail-folder-cache.c
+++ b/libemail-engine/mail-folder-cache.c
@@ -304,6 +304,7 @@ flush_updates (MailFolderCache *cache)
if (g_queue_is_empty (&cache->priv->updates))
return;
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
cache->priv->update_id = g_idle_add_full (G_PRIORITY_DEFAULT,
(GSourceFunc) flush_updates_idle_cb, cache, NULL);
}
diff --git a/libemail-utils/mail-mt.c b/libemail-utils/mail-mt.c
index f27a645..38e4d7c 100644
--- a/libemail-utils/mail-mt.c
+++ b/libemail-utils/mail-mt.c
@@ -216,6 +216,7 @@ mail_msg_unref (gpointer msg)
/* Destroy the message from an idle callback
* so we know we're in the main loop thread. */
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) mail_msg_free, mail_msg, NULL);
}
}
@@ -429,6 +430,7 @@ mail_msg_proxy (MailMsg *msg)
G_LOCK (idle_source_id);
if (idle_source_id == 0)
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
idle_source_id = g_idle_add_full (G_PRIORITY_DEFAULT,
(GSourceFunc) mail_msg_idle_cb, NULL, NULL);
G_UNLOCK (idle_source_id);
@@ -484,6 +486,7 @@ mail_msg_main_loop_push (gpointer msg)
G_LOCK (idle_source_id);
if (idle_source_id == 0)
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
idle_source_id = g_idle_add_full (G_PRIORITY_DEFAULT,
(GSourceFunc) mail_msg_idle_cb, NULL, NULL);
G_UNLOCK (idle_source_id);
diff --git a/mail/e-mail-browser.c b/mail/e-mail-browser.c
index 6b9d04f..985beac 100644
--- a/mail/e-mail-browser.c
+++ b/mail/e-mail-browser.c
@@ -306,6 +306,7 @@ mail_browser_message_list_built_cb (EMailBrowser *browser,
g_return_if_fail (IS_MESSAGE_LIST (message_list));
if (!message_list_count (message_list))
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (G_PRIORITY_DEFAULT, close_on_idle_cb, browser, NULL);
}
diff --git a/mail/e-mail-display.c b/mail/e-mail-display.c
index 7430a2e..9043a45 100644
--- a/mail/e-mail-display.c
+++ b/mail/e-mail-display.c
@@ -1922,6 +1922,7 @@ e_mail_display_reload (EMailDisplay *display)
return;
/* Schedule reloading if neccessary */
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
display->priv->scheduled_reload =
g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) do_reload_display, display, NULL);
}
diff --git a/mail/e-mail-ui-session.c b/mail/e-mail-ui-session.c
index 66057c3..2e4ded6 100644
--- a/mail/e-mail-ui-session.c
+++ b/mail/e-mail-ui-session.c
@@ -598,6 +598,7 @@ mail_ui_session_add_service (CamelSession *session,
context->session = g_object_ref (session);
context->service = g_object_ref (service);
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (
G_PRIORITY_DEFAULT,
(GSourceFunc) mail_ui_session_add_service_cb,
diff --git a/modules/itip-formatter/itip-view.c b/modules/itip-formatter/itip-view.c
index c15fa5d..520ea7b 100644
--- a/modules/itip-formatter/itip-view.c
+++ b/modules/itip-formatter/itip-view.c
@@ -5723,6 +5723,7 @@ view_response_cb (ItipView *view,
send_item (pitip, view);
break;
case ITIP_VIEW_RESPONSE_OPEN:
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (G_PRIORITY_DEFAULT, idle_open_cb, pitip, NULL);
return;
default:
diff --git a/plugins/mail-to-task/mail-to-task.c b/plugins/mail-to-task/mail-to-task.c
index 1ff2ccc..6986468 100644
--- a/plugins/mail-to-task/mail-to-task.c
+++ b/plugins/mail-to-task/mail-to-task.c
@@ -1014,6 +1014,7 @@ do_mail_to_event (AsyncData *data)
if (!e_cal_client_get_object_sync (client, icalcomponent_get_uid (icalcomp), NULL, &(mc->stored_comp), NULL, NULL))
mc->stored_comp = NULL;
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) do_manage_comp_idle, mc, NULL);
oldmc = mc;
diff --git a/shell/e-shell-searchbar.c b/shell/e-shell-searchbar.c
index 5c8e050..4dd8b48 100644
--- a/shell/e-shell-searchbar.c
+++ b/shell/e-shell-searchbar.c
@@ -1546,6 +1546,7 @@ e_shell_searchbar_load_state (EShellSearchbar *searchbar)
/* Execute the search when we have time. */
g_object_ref (shell_view);
searchbar->priv->state_dirty = FALSE;
+ /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
g_idle_add_full (G_PRIORITY_DEFAULT, idle_execute_search, shell_view, NULL);
}
diff --git a/smime/gui/certificate-manager.c b/smime/gui/certificate-manager.c
index f9f1b8a..978e497 100644
--- a/smime/gui/certificate-manager.c
+++ b/smime/gui/certificate-manager.c
@@ -1077,7 +1077,9 @@ e_cert_manager_config_init (ECertManagerConfig *ecmc)
/* Run this in an idle callback so Evolution has a chance to
* fully initialize itself and start its main loop before we
* load certificates, since doing so may trigger a password
- * dialog, and dialogs require a main loop. */
+ * dialog, and dialogs require a main loop.
+ * Schedule with priority higher than gtk+ uses for animations
+ * (check docs for G_PRIORITY_HIGH_IDLE). */
g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) populate_ui, ecmc, NULL);
/* Disconnect cert-manager-notebook from it's window and attach it
--
cgit v0.9.0.2

View File

@ -1,232 +0,0 @@
From 51419ff0d41e034dcd59ab860184f5e4ba752708 Mon Sep 17 00:00:00 2001
From: Matthew Barnes <mbarnes@redhat.com>
Date: Fri, 08 Feb 2013 19:21:42 +0000
Subject: 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.
(cherry picked from commit 60d1c3054aa60d02c763538d6b1f16d9d6ab6ade)
---
diff --git a/em-format/e-mail-parser.c b/em-format/e-mail-parser.c
index 213e324..0a44798 100644
--- a/em-format/e-mail-parser.c
+++ b/em-format/e-mail-parser.c
@@ -660,8 +660,9 @@ e_mail_parser_wrap_as_attachment (EMailParser *parser,
}
/* e_attachment_load_async must be called from main thread */
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- g_idle_add_full (G_PRIORITY_HIGH,
+ /* Prioritize ahead of GTK+ redraws. */
+ g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
(GSourceFunc) load_attachment_idle,
g_object_ref (empa->attachment),
NULL);
diff --git a/libemail-engine/e-mail-utils.c b/libemail-engine/e-mail-utils.c
index 72a7473..52c5fb3 100644
--- a/libemail-engine/e-mail-utils.c
+++ b/libemail-engine/e-mail-utils.c
@@ -883,8 +883,10 @@ free_mail_cache_thread (gpointer user_data)
G_UNLOCK (photos_cache);
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- g_idle_add_full (G_PRIORITY_HIGH, free_mail_cache_idle, user_data, NULL);
+ /* Prioritize ahead of GTK+ redraws. */
+ g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
+ free_mail_cache_idle, user_data, NULL);
return NULL;
}
diff --git a/libemail-engine/mail-folder-cache.c b/libemail-engine/mail-folder-cache.c
index 5a02340..e6356cb 100644
--- a/libemail-engine/mail-folder-cache.c
+++ b/libemail-engine/mail-folder-cache.c
@@ -304,8 +304,9 @@ flush_updates (MailFolderCache *cache)
if (g_queue_is_empty (&cache->priv->updates))
return;
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- cache->priv->update_id = g_idle_add_full (G_PRIORITY_DEFAULT,
+ /* Prioritize ahead of GTK+ redraws. */
+ cache->priv->update_id = g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
(GSourceFunc) flush_updates_idle_cb, cache, NULL);
}
diff --git a/libemail-utils/mail-mt.c b/libemail-utils/mail-mt.c
index 38e4d7c..9e7d9d6 100644
--- a/libemail-utils/mail-mt.c
+++ b/libemail-utils/mail-mt.c
@@ -215,9 +215,11 @@ mail_msg_unref (gpointer msg)
g_mutex_unlock (mail_msg_lock);
/* Destroy the message from an idle callback
- * so we know we're in the main loop thread. */
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) mail_msg_free, mail_msg, NULL);
+ * so we know we're in the main loop thread.
+ * Prioritize ahead of GTK+ redraws. */
+ g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
+ (GSourceFunc) mail_msg_free, mail_msg, NULL);
}
}
@@ -430,8 +432,9 @@ mail_msg_proxy (MailMsg *msg)
G_LOCK (idle_source_id);
if (idle_source_id == 0)
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- idle_source_id = g_idle_add_full (G_PRIORITY_DEFAULT,
+ /* Prioritize ahead of GTK+ redraws. */
+ idle_source_id = g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
(GSourceFunc) mail_msg_idle_cb, NULL, NULL);
G_UNLOCK (idle_source_id);
}
@@ -486,8 +489,9 @@ mail_msg_main_loop_push (gpointer msg)
G_LOCK (idle_source_id);
if (idle_source_id == 0)
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- idle_source_id = g_idle_add_full (G_PRIORITY_DEFAULT,
+ /* Prioritize ahead of GTK+ redraws. */
+ idle_source_id = g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
(GSourceFunc) mail_msg_idle_cb, NULL, NULL);
G_UNLOCK (idle_source_id);
}
diff --git a/mail/e-mail-browser.c b/mail/e-mail-browser.c
index 985beac..3e82aca 100644
--- a/mail/e-mail-browser.c
+++ b/mail/e-mail-browser.c
@@ -306,8 +306,10 @@ mail_browser_message_list_built_cb (EMailBrowser *browser,
g_return_if_fail (IS_MESSAGE_LIST (message_list));
if (!message_list_count (message_list))
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- g_idle_add_full (G_PRIORITY_DEFAULT, close_on_idle_cb, browser, NULL);
+ /* Prioritize ahead of GTK+ redraws. */
+ g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
+ close_on_idle_cb, browser, NULL);
}
static gboolean
diff --git a/mail/e-mail-display.c b/mail/e-mail-display.c
index 9043a45..5594439 100644
--- a/mail/e-mail-display.c
+++ b/mail/e-mail-display.c
@@ -1921,10 +1921,11 @@ e_mail_display_reload (EMailDisplay *display)
if (display->priv->scheduled_reload > 0)
return;
- /* Schedule reloading if neccessary */
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- display->priv->scheduled_reload =
- g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) do_reload_display, display, NULL);
+ /* Schedule reloading if neccessary.
+ * Prioritize ahead of GTK+ redraws. */
+ display->priv->scheduled_reload = g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
+ (GSourceFunc) do_reload_display, display, NULL);
}
GtkAction *
diff --git a/mail/e-mail-ui-session.c b/mail/e-mail-ui-session.c
index 2e4ded6..d608b22 100644
--- a/mail/e-mail-ui-session.c
+++ b/mail/e-mail-ui-session.c
@@ -598,9 +598,9 @@ mail_ui_session_add_service (CamelSession *session,
context->session = g_object_ref (session);
context->service = g_object_ref (service);
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
+ /* Prioritize ahead of GTK+ redraws. */
g_idle_add_full (
- G_PRIORITY_DEFAULT,
+ G_PRIORITY_HIGH_IDLE,
(GSourceFunc) mail_ui_session_add_service_cb,
context, (GDestroyNotify) source_context_free);
}
diff --git a/modules/itip-formatter/itip-view.c b/modules/itip-formatter/itip-view.c
index 520ea7b..668b718 100644
--- a/modules/itip-formatter/itip-view.c
+++ b/modules/itip-formatter/itip-view.c
@@ -5723,8 +5723,10 @@ view_response_cb (ItipView *view,
send_item (pitip, view);
break;
case ITIP_VIEW_RESPONSE_OPEN:
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- g_idle_add_full (G_PRIORITY_DEFAULT, idle_open_cb, pitip, NULL);
+ /* Prioritize ahead of GTK+ redraws. */
+ g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
+ idle_open_cb, pitip, NULL);
return;
default:
break;
diff --git a/modules/mail/e-mail-config-reader.c b/modules/mail/e-mail-config-reader.c
index aacfbd9..3bbf766 100644
--- a/modules/mail/e-mail-config-reader.c
+++ b/modules/mail/e-mail-config-reader.c
@@ -84,10 +84,11 @@ static void
mail_config_reader_constructed (GObject *object)
{
/* Bind properties to settings from an idle callback so the
- * EMailReader interface has a chance to be initialized first. */
+ * EMailReader interface has a chance to be initialized first.
+ * Prioritize ahead of GTK+ redraws. */
g_idle_add_full (
- G_PRIORITY_DEFAULT_IDLE,
- (GSourceFunc) mail_config_reader_idle_cb,
+ G_PRIORITY_HIGH_IDLE,
+ (GSourceFunc) mail_config_reader_idle_cb,
g_object_ref (object),
(GDestroyNotify) g_object_unref);
diff --git a/plugins/mail-to-task/mail-to-task.c b/plugins/mail-to-task/mail-to-task.c
index 6986468..add76e9 100644
--- a/plugins/mail-to-task/mail-to-task.c
+++ b/plugins/mail-to-task/mail-to-task.c
@@ -1014,8 +1014,10 @@ do_mail_to_event (AsyncData *data)
if (!e_cal_client_get_object_sync (client, icalcomponent_get_uid (icalcomp), NULL, &(mc->stored_comp), NULL, NULL))
mc->stored_comp = NULL;
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- g_idle_add_full (G_PRIORITY_DEFAULT, (GSourceFunc) do_manage_comp_idle, mc, NULL);
+ /* Prioritize ahead of GTK+ redraws. */
+ g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
+ (GSourceFunc) do_manage_comp_idle, mc, NULL);
oldmc = mc;
diff --git a/shell/e-shell-searchbar.c b/shell/e-shell-searchbar.c
index 4dd8b48..07a38f0 100644
--- a/shell/e-shell-searchbar.c
+++ b/shell/e-shell-searchbar.c
@@ -1544,10 +1544,14 @@ e_shell_searchbar_load_state (EShellSearchbar *searchbar)
gtk_action_unblock_activate (action);
/* Execute the search when we have time. */
+
g_object_ref (shell_view);
searchbar->priv->state_dirty = FALSE;
- /* schedule with priority higher than gtk+ uses for animations (check docs for G_PRIORITY_HIGH_IDLE) */
- g_idle_add_full (G_PRIORITY_DEFAULT, idle_execute_search, shell_view, NULL);
+
+ /* Prioritize ahead of GTK+ redraws. */
+ g_idle_add_full (
+ G_PRIORITY_HIGH_IDLE,
+ idle_execute_search, shell_view, NULL);
}
void
--
cgit v0.9.0.2

View File

@ -1,3 +1,176 @@
-------------------------------------------------------------------
Sun Mar 24 06:56:57 UTC 2013 - zaitor@opensuse.org
- Update to version 3.8.0:
+ Updated translations.
-------------------------------------------------------------------
Sun Mar 17 13:24:44 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.92:
+ [itip-formatter] Reference a view when searching for a
calendar.
+ org.gnome.evolution.calendar.gschema.xml.in: Define a
'Duration' enum.
+ [backup-restore] Dir separator removal breaks DConf settings
restore.
+ Add utility functions for manipulating weekdays.
+ evolution-addressbook-export: Remove main loop event flushing.
+ e_mail_config_notebook_commit: Skip non-writable sources.
+ Do not leak each sent message.
+ Bugs fixed: bgo#415371, bgo#645476, bgo#676696, bgo#690092,
bgo#690930, bgo#693254, bgo#695193, bgo#695477, bgo#695570,
bgo#695693.
+ Updated translations.
-------------------------------------------------------------------
Sun Mar 3 15:40:38 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.91:
+ Keep EClient instances in a central cache for more consistent
event-handling.
+ Add status icons in sidebar for calendar, contact, task and
memo backends.
+ Rewrite the contact photo in email feature to avoid deadlocks.
+ EAttachment: Use Subject as fallback filename for message
attachments.
+ Show local images in Signature preview.
+ Speed-up auto-completion results showing.
+ Autocompletion - do not use quick timeout when user types text.
+ Add mnemonic widgets for Status and Priority comboboxes.
+ Correct label for "Country:" textbox in Work section on
"Mailing Address" tab of contact editor.
+ evolution-addressbook-export: Remove --async option.
+ Remove obsolete "mime-types" mail setting.
+ Added mnemonic widget for 'Time zone' field in event editor.
+ Bugs fixed: bgo#674236, bgo#693250, bgo#693420, bgo#693625,
bgo#694159, bgo#694170, bgo#694363, bgo#694460.
+ Updated translations.
-------------------------------------------------------------------
Mon Feb 18 08:17:13 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.90:
+ Add a centralized cache for EClient instances and adapt most of
the application to use it.
+ [web-inspector] Add a secret debugging shortcut.
+ Add mnemonic widgets for title and suffix comboboxes.
+ Add mnemonic widget for Start date field in memo editor.
+ Bugs fixed: bgo#683867.
+ Updated translations.
-------------------------------------------------------------------
Wed Feb 13 12:07:02 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.5:
+ Add a "settings" module.
+ Contact's print doesn't decode QP encoded email addresses.
+ Use e_book_client_connect().
+ Use e_cal_client_connect().
+ Incorporate ESourceUOA.
+ EMailAccountStore: Use an appropriate icon for online accounts.
+ Add a priority field for mail formatter and parser extensions.
+ Bugs fixed: bgo#639698, bgo#680537, bgo#685757, bgo#688294,
bgo#689476, bgo#690696, bgo#690697, bgo#691194, bgo#691640,
bgo#691732, bgo#692003, bgo#692005, bgo#692009, bgo#692143,
bgo#692213, bgo#692775, bgo#692777, bgo#692781, bgo#692783,
bgo#692818.
+ Updated translations.
- Add upstream fixed patches:
+ evolution-fix-crash-when-searching.patch
+ evolution-fix-empty-body-reply.patch
+ evolution-fix-message-quoted-twice.patch
+ evolution-fix-text-css-as-attachment.patch
+ evolution-pine-importer.patch
+ evolution-prevent-crash-edit-task-prompt-cancel.patch
+ evolution-prevent-crash-on-folder-rename.patch
+ evolution-schedule-higher-idle-priority-actions.patch
+ evolution-use-G_PRIORITY_HIGH_IDLE.patch
-------------------------------------------------------------------
Tue Feb 12 10:52:57 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.4:
+ evolution-shell.pc.in: Remove libedataserverui-3.0.
+ Reset the maintainer list in the About dialog.
+ Remove the "imap-features" module.
+ Move CamelSaslXOAuth2 to libemail-engine.
+ Remove --with-kde-applnk-path configure option.
+ Be more strict in inline PGP mime filter/part parser.
+ Do not hide 'attachment' images with Content-ID.
+ Bugs fixed: bgo#588216, bgo#690177, bgo#691047, bgo#691133,
bgo#691134, bgo#691134, bgo#691470.
+ Updated translations.
-------------------------------------------------------------------
Mon Feb 11 17:41:48 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.3.2:
+ Forgot to remove libedataserverui-3.0 from a pkg-config file.
- Changes from version 3.7.3.1:
+ Minor build issue in libeutil.
- Changes from version 3.7.3:
+ Identify calendar/memo/task sources in error messages
+ Use version-based GLib/GDK/GTK+ warnings.
+ Avoid GTK+ APIs deprecated in 3.0.
+ Coverity scan cleanups.
+ Do not empty trash/delete junk in disabled accounts on exit
+ Do not generate a ChangeLog file from 'git log'
+ Simplify class design of mail formatter.
+ backup-restore: Remove references to ~/.camel_certs.
+ Use the same certificate-viewer as the trust-prompt from eds
+ Consolidate base utility libraries into libeutil and generate
API documantation.
+ Bugs fixed: bgo#202576, bgo#315317, bgo#449081, bgo#502516,
bgo#525932, bgo#529743, bgo#579315, bgo#671200, bgo#671628,
bgo#672200, bgo#674678, bgo#677378, bgo#678606, bgo#680201,
bgo#680244, bgo#685808, bgo#686212, bgo#687360, bgo#687503,
bgo#687670, bgo#687974, bgo#688819, bgo#689639, bgo#689966.
+ Updated translations.
- Drop pkgconfig(libedataserverui-3.0) BuildRequires: the library
no longer exists.
-------------------------------------------------------------------
Sun Feb 10 21:26:12 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.2:
+ Fixed squished labels on Identity page of Account Assistant.
+ Require WebKitGtk 1.10.0 for webkit_web_frame_get_dom_document.
+ Restrict geocode-glib dependency to 0.99.0.
+ Missing search buttons in Calendar view
+ Make auto-configuration cancellable.
+ EMailConfigAssistant: Make revising auto-configuration easier.
+ Bugs fixed: bgo#267787, bgo#268618, bgo#317153, bgo#422273,
bgo#627244, bgo#656143, bgo#663844, bgo#680497, bgo#683877,
bgo#686325, bgo#686785, bgo#686813, bgo#687010, bgo#687060,
bgo#687137, bgo#687155, bgo#687400, bgo#687442, bgo#688084.
+ Updated translations.
-------------------------------------------------------------------
Sat Feb 9 22:18:30 UTC 2013 - dimstar@opensuse.org
- Update to version 3.7.1:
+ User documentation improvements.
+ Check for Bogofilter during configure.
+ Check for SpamAssassin during configure.
+ Fix contact maps.
+ Don't rely on user's $PATH, use HIGHLIGHT_COMMAND defined by
configure
+ CamelSaslXOAuth: Use GHmac to sign the client request.
+ Prototype CamelSaslXOAuth2.
+ evolution.convert: Remove leftover "force-message-limit" entry.
+ Do not crash in create_default_shell()
+ Remove "Disable Account" menu item for GOA-based accounts.
+ Bugs fixed: bgo#201807, bgo#268618, bgo#310978, bgo#344579,
bgo#549819, bgo#588959, bgo#663844, bgo#676141, bgo#678408,
bgo#678750, bgo#681314, bgo#683849, bgo#684447, bgo#685262,
bgo#685786, bgo#686278
+ Updated translations.
- Add spamassassin and bogofilter BuildRequires: they are now
verified by configure.
- Pass --disable-text-highlight to configure: we currently don't
have a package for this.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Feb 8 22:58:23 UTC 2013 - badshah400@gmail.com Fri Feb 8 22:58:23 UTC 2013 - badshah400@gmail.com

View File

@ -23,37 +23,23 @@
Name: evolution Name: evolution
# This should be updated upon major version changes; it should match BASE_VERSION as defined in configure.in. # This should be updated upon major version changes; it should match BASE_VERSION as defined in configure.in.
%define evolution_base_version 3.6 %define evolution_base_version 3.8
Version: 3.6.3 Version: 3.8.0
Release: 0 Release: 0
# _version needs to be %{version} stirpped to major.minor.micro only...
%define _version %(echo %{version} | grep -E -o '[0-9]+\.[0-9]+\.[0-9]+')
# FIXME: enable text-highligh once we have a package for it.
# FIXME: check if note on license is still valid (comment before license) # FIXME: check if note on license is still valid (comment before license)
Summary: The Integrated GNOME Mail, Calendar, and Address Book Suite Summary: The Integrated GNOME Mail, Calendar, and Address Book Suite
License: LGPL-2.0 and LGPL-3.0 License: LGPL-2.0 and LGPL-3.0
Group: Productivity/Networking/Email/Clients Group: Productivity/Networking/Email/Clients
# NOTE: Some files are currently GPL-2.0 but pending relicensing, see bnc#749859 # NOTE: Some files are currently GPL-2.0 but pending relicensing, see bnc#749859
Url: http://gnome.org/projects/evolution/ Url: http://gnome.org/projects/evolution/
Source0: http://download.gnome.org/sources/evolution/3.6/%{name}-%{version}.tar.xz Source0: http://download.gnome.org/sources/evolution/3.8/%{name}-%{version}.tar.xz
# PATCH-FIX-UPSTREAM evolution-fix-crash-when-searching.patch bgo#639698 badshah400@gmail.com -- Fix crash when search is initiated on a non-real folder; patch taken from upstream git.
Patch1: evolution-fix-crash-when-searching.patch
# PATCH-FIX-UPSTREAM evolution-fix-empty-body-reply.patch bgo#680537 badshah400@gmail.com -- Fix a case where replying to a digest mail gives an empty-body mail in composer; patch came from upstream git.
Patch2: evolution-fix-empty-body-reply.patch
# PATCH-FIX-UPSTREAM evolution-fix-text-css-as-attachment.patch bgo#692009 badshah400@gmail.com -- Fix formatting issues with text/css as attachment
Patch3: evolution-fix-text-css-as-attachment.patch
# PATCH-FIX-UPSTREAM evolution-fix-message-quoted-twice.patch bgo#692775 badshah400@gmail.com -- Fix reply to email with both HTML and text constent being quoted twice; patch came from upstream
Patch4: evolution-fix-message-quoted-twice.patch
# PATCH-FIX-UPSTREAM evolution-prevent-crash-on-folder-rename.patch bgo#692777 badshah400@gmail.com -- Prevent crash on folder rename
Patch5: evolution-prevent-crash-on-folder-rename.patch
# PATCH-FIX-UPSTREAM evolution-prevent-crash-edit-task-prompt-cancel.patch bgo#692783 badshah400@gmail.com -- Prevent a crash when cancelling the prompt for editing task; patch taken from upstream git
Patch6: evolution-prevent-crash-edit-task-prompt-cancel.patch
# PATCH-FIX-UPSTREAM evolution-pine-importer.patch bgo#692781 badshah400@gmail.com -- Fix abort on book import failure; patch taken from upstream git
Patch7: evolution-pine-importer.patch
# PATCH-FIX-UPSTREAM evolution-schedule-higher-idle-priority-actions.patch bgo#683867 badshah400@gmail.com -- Schedule actions with highler idle priority; patch taken from upstream git
Patch8: evolution-schedule-higher-idle-priority-actions.patch
# PATCH-FIX-UPSTREAM evolution-use-G_PRIORITY_HIGH_IDLE.patch bgo#683867 badshah400@gmail.com -- Use G_PRIORITY_HIGH_IDLE to beat gtk+ redraws; patch taken from upstream git
Patch9: evolution-use-G_PRIORITY_HIGH_IDLE.patch
# PATCH-FIX-UPSTREAM bnc-435722-book-uri-long.patch bnc#435722 abharath@suse.de -- Book URI: Spills Into Second Column. # PATCH-FIX-UPSTREAM bnc-435722-book-uri-long.patch bnc#435722 abharath@suse.de -- Book URI: Spills Into Second Column.
Patch19: bnc-435722-book-uri-long.patch Patch0: bnc-435722-book-uri-long.patch
BuildRequires: bison BuildRequires: bison
BuildRequires: bogofilter
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: openldap2-devel BuildRequires: openldap2-devel
%if %{need_autogen} %if %{need_autogen}
@ -65,33 +51,33 @@ BuildRequires: krb5-devel
# don't you ever enable this! It's experimental and insecure (bnc#609013) # don't you ever enable this! It's experimental and insecure (bnc#609013)
#BuildRequires: libytnef-devel #BuildRequires: libytnef-devel
BuildRequires: psmisc BuildRequires: psmisc
BuildRequires: spamassassin
BuildRequires: sqlite3-devel BuildRequires: sqlite3-devel
BuildRequires: translation-update-upstream BuildRequires: translation-update-upstream
BuildRequires: update-desktop-files BuildRequires: update-desktop-files
BuildRequires: yelp-tools BuildRequires: yelp-tools
BuildRequires: pkgconfig(atk) BuildRequires: pkgconfig(atk)
BuildRequires: pkgconfig(gail-3.0) >= 3.2.0 BuildRequires: pkgconfig(gail-3.0) >= 3.2.0
BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-2.0) >= 2.34.0
BuildRequires: pkgconfig(gladeui-2.0) >= 3.10.0 BuildRequires: pkgconfig(gladeui-2.0) >= 3.10.0
BuildRequires: pkgconfig(gnome-desktop-3.0) >= 2.91.3 BuildRequires: pkgconfig(gnome-desktop-3.0) >= 2.91.3
BuildRequires: pkgconfig(gnome-icon-theme) >= 2.30.2.1 BuildRequires: pkgconfig(gnome-icon-theme) >= 2.30.2.1
BuildRequires: pkgconfig(goa-1.0) >= 3.2 BuildRequires: pkgconfig(goa-1.0) >= 3.2
BuildRequires: pkgconfig(gstreamer-1.0) BuildRequires: pkgconfig(gstreamer-1.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.4.0 BuildRequires: pkgconfig(gtk+-3.0) >= 3.4.0
BuildRequires: pkgconfig(webkitgtk-3.0) >= 1.8.0 BuildRequires: pkgconfig(webkitgtk-3.0) >= 1.10.
%if %{use_gtkimageview} %if %{use_gtkimageview}
BuildRequires: pkgconfig(gtkimageview-3.0) BuildRequires: pkgconfig(gtkimageview-3.0)
%endif %endif
BuildRequires: pkgconfig(gweather-3.0) >= 3.5.0 BuildRequires: pkgconfig(gweather-3.0) >= 3.5.0
BuildRequires: pkgconfig(ice) BuildRequires: pkgconfig(ice)
BuildRequires: pkgconfig(libcanberra-gtk3) BuildRequires: pkgconfig(libcanberra-gtk3)
BuildRequires: pkgconfig(libedataserver-1.2) >= %{version} BuildRequires: pkgconfig(libedataserver-1.2) >= %{_version}
BuildRequires: pkgconfig(libedataserverui-3.0) >= %{version}
BuildRequires: pkgconfig(libgdata) >= 0.10 BuildRequires: pkgconfig(libgdata) >= 0.10
BuildRequires: pkgconfig(libgtkhtml-4.0) >= 4.5.2 BuildRequires: pkgconfig(libgtkhtml-4.0) >= 4.5.2
BuildRequires: pkgconfig(libnotify) >= 0.7 BuildRequires: pkgconfig(libnotify) >= 0.7
BuildRequires: pkgconfig(libpst) >= 0.6.54 BuildRequires: pkgconfig(libpst) >= 0.6.54
BuildRequires: pkgconfig(libsoup-2.4) >= 2.38.1 BuildRequires: pkgconfig(libsoup-2.4) >= 2.40.3
BuildRequires: pkgconfig(libxml-2.0) >= 2.7.3 BuildRequires: pkgconfig(libxml-2.0) >= 2.7.3
BuildRequires: pkgconfig(nspr) BuildRequires: pkgconfig(nspr)
BuildRequires: pkgconfig(nss) BuildRequires: pkgconfig(nss)
@ -143,17 +129,9 @@ to develop applications that require these.
%lang_package %lang_package
%prep %prep
%setup -q %setup -q
%patch19 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
translation-update-upstream translation-update-upstream
# Needs rebase
#patch0 -p1
%build %build
%if %{need_autogen} %if %{need_autogen}
@ -169,7 +147,8 @@ NOCONFIGURE=1 gnome-autogen.sh
%if !%{use_gtkimageview} %if !%{use_gtkimageview}
--disable-image-inline \ --disable-image-inline \
%endif %endif
--disable-static --disable-static \
--disable-text-highlight
# Processing the files in help uses _lots_ of memory, so running that part in parallel is bad. # Processing the files in help uses _lots_ of memory, so running that part in parallel is bad.
pushd help pushd help
make make
@ -236,7 +215,6 @@ grep -q "^Categories=.*Office" %{buildroot}%{_datadir}/applications/evolution.de
%{_libdir}/evolution/%{evolution_base_version}/modules/module-calendar.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-calendar.so
%{_datadir}/glib-2.0/schemas/org.gnome.evolution.calendar.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.evolution.calendar.gschema.xml
%{_libdir}/evolution/%{evolution_base_version}/modules/module-composer-autosave.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-composer-autosave.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-imap-features.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-itip-formatter.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-itip-formatter.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-mail-config.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-mail-config.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-mail.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-mail.so
@ -248,10 +226,11 @@ grep -q "^Categories=.*Office" %{buildroot}%{_datadir}/applications/evolution.de
%{_libdir}/evolution/%{evolution_base_version}/modules/module-plugin-lib.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-plugin-lib.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-plugin-manager.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-plugin-manager.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-prefer-plain.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-prefer-plain.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-settings.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-spamassassin.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-spamassassin.so
%{_datadir}/glib-2.0/schemas/org.gnome.evolution.spamassassin.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.evolution.spamassassin.gschema.xml
%{_libdir}/evolution/%{evolution_base_version}/modules/module-startup-wizard.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-startup-wizard.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-text-highlight.so #{_libdir}/evolution/%{evolution_base_version}/modules/module-text-highlight.so
%{_libdir}/evolution/%{evolution_base_version}/modules/module-vcard-inline.so %{_libdir}/evolution/%{evolution_base_version}/modules/module-vcard-inline.so
%{_libdir}/evolution/%{evolution_base_version}/modules/*-web-inspector.* %{_libdir}/evolution/%{evolution_base_version}/modules/*-web-inspector.*
%{_datadir}/glib-2.0/schemas/org.gnome.evolution.addressbook.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.evolution.addressbook.gschema.xml
@ -303,6 +282,7 @@ grep -q "^Categories=.*Office" %{buildroot}%{_datadir}/applications/evolution.de
%defattr(-,root,root) %defattr(-,root,root)
%{_includedir}/* %{_includedir}/*
%{_libdir}/pkgconfig/*.pc %{_libdir}/pkgconfig/*.pc
%{_datadir}/gtk-doc/html/eshell %{_datadir}/gtk-doc/html/libeshell/
%{_datadir}/gtk-doc/html/libeutil/
%changelog %changelog