Update to 3.33.2
This commit is contained in:
parent
8398cc2a46
commit
43a3dd00c6
1
.gitignore
vendored
1
.gitignore
vendored
@ -158,3 +158,4 @@ gnome-shell-2.31.5.tar.bz2
|
||||
/gnome-shell-3.32.0.tar.xz
|
||||
/gnome-shell-3.32.1.tar.xz
|
||||
/gnome-shell-3.33.1.tar.xz
|
||||
/gnome-shell-3.33.2.tar.xz
|
||||
|
@ -1,451 +0,0 @@
|
||||
From bd4aac8f498d0012b9498839ff1e7d1943720552 Mon Sep 17 00:00:00 2001
|
||||
From: Milan Crha <mcrha@redhat.com>
|
||||
Date: Thu, 18 Apr 2019 16:21:43 +0200
|
||||
Subject: [PATCH] calendar-server: Port to libecal-2.0
|
||||
|
||||
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/501
|
||||
---
|
||||
meson.build | 4 +-
|
||||
src/calendar-server/calendar-sources.c | 6 +-
|
||||
.../gnome-shell-calendar-server.c | 219 ++++++++++--------
|
||||
3 files changed, 125 insertions(+), 104 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 1801d5413..e57e1928f 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -14,7 +14,7 @@ cogl_pango_pc = 'mutter-cogl-pango-' + mutter_api_version
|
||||
libmutter_pc = 'libmutter-' + mutter_api_version
|
||||
|
||||
croco_req = '>= 0.6.8'
|
||||
-ecal_req = '>= 3.5.3'
|
||||
+ecal_req = '>= 3.33.1'
|
||||
eds_req = '>= 3.17.2'
|
||||
gcr_req = '>= 3.7.5'
|
||||
gdesktop_req = '>= 3.7.90'
|
||||
@@ -73,7 +73,7 @@ else
|
||||
endif
|
||||
|
||||
atk_bridge_dep = dependency('atk-bridge-2.0')
|
||||
-ecal_dep = dependency('libecal-1.2', version: ecal_req)
|
||||
+ecal_dep = dependency('libecal-2.0', version: ecal_req)
|
||||
eds_dep = dependency('libedataserver-1.2', version: eds_req)
|
||||
gcr_dep = dependency('gcr-base-3', version: gcr_req)
|
||||
gdk_x11_dep = dependency('gdk-x11-3.0')
|
||||
diff --git a/src/calendar-server/calendar-sources.c b/src/calendar-server/calendar-sources.c
|
||||
index 628f89b07..38b765ecc 100644
|
||||
--- a/src/calendar-server/calendar-sources.c
|
||||
+++ b/src/calendar-server/calendar-sources.c
|
||||
@@ -295,13 +295,13 @@ create_client_for_source (ESource *source,
|
||||
CalendarSourceData *source_data)
|
||||
{
|
||||
ClientData *data;
|
||||
- ECalClient *client;
|
||||
+ EClient *client;
|
||||
GError *error = NULL;
|
||||
|
||||
client = g_hash_table_lookup (source_data->clients, source);
|
||||
g_return_if_fail (client == NULL);
|
||||
|
||||
- client = e_cal_client_new (source, source_type, &error);
|
||||
+ client = e_cal_client_connect_sync (source, source_type, -1, NULL, &error);
|
||||
if (!client)
|
||||
{
|
||||
g_warning ("Could not load source '%s': %s",
|
||||
@@ -312,7 +312,7 @@ create_client_for_source (ESource *source,
|
||||
}
|
||||
|
||||
data = g_slice_new0 (ClientData);
|
||||
- data->client = client; /* takes ownership */
|
||||
+ data->client = E_CAL_CLIENT (client); /* takes ownership */
|
||||
data->backend_died_id = g_signal_connect (client,
|
||||
"backend-died",
|
||||
G_CALLBACK (backend_died_cb),
|
||||
diff --git a/src/calendar-server/gnome-shell-calendar-server.c b/src/calendar-server/gnome-shell-calendar-server.c
|
||||
index 2ad8fb99e..d5b6e01f7 100644
|
||||
--- a/src/calendar-server/gnome-shell-calendar-server.c
|
||||
+++ b/src/calendar-server/gnome-shell-calendar-server.c
|
||||
@@ -102,97 +102,120 @@ typedef struct
|
||||
} CollectAppointmentsData;
|
||||
|
||||
static time_t
|
||||
-get_time_from_property (icalcomponent *ical,
|
||||
- icalproperty_kind prop_kind,
|
||||
- struct icaltimetype (* get_prop_func) (const icalproperty *prop),
|
||||
- icaltimezone *default_zone)
|
||||
+get_time_from_property (ICalComponent *icomp,
|
||||
+ ICalPropertyKind prop_kind,
|
||||
+ ICalTime * (* get_prop_func) (ICalProperty *prop),
|
||||
+ ICalTimezone *default_zone)
|
||||
{
|
||||
- icalproperty *prop;
|
||||
- struct icaltimetype ical_time;
|
||||
- icalparameter *param;
|
||||
- icaltimezone *timezone = NULL;
|
||||
+ ICalProperty *prop;
|
||||
+ ICalTime *itt;
|
||||
+ ICalParameter *param;
|
||||
+ ICalTimezone *timezone = NULL;
|
||||
+ time_t retval;
|
||||
|
||||
- prop = icalcomponent_get_first_property (ical, prop_kind);
|
||||
+ prop = i_cal_component_get_first_property (icomp, prop_kind);
|
||||
if (!prop)
|
||||
return 0;
|
||||
|
||||
- ical_time = get_prop_func (prop);
|
||||
+ itt = get_prop_func (prop);
|
||||
|
||||
- param = icalproperty_get_first_parameter (prop, ICAL_TZID_PARAMETER);
|
||||
+ param = i_cal_property_get_first_parameter (prop, I_CAL_TZID_PARAMETER);
|
||||
if (param)
|
||||
- timezone = icaltimezone_get_builtin_timezone_from_tzid (icalparameter_get_tzid (param));
|
||||
- else if (icaltime_is_utc (ical_time))
|
||||
- timezone = icaltimezone_get_utc_timezone ();
|
||||
+ timezone = i_cal_timezone_get_builtin_timezone_from_tzid (i_cal_parameter_get_tzid (param));
|
||||
+ else if (i_cal_time_is_utc (itt))
|
||||
+ timezone = i_cal_timezone_get_utc_timezone ();
|
||||
else
|
||||
timezone = default_zone;
|
||||
|
||||
- return icaltime_as_timet_with_zone (ical_time, timezone);
|
||||
+ retval = i_cal_time_as_timet_with_zone (itt, timezone);
|
||||
+
|
||||
+ g_clear_object (¶m);
|
||||
+ g_clear_object (&prop);
|
||||
+ g_clear_object (&itt);
|
||||
+
|
||||
+ return retval;
|
||||
}
|
||||
|
||||
static char *
|
||||
-get_ical_uid (icalcomponent *ical)
|
||||
+get_ical_uid (ICalComponent *icomp)
|
||||
{
|
||||
- return g_strdup (icalcomponent_get_uid (ical));
|
||||
+ return g_strdup (i_cal_component_get_uid (icomp));
|
||||
}
|
||||
|
||||
static char *
|
||||
-get_ical_summary (icalcomponent *ical)
|
||||
+get_ical_summary (ICalComponent *icomp)
|
||||
{
|
||||
- icalproperty *prop;
|
||||
+ ICalProperty *prop;
|
||||
+ char *retval;
|
||||
|
||||
- prop = icalcomponent_get_first_property (ical, ICAL_SUMMARY_PROPERTY);
|
||||
+ prop = i_cal_component_get_first_property (icomp, I_CAL_SUMMARY_PROPERTY);
|
||||
if (!prop)
|
||||
return NULL;
|
||||
|
||||
- return g_strdup (icalproperty_get_summary (prop));
|
||||
+ retval = g_strdup (i_cal_property_get_summary (prop));
|
||||
+
|
||||
+ g_object_unref (prop);
|
||||
+
|
||||
+ return retval;
|
||||
}
|
||||
|
||||
static char *
|
||||
-get_ical_description (icalcomponent *ical)
|
||||
+get_ical_description (ICalComponent *icomp)
|
||||
{
|
||||
- icalproperty *prop;
|
||||
+ ICalProperty *prop;
|
||||
+ char *retval;
|
||||
|
||||
- prop = icalcomponent_get_first_property (ical, ICAL_DESCRIPTION_PROPERTY);
|
||||
+ prop = i_cal_component_get_first_property (icomp, I_CAL_DESCRIPTION_PROPERTY);
|
||||
if (!prop)
|
||||
return NULL;
|
||||
|
||||
- return g_strdup (icalproperty_get_description (prop));
|
||||
+ retval = g_strdup (i_cal_property_get_description (prop));
|
||||
+
|
||||
+ g_object_unref (prop);
|
||||
+
|
||||
+ return retval;
|
||||
}
|
||||
|
||||
static inline time_t
|
||||
-get_ical_start_time (icalcomponent *ical,
|
||||
- icaltimezone *default_zone)
|
||||
+get_ical_start_time (ICalComponent *icomp,
|
||||
+ ICalTimezone *default_zone)
|
||||
{
|
||||
- return get_time_from_property (ical,
|
||||
- ICAL_DTSTART_PROPERTY,
|
||||
- icalproperty_get_dtstart,
|
||||
+ return get_time_from_property (icomp,
|
||||
+ I_CAL_DTSTART_PROPERTY,
|
||||
+ i_cal_property_get_dtstart,
|
||||
default_zone);
|
||||
}
|
||||
|
||||
static inline time_t
|
||||
-get_ical_end_time (icalcomponent *ical,
|
||||
- icaltimezone *default_zone)
|
||||
+get_ical_end_time (ICalComponent *icomp,
|
||||
+ ICalTimezone *default_zone)
|
||||
{
|
||||
- return get_time_from_property (ical,
|
||||
- ICAL_DTEND_PROPERTY,
|
||||
- icalproperty_get_dtend,
|
||||
+ return get_time_from_property (icomp,
|
||||
+ I_CAL_DTEND_PROPERTY,
|
||||
+ i_cal_property_get_dtend,
|
||||
default_zone);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
-get_ical_is_all_day (icalcomponent *ical,
|
||||
+get_ical_is_all_day (ICalComponent *icomp,
|
||||
time_t start_time,
|
||||
- icaltimezone *default_zone)
|
||||
+ ICalTimezone *default_zone)
|
||||
{
|
||||
- icalproperty *prop;
|
||||
- struct tm *start_tm;
|
||||
- time_t end_time;
|
||||
- struct icaldurationtype duration;
|
||||
- struct icaltimetype start_icaltime;
|
||||
+ ICalProperty *prop;
|
||||
+ ICalDuration *duration;
|
||||
+ ICalTime *dtstart;
|
||||
+ struct tm *start_tm;
|
||||
+ time_t end_time;
|
||||
+ gboolean retval;
|
||||
+
|
||||
+ dtstart = i_cal_component_get_dtstart (icomp);
|
||||
+ if (dtstart && i_cal_time_is_date (dtstart))
|
||||
+ {
|
||||
+ g_clear_object (&dtstart);
|
||||
+ return TRUE;
|
||||
+ }
|
||||
|
||||
- start_icaltime = icalcomponent_get_dtstart (ical);
|
||||
- if (start_icaltime.is_date)
|
||||
- return TRUE;
|
||||
+ g_clear_object (&dtstart);
|
||||
|
||||
start_tm = gmtime (&start_time);
|
||||
if (start_tm->tm_sec != 0 ||
|
||||
@@ -200,35 +223,40 @@ get_ical_is_all_day (icalcomponent *ical,
|
||||
start_tm->tm_hour != 0)
|
||||
return FALSE;
|
||||
|
||||
- if ((end_time = get_ical_end_time (ical, default_zone)))
|
||||
+ if ((end_time = get_ical_end_time (icomp, default_zone)))
|
||||
return (end_time - start_time) % 86400 == 0;
|
||||
|
||||
- prop = icalcomponent_get_first_property (ical, ICAL_DURATION_PROPERTY);
|
||||
+ prop = i_cal_component_get_first_property (icomp, I_CAL_DURATION_PROPERTY);
|
||||
if (!prop)
|
||||
return FALSE;
|
||||
|
||||
- duration = icalproperty_get_duration (prop);
|
||||
+ duration = i_cal_property_get_duration (prop);
|
||||
+
|
||||
+ retval = duration && (i_cal_duration_as_int (duration) % 86400) == 0;
|
||||
|
||||
- return icaldurationtype_as_int (duration) % 86400 == 0;
|
||||
+ g_clear_object (&duration);
|
||||
+ g_clear_object (&prop);
|
||||
+
|
||||
+ return retval;
|
||||
}
|
||||
|
||||
static inline time_t
|
||||
-get_ical_due_time (icalcomponent *ical,
|
||||
- icaltimezone *default_zone)
|
||||
+get_ical_due_time (ICalComponent *icomp,
|
||||
+ ICalTimezone *default_zone)
|
||||
{
|
||||
- return get_time_from_property (ical,
|
||||
- ICAL_DUE_PROPERTY,
|
||||
- icalproperty_get_due,
|
||||
+ return get_time_from_property (icomp,
|
||||
+ I_CAL_DUE_PROPERTY,
|
||||
+ i_cal_property_get_due,
|
||||
default_zone);
|
||||
}
|
||||
|
||||
static inline time_t
|
||||
-get_ical_completed_time (icalcomponent *ical,
|
||||
- icaltimezone *default_zone)
|
||||
+get_ical_completed_time (ICalComponent *icomp,
|
||||
+ ICalTimezone *default_zone)
|
||||
{
|
||||
- return get_time_from_property (ical,
|
||||
- ICAL_COMPLETED_PROPERTY,
|
||||
- icalproperty_get_completed,
|
||||
+ return get_time_from_property (icomp,
|
||||
+ I_CAL_COMPLETED_PROPERTY,
|
||||
+ i_cal_property_get_completed,
|
||||
default_zone);
|
||||
}
|
||||
|
||||
@@ -365,67 +393,69 @@ calendar_appointment_free (CalendarAppointment *appointment)
|
||||
|
||||
static void
|
||||
calendar_appointment_init (CalendarAppointment *appointment,
|
||||
- icalcomponent *ical,
|
||||
+ ICalComponent *icomp,
|
||||
ECalClient *cal)
|
||||
{
|
||||
- icaltimezone *default_zone;
|
||||
+ ICalTimezone *default_zone;
|
||||
const char *source_id;
|
||||
|
||||
source_id = e_source_get_uid (e_client_get_source (E_CLIENT (cal)));
|
||||
default_zone = e_cal_client_get_default_timezone (cal);
|
||||
|
||||
- appointment->uid = get_ical_uid (ical);
|
||||
+ appointment->uid = get_ical_uid (icomp);
|
||||
appointment->source_id = g_strdup (source_id);
|
||||
appointment->backend_name = get_source_backend_name (cal);
|
||||
- appointment->summary = get_ical_summary (ical);
|
||||
- appointment->description = get_ical_description (ical);
|
||||
+ appointment->summary = get_ical_summary (icomp);
|
||||
+ appointment->description = get_ical_description (icomp);
|
||||
appointment->color_string = get_source_color (cal);
|
||||
- appointment->start_time = get_ical_start_time (ical, default_zone);
|
||||
- appointment->end_time = get_ical_end_time (ical, default_zone);
|
||||
- appointment->is_all_day = get_ical_is_all_day (ical,
|
||||
+ appointment->start_time = get_ical_start_time (icomp, default_zone);
|
||||
+ appointment->end_time = get_ical_end_time (icomp, default_zone);
|
||||
+ appointment->is_all_day = get_ical_is_all_day (icomp,
|
||||
appointment->start_time,
|
||||
default_zone);
|
||||
}
|
||||
|
||||
static CalendarAppointment *
|
||||
-calendar_appointment_new (icalcomponent *ical,
|
||||
+calendar_appointment_new (ICalComponent *icomp,
|
||||
ECalClient *cal)
|
||||
{
|
||||
CalendarAppointment *appointment;
|
||||
|
||||
appointment = g_new0 (CalendarAppointment, 1);
|
||||
|
||||
- calendar_appointment_init (appointment, ical, cal);
|
||||
+ calendar_appointment_init (appointment, icomp, cal);
|
||||
return appointment;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
-generate_instances_cb (ECalComponent *comp,
|
||||
- time_t start,
|
||||
- time_t end,
|
||||
- gpointer data)
|
||||
+generate_instances_cb (ICalComponent *icomp,
|
||||
+ ICalTime *instance_start,
|
||||
+ ICalTime *instance_end,
|
||||
+ gpointer user_data,
|
||||
+ GCancellable *cancellable,
|
||||
+ GError **error)
|
||||
{
|
||||
- ECalClient *cal = ((CollectAppointmentsData *)data)->client;
|
||||
- GHashTable *appointments = ((CollectAppointmentsData *)data)->appointments;
|
||||
+ ECalClient *cal = ((CollectAppointmentsData *)user_data)->client;
|
||||
+ GHashTable *appointments = ((CollectAppointmentsData *)user_data)->appointments;
|
||||
CalendarAppointment *appointment;
|
||||
CalendarOccurrence *occurrence;
|
||||
- const char *uid;
|
||||
+ ICalTimezone *default_zone;
|
||||
+ const gchar *uid;
|
||||
|
||||
- e_cal_component_get_uid (comp, &uid);
|
||||
+ default_zone = e_cal_client_get_default_timezone (cal);
|
||||
+ uid = i_cal_component_get_uid (icomp);
|
||||
appointment = g_hash_table_lookup (appointments, uid);
|
||||
|
||||
if (appointment == NULL)
|
||||
{
|
||||
- icalcomponent *ical = e_cal_component_get_icalcomponent (comp);
|
||||
-
|
||||
- appointment = calendar_appointment_new (ical, cal);
|
||||
+ appointment = calendar_appointment_new (icomp, cal);
|
||||
g_hash_table_insert (appointments, g_strdup (uid), appointment);
|
||||
}
|
||||
|
||||
occurrence = g_new0 (CalendarOccurrence, 1);
|
||||
- occurrence->start_time = start;
|
||||
- occurrence->end_time = end;
|
||||
- occurrence->rid = e_cal_component_get_recurid_as_string (comp);
|
||||
+ occurrence->start_time = i_cal_time_as_timet_with_zone (instance_start, default_zone);
|
||||
+ occurrence->end_time = i_cal_time_as_timet_with_zone (instance_end, default_zone);
|
||||
+ occurrence->rid = e_cal_util_component_get_recurid_as_string (icomp);
|
||||
|
||||
appointment->occurrences = g_slist_append (appointment->occurrences, occurrence);
|
||||
|
||||
@@ -442,7 +472,7 @@ struct _App
|
||||
time_t since;
|
||||
time_t until;
|
||||
|
||||
- icaltimezone *zone;
|
||||
+ ICalTimezone *zone;
|
||||
|
||||
CalendarSources *sources;
|
||||
gulong sources_signal_id;
|
||||
@@ -468,9 +498,9 @@ app_update_timezone (App *app)
|
||||
if (g_strcmp0 (location, app->timezone_location) != 0)
|
||||
{
|
||||
if (location == NULL)
|
||||
- app->zone = icaltimezone_get_utc_timezone ();
|
||||
+ app->zone = i_cal_timezone_get_utc_timezone ();
|
||||
else
|
||||
- app->zone = icaltimezone_get_builtin_timezone (location);
|
||||
+ app->zone = i_cal_timezone_get_builtin_timezone (location);
|
||||
g_free (app->timezone_location);
|
||||
app->timezone_location = location;
|
||||
print_debug ("Using timezone %s", app->timezone_location);
|
||||
@@ -528,10 +558,10 @@ on_objects_added (ECalClientView *view,
|
||||
|
||||
for (l = objects; l != NULL; l = l->next)
|
||||
{
|
||||
- icalcomponent *ical = l->data;
|
||||
+ ICalComponent *icomp = l->data;
|
||||
const char *uid;
|
||||
|
||||
- uid = icalcomponent_get_uid (ical);
|
||||
+ uid = i_cal_component_get_uid (icomp);
|
||||
|
||||
if (g_hash_table_lookup (app->appointments, uid) == NULL)
|
||||
{
|
||||
@@ -600,7 +630,7 @@ app_load_events (App *app)
|
||||
|
||||
since_iso8601 = isodate_from_time_t (app->since);
|
||||
until_iso8601 = isodate_from_time_t (app->until);
|
||||
- tz_location = icaltimezone_get_location (app->zone);
|
||||
+ tz_location = i_cal_timezone_get_location (app->zone);
|
||||
|
||||
print_debug ("Loading events since %s until %s",
|
||||
since_iso8601,
|
||||
@@ -622,21 +652,12 @@ app_load_events (App *app)
|
||||
|
||||
e_cal_client_set_default_timezone (cal, app->zone);
|
||||
|
||||
- error = NULL;
|
||||
- if (!e_client_open_sync (E_CLIENT (cal), TRUE, NULL, &error))
|
||||
- {
|
||||
- ESource *source = e_client_get_source (E_CLIENT (cal));
|
||||
- g_warning ("Error opening calendar %s: %s\n",
|
||||
- e_source_get_uid (source), error->message);
|
||||
- g_error_free (error);
|
||||
- continue;
|
||||
- }
|
||||
-
|
||||
data.client = cal;
|
||||
data.appointments = app->appointments;
|
||||
e_cal_client_generate_instances_sync (cal,
|
||||
app->since,
|
||||
app->until,
|
||||
+ NULL,
|
||||
generate_instances_cb,
|
||||
&data);
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
@ -1,6 +1,6 @@
|
||||
Name: gnome-shell
|
||||
Version: 3.33.1
|
||||
Release: 2%{?dist}
|
||||
Version: 3.33.2
|
||||
Release: 1%{?dist}
|
||||
Summary: Window management and application launching for GNOME
|
||||
|
||||
License: GPLv2+
|
||||
@ -17,17 +17,14 @@ Patch1: gnome-shell-favourite-apps-firefox.patch
|
||||
Patch2: 0001-endSessionDialog-Immediately-add-buttons-to-the-dial.patch
|
||||
Patch3: 0002-endSessionDialog-Support-rebooting-into-the-bootload.patch
|
||||
|
||||
# Backported from upstream
|
||||
Patch4: 0001-calendar-server-Port-to-libecal-2.0.patch
|
||||
|
||||
%define libcroco_version 0.6.8
|
||||
%define eds_version 3.17.2
|
||||
%define eds_version 3.33.1
|
||||
%define gnome_desktop_version 3.7.90
|
||||
%define glib2_version 2.56.0
|
||||
%define gobject_introspection_version 1.49.1
|
||||
%define gjs_version 1.54.0
|
||||
%define gtk3_version 3.15.0
|
||||
%define mutter_version 3.33.1
|
||||
%define mutter_version 3.33.2
|
||||
%define polkit_version 0.100
|
||||
%define gsettings_desktop_schemas_version 3.27.90
|
||||
%define ibus_version 1.5.2
|
||||
@ -204,6 +201,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/evolution-calendar.de
|
||||
%{_mandir}/man1/%{name}.1.gz
|
||||
|
||||
%changelog
|
||||
* Wed May 22 2019 Florian Müllner <fmuellner@redhat.com> - 3.33.2-1
|
||||
- Update to 3.33.2
|
||||
|
||||
* Wed May 22 2019 Kalev Lember <klember@redhat.com> - 3.33.1-2
|
||||
- Rebuild for libecal-2.0
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (gnome-shell-3.33.1.tar.xz) = 37b1759a53f332e3c8656bd8acc5781687da85d226d20c0af8523fac602db222e285b2f9eb714f1a87718b9ae5d526e4dbdeb0e3e85846293c50ea9f982bb5fd
|
||||
SHA512 (gnome-shell-3.33.2.tar.xz) = aab43446a5296b99137449ea9eacbe6876623f2920bce1f0467e607ef441bc290f073c99d505450fb4b6297e0e97ce369d08967e2357704f738a8bbd12f7e843
|
||||
|
Loading…
Reference in New Issue
Block a user