import evolution-3.40.4-6.el9

i9c changed/i9c/evolution-3.40.4-6.el9
MSVSphere Packaging Team 2 years ago
commit 926b46cb1a

@ -0,0 +1,2 @@
2ad33472d280d83737884a0e60a9236793653111 SOURCES/emoji.data
2b480d7dd297d84c1b1321f5c90bd0e35d566433 SOURCES/evolution-3.40.4.tar.xz

2
.gitignore vendored

@ -0,0 +1,2 @@
SOURCES/emoji.data
SOURCES/evolution-3.40.4.tar.xz

@ -0,0 +1,68 @@
From 9bbb9289477c8a61a641b0b67cec367629f1e73a Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Thu, 10 Feb 2022 11:59:36 +0100
Subject: [PATCH] ECompEditor: Timezone can be reset on component save
The libical 3.0.14 contains a change, which unsets non-UTC timezones
in date/time values. That uncovered a bug in the Evolution code, which
expects the timezone will be preserved on re-read from the component,
but it's not always possible. This is corrected by re-setting the timezone
on the used ICalTime value.
---
src/calendar/gui/e-comp-editor-property-part.c | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/src/calendar/gui/e-comp-editor-property-part.c b/src/calendar/gui/e-comp-editor-property-part.c
index 6bed833b12..6ce699a2e6 100644
--- a/src/calendar/gui/e-comp-editor-property-part.c
+++ b/src/calendar/gui/e-comp-editor-property-part.c
@@ -913,8 +913,15 @@ ecepp_datetime_fill_component (ECompEditorPropertyPart *property_part,
g_object_unref (prop);
}
} else {
+ ICalTimezone *zone;
+
value = e_comp_editor_property_part_datetime_get_value (part_datetime);
+ zone = value && !i_cal_time_is_null_time (value) ? i_cal_time_get_timezone (value) : NULL;
+
+ if (zone)
+ g_object_ref (zone);
+
if (prop) {
/* Remove the VALUE parameter, to correspond to the actual value being set */
i_cal_property_remove_parameter_by_kind (prop, I_CAL_VALUE_PARAMETER);
@@ -925,6 +932,11 @@ ecepp_datetime_fill_component (ECompEditorPropertyPart *property_part,
g_clear_object (&value);
value = klass->i_cal_get_func (prop);
+ /* The timezone can be dropped since libical 3.0.14, thus restore it
+ before updating the TZID parameter */
+ if (zone && value && !i_cal_time_is_null_time (value) && !i_cal_time_is_date (value))
+ i_cal_time_set_timezone (value, zone);
+
cal_comp_util_update_tzid_parameter (prop, value);
} else {
prop = klass->i_cal_new_func (value);
@@ -933,12 +945,18 @@ ecepp_datetime_fill_component (ECompEditorPropertyPart *property_part,
g_clear_object (&value);
value = klass->i_cal_get_func (prop);
+ /* The timezone can be dropped since libical 3.0.14, thus restore it
+ before updating the TZID parameter */
+ if (zone && value && !i_cal_time_is_null_time (value) && !i_cal_time_is_date (value))
+ i_cal_time_set_timezone (value, zone);
+
cal_comp_util_update_tzid_parameter (prop, value);
i_cal_component_add_property (component, prop);
}
g_clear_object (&value);
g_clear_object (&prop);
+ g_clear_object (&zone);
}
}
--
2.33.1

@ -0,0 +1,56 @@
From e75c4faa36a9eb17b88128e45f9e5d91628149f9 Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Mon, 4 Oct 2021 17:18:35 +0200
Subject: I#1646 - Emoji picker empty
Embed emoji.data as expected by the copy of the gtk+' emoji chooser dialog.
Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/1646
diff --git a/data/org.gnome.Evolution.gresource.xml b/data/org.gnome.Evolution.gresource.xml
new file mode 100644
index 0000000000..783ed153b8
--- /dev/null
+++ b/data/org.gnome.Evolution.gresource.xml
@@ -0,0 +1,6 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<gresources>
+ <gresource prefix="org.gnome.Evolution">
+ <file>emoji.data</file>
+ </gresource>
+</gresources>
diff --git a/src/e-util/CMakeLists.txt b/src/e-util/CMakeLists.txt
index 03b60d8e4b..6f63f29858 100644
--- a/src/e-util/CMakeLists.txt
+++ b/src/e-util/CMakeLists.txt
@@ -30,6 +30,8 @@ if(WIN32)
)
endif(WIN32)
+glib_compile_resources(${CMAKE_SOURCE_DIR}/data/ ${CMAKE_CURRENT_BINARY_DIR}/org.gnome.Evolution.gresource org_gnome_evolution ../../data/org.gnome.Evolution.gresource.xml ${CMAKE_SOURCE_DIR}/data/emoji.data)
+
# Main libevolution-util
set(DEPENDENCIES
@@ -309,6 +311,8 @@ set(SOURCES
${PLATFORM_SOURCES}
${CMAKE_CURRENT_BINARY_DIR}/e-marshal.c
${CMAKE_CURRENT_BINARY_DIR}/e-util-enumtypes.c
+ ${CMAKE_CURRENT_BINARY_DIR}/org.gnome.Evolution.gresource.c
+ ${CMAKE_CURRENT_BINARY_DIR}/org.gnome.Evolution.gresource.h
)
set(HEADERS
diff --git a/src/e-util/e-gtkemojichooser.c b/src/e-util/e-gtkemojichooser.c
index ba4d15ecee..7d8aae3039 100644
--- a/src/e-util/e-gtkemojichooser.c
+++ b/src/e-util/e-gtkemojichooser.c
@@ -444,7 +444,7 @@ populate_emoji_chooser (gpointer data)
if (!chooser->data)
{
- bytes = g_resources_lookup_data ("/org/gtk/libgtk/emoji/emoji.data", 0, NULL);
+ bytes = g_resources_lookup_data ("/org.gnome.Evolution/emoji.data", 0, NULL);
chooser->data = g_variant_ref_sink (g_variant_new_from_bytes (G_VARIANT_TYPE ("a(auss)"), bytes, TRUE));
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,10 @@
#!/bin/bash
# see https://gitlab.gnome.org/GNOME/glib/issues/1737
# previous versions used milliseconds instead of seconds as the timeout argument",
(`pkg-config --atleast-version 2.60.1 gio-2.0` || `pkg-config --atleast-version 2.61.0 gio-2.0`) && TIMEOUTMULT= || TIMEOUTMULT=000
sed -e "s|\@SOURCES_SERVICE\@|$(pkg-config --variable=sourcesdbusservicename evolution-data-server-1.2)|" \
-e "s|\@ADDRESSBOOK_SERVICE\@|$(pkg-config --variable=addressbookdbusservicename evolution-data-server-1.2)|" \
-e "s|\@CALENDAR_SERVICE\@|$(pkg-config --variable=calendardbusservicename evolution-data-server-1.2)|" \
-e "s|\@TIMEOUTMULT\@|${TIMEOUTMULT}|"

@ -0,0 +1,30 @@
#!/bin/bash
if [ "$1" = "--quit" -o "$1" = "--force-shutdown" ]; then
/app/bin/evolution.bin "$@"
else
export BOGOFILTER_DIR="${XDG_DATA_HOME}/bogofilter/"
export GIO_USE_NETWORK_MONITOR=base
export WEBKIT_FORCE_SANDBOX=0
gsettings reset org.gnome.evolution-data-server network-monitor-gio-name
LINES=$(gdbus call --session --dest org.freedesktop.DBus --object-path /org/freedesktop/DBus --method org.freedesktop.DBus.ListNames | grep @SOURCES_SERVICE@ | wc -l)
if [ "${LINES}" = "0" ]; then
/app/libexec/evolution-source-registry &
gdbus wait --session --timeout=1@TIMEOUTMULT@ @SOURCES_SERVICE@
fi
LINES=$(gdbus call --session --dest org.freedesktop.DBus --object-path /org/freedesktop/DBus --method org.freedesktop.DBus.ListNames | grep @ADDRESSBOOK_SERVICE@ | wc -l)
if [ "${LINES}" = "0" ]; then
/app/libexec/evolution-addressbook-factory -r &
gdbus wait --session --timeout=1@TIMEOUTMULT@ @ADDRESSBOOK_SERVICE@
fi
LINES=$(gdbus call --session --dest org.freedesktop.DBus --object-path /org/freedesktop/DBus --method org.freedesktop.DBus.ListNames | grep @CALENDAR_SERVICE@ | wc -l)
if [ "${LINES}" = "0" ]; then
/app/libexec/evolution-calendar-factory -r &
gdbus wait --session --timeout=1@TIMEOUTMULT@ @CALENDAR_SERVICE@
fi
/app/bin/evolution.bin "$@"
fi

@ -0,0 +1,51 @@
From ac15857f14eecd83a3a1950588a2f1edb9cb70de Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Fri, 18 Mar 2022 09:45:20 +0100
Subject: [PATCH] I#1835 - Mail: Preview uses wrong colors for HTML mail with
dark theme
Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/1835
---
data/webkit/e-web-view.js | 12 ++++++++++--
src/em-format/e-mail-formatter-text-html.c | 2 +-
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/data/webkit/e-web-view.js b/data/webkit/e-web-view.js
index 7f47fe4b26..a8f99c4668 100644
--- a/data/webkit/e-web-view.js
+++ b/data/webkit/e-web-view.js
@@ -695,8 +695,16 @@ Evo.initialize = function(elem)
if (doc.documentElement.style.getPropertyValue("color") == "" ||
doc.documentElement.style.getPropertyValue("color") == "text") {
- doc.documentElement.style.setProperty("color", "inherit");
- doc.documentElement.style.setProperty("background-color", "inherit");
+ if (doc.defaultView && doc.defaultView.frameElement && !doc.defaultView.frameElement.hasAttribute("x-e-unset-colors") &&
+ doc.defaultView.frameElement.ownerDocument &&
+ doc.defaultView.frameElement.ownerDocument.defaultView &&
+ doc.defaultView.frameElement.ownerDocument.defaultView.window) {
+ var style = doc.defaultView.frameElement.ownerDocument.defaultView.window.getComputedStyle(doc.defaultView.frameElement);
+ if (style) {
+ doc.documentElement.style.setProperty("color", style.color);
+ doc.documentElement.style.setProperty("background-color", style.backgroundColor);
+ }
+ }
}
elems = doc.querySelectorAll("input, textarea, select, button, label");
diff --git a/src/em-format/e-mail-formatter-text-html.c b/src/em-format/e-mail-formatter-text-html.c
index 708c29a5e4..8a938212ff 100644
--- a/src/em-format/e-mail-formatter-text-html.c
+++ b/src/em-format/e-mail-formatter-text-html.c
@@ -369,7 +369,7 @@ emfe_text_html_format (EMailFormatterExtension *extension,
e_mail_part_get_id (part),
e_mail_part_get_id (part),
e_mail_part_get_frame_security_style (part),
- g_settings_get_boolean (settings, "preview-unset-html-colors") ? "x-e-unset-colors=\"1\"" : "style=\"background-color: #ffffff;\"");
+ g_settings_get_boolean (settings, "preview-unset-html-colors") ? "x-e-unset-colors=\"1\"" : "style=\"background-color:white; color:black;\"");
g_output_stream_write_all (
stream, str, strlen (str),
--
GitLab

@ -0,0 +1,27 @@
From eb62ccaa28bbbca7668913ce7d8056a6d75f9b05 Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Thu, 21 Apr 2022 16:59:34 +0200
Subject: [PATCH] Disable hardware acceleration for WebKitGTK
This should help with crashes related to hardware acceleration
on some machines, as being discussed at:
https://bugs.webkit.org/show_bug.cgi?id=239429
---
src/e-util/e-web-view.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/e-util/e-web-view.c b/src/e-util/e-web-view.c
index 9ab13b69cc..68f86e8c59 100644
--- a/src/e-util/e-web-view.c
+++ b/src/e-util/e-web-view.c
@@ -3617,6 +3617,7 @@ e_web_view_get_default_webkit_settings (void)
"enable-plugins", FALSE,
"enable-smooth-scrolling", FALSE,
"media-playback-allows-inline", FALSE,
+ "hardware-acceleration-policy", WEBKIT_HARDWARE_ACCELERATION_POLICY_NEVER,
NULL);
e_web_view_utils_apply_minimum_font_size (settings);
--
GitLab

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save