Compare commits
4 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
af9fab6893 |
||
|
|
c45f4601fc |
||
|
|
4f463a526a |
||
|
|
76b8a51b5b |
4 changed files with 19 additions and 152 deletions
4
.gitignore
vendored
4
.gitignore
vendored
|
|
@ -9,3 +9,7 @@
|
|||
/wingpanel-indicator-datetime-2.1.3.tar.gz
|
||||
/wingpanel-indicator-datetime-2.2.0.tar.gz
|
||||
/wingpanel-indicator-datetime-2.2.1.tar.gz
|
||||
/wingpanel-indicator-datetime-2.2.2.tar.gz
|
||||
/wingpanel-indicator-datetime-2.2.3.tar.gz
|
||||
/wingpanel-indicator-datetime-2.2.4.tar.gz
|
||||
/wingpanel-indicator-datetime-2.2.5.tar.gz
|
||||
|
|
|
|||
146
3ccd05d.patch
146
3ccd05d.patch
|
|
@ -1,146 +0,0 @@
|
|||
From 3ccd05d611e6dd5274a03f061ba1b5e13d6fe0cf Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Corentin=20No=C3=ABl?= <corentin@elementary.io>
|
||||
Date: Fri, 6 Dec 2019 19:41:32 +0100
|
||||
Subject: [PATCH] Add support for libecal-2.0 (#202)
|
||||
|
||||
---
|
||||
meson.build | 16 ++++++++++++--
|
||||
src/Widgets/calendar/CalendarModel.vala | 28 ++++++++++++++++++-------
|
||||
src/Widgets/calendar/Util.vala | 12 +++++++++--
|
||||
3 files changed, 45 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 71c80a1..a1b9b46 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -24,6 +24,18 @@ gresource = gnome.compile_resources(
|
||||
wingpanel_dep = dependency('wingpanel-2.0')
|
||||
wingpanel_indicatorsdir = wingpanel_dep.get_pkgconfig_variable('indicatorsdir', define_variable: ['libdir', libdir])
|
||||
|
||||
+
|
||||
+libecal_dep = dependency('libecal-2.0', required: false)
|
||||
+if libecal_dep.found()
|
||||
+ libical_dep = dependency('libical-glib')
|
||||
+ add_project_arguments('--define=E_CAL_2_0', language: 'vala')
|
||||
+ add_project_arguments('-DLIBICAL_GLIB_UNSTABLE_API=1', language: 'c')
|
||||
+else
|
||||
+ libecal_dep = dependency('libecal-1.2', version: '>=3.8.0')
|
||||
+ libical_dep = dependency('libical')
|
||||
+ add_project_arguments('--vapidir', join_paths(meson.current_source_dir(), 'vapi'), language: 'vala')
|
||||
+endif
|
||||
+
|
||||
shared_module(
|
||||
meson.project_name(),
|
||||
gresource,
|
||||
@@ -43,9 +55,9 @@ shared_module(
|
||||
dependency('gobject-2.0'),
|
||||
dependency('granite'),
|
||||
dependency('gtk+-3.0'),
|
||||
- dependency('libecal-1.2'),
|
||||
+ libecal_dep,
|
||||
dependency('libedataserver-1.2'),
|
||||
- dependency('libical'),
|
||||
+ libical_dep,
|
||||
wingpanel_dep,
|
||||
],
|
||||
install: true,
|
||||
diff --git a/src/Widgets/calendar/CalendarModel.vala b/src/Widgets/calendar/CalendarModel.vala
|
||||
index c30401e..7602303 100644
|
||||
--- a/src/Widgets/calendar/CalendarModel.vala
|
||||
+++ b/src/Widgets/calendar/CalendarModel.vala
|
||||
@@ -260,25 +260,35 @@ namespace DateTime.Widgets {
|
||||
return view;
|
||||
}
|
||||
|
||||
- private void on_objects_added (E.Source source, ECal.Client client, SList<unowned ICal.Component> objects) {
|
||||
+#if E_CAL_2_0
|
||||
+ private void on_objects_added (E.Source source, ECal.Client client, SList<ICal.Component> objects) {
|
||||
+#else
|
||||
+ private void on_objects_added (E.Source source, ECal.Client client, SList<weak ICal.Component> objects) {
|
||||
+#endif
|
||||
debug (@"Received $(objects.length()) added event(s) for source '%s'", source.dup_display_name ());
|
||||
var events = source_events.get (source);
|
||||
var added_events = new Gee.ArrayList<ECal.Component> ((Gee.EqualDataFunc<ECal.Component>?) Util.calcomponent_equal_func);
|
||||
-
|
||||
objects.foreach ((comp) => {
|
||||
unowned string uid = comp.get_uid ();
|
||||
+#if E_CAL_2_0
|
||||
+ client.generate_instances_for_object_sync (comp, (time_t) data_range.first_dt.to_unix (), (time_t) data_range.last_dt.to_unix (), null, (comp, start, end) => {
|
||||
+ var event = new ECal.Component.from_icalcomponent (comp);
|
||||
+#else
|
||||
client.generate_instances_for_object_sync (comp, (time_t) data_range.first_dt.to_unix (), (time_t) data_range.last_dt.to_unix (), (event, start, end) => {
|
||||
+#endif
|
||||
debug_event (source, event);
|
||||
events.set (uid, event);
|
||||
added_events.add (event);
|
||||
return true;
|
||||
});
|
||||
});
|
||||
-
|
||||
- events_added (source, added_events.read_only_view);
|
||||
}
|
||||
|
||||
- private void on_objects_modified (E.Source source, ECal.Client client, SList<unowned ICal.Component> objects) {
|
||||
+#if E_CAL_2_0
|
||||
+ private void on_objects_modified (E.Source source, ECal.Client client, SList<ICal.Component> objects) {
|
||||
+#else
|
||||
+ private void on_objects_modified (E.Source source, ECal.Client client, SList<weak ICal.Component> objects) {
|
||||
+#endif
|
||||
debug (@"Received $(objects.length()) modified event(s) for source '%s'", source.dup_display_name ());
|
||||
var updated_events = new Gee.ArrayList<ECal.Component> ((Gee.EqualDataFunc<ECal.Component>?) Util.calcomponent_equal_func);
|
||||
|
||||
@@ -294,7 +304,11 @@ namespace DateTime.Widgets {
|
||||
events_updated (source, updated_events.read_only_view);
|
||||
}
|
||||
|
||||
- private void on_objects_removed (E.Source source, ECal.Client client, SList<unowned ECal.ComponentId?> cids) {
|
||||
+#if E_CAL_2_0
|
||||
+ private void on_objects_removed (E.Source source, ECal.Client client, SList<ECal.ComponentId?> cids) {
|
||||
+#else
|
||||
+ private void on_objects_removed (E.Source source, ECal.Client client, SList<weak ECal.ComponentId?> cids) {
|
||||
+#endif
|
||||
debug (@"Received $(cids.length()) removed event(s) for source '%s'", source.dup_display_name ());
|
||||
var events = source_events.get (source);
|
||||
var removed_events = new Gee.ArrayList<ECal.Component> ((Gee.EqualDataFunc<ECal.Component>?) Util.calcomponent_equal_func);
|
||||
@@ -304,7 +318,7 @@ namespace DateTime.Widgets {
|
||||
return;
|
||||
}
|
||||
|
||||
- var comps = events.get (cid.uid);
|
||||
+ var comps = events.get (cid.get_uid ());
|
||||
foreach (ECal.Component event in comps) {
|
||||
removed_events.add (event);
|
||||
debug_event (source, event);
|
||||
diff --git a/src/Widgets/calendar/Util.vala b/src/Widgets/calendar/Util.vala
|
||||
index ff9164b..e51f784 100644
|
||||
--- a/src/Widgets/calendar/Util.vala
|
||||
+++ b/src/Widgets/calendar/Util.vala
|
||||
@@ -93,8 +93,16 @@ namespace Util {
|
||||
* XXX : Track next versions of evolution in order to convert ICal.Timezone to GLib.TimeZone with a dedicated function…
|
||||
*/
|
||||
public GLib.DateTime ical_to_date_time (ICal.Time date) {
|
||||
+#if E_CAL_2_0
|
||||
+ int year, month, day, hour, minute, second;
|
||||
+ date.get_date (out year, out month, out day);
|
||||
+ date.get_time (out hour, out minute, out second);
|
||||
+ return new GLib.DateTime (timezone_from_ical (date), year, month,
|
||||
+ day, hour, minute, second);
|
||||
+#else
|
||||
return new GLib.DateTime (timezone_from_ical (date), date.year, date.month,
|
||||
date.day, date.hour, date.minute, date.second);
|
||||
+#endif
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -162,9 +170,9 @@ namespace Util {
|
||||
|
||||
var a_id = a.get_id ();
|
||||
var b_id = b.get_id ();
|
||||
- int res = GLib.strcmp (a_id.uid, b_id.uid);
|
||||
+ int res = GLib.strcmp (a_id.get_uid (), b_id.get_uid ());
|
||||
if (res == 0) {
|
||||
- return GLib.strcmp (a_id.rid, b_id.rid);
|
||||
+ return GLib.strcmp (a_id.get_rid (), b_id.get_rid ());
|
||||
}
|
||||
|
||||
return res;
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (wingpanel-indicator-datetime-2.2.1.tar.gz) = 963416c510f718a5abd4bed92e0036fc4991cbc700b4f4a2120615be69a3c7e5851464ab82f1beed79933f202156a3ebba1b87a01eaebbf37ce67845dbeb3e36
|
||||
SHA512 (wingpanel-indicator-datetime-2.2.5.tar.gz) = 2d174384f56e1deb3d86f01a03415d5db85a2b3de09ead4e6e2ca8552dc3c9f3ec6cf5cf450e0312db99ff92ca07aa13decd319091e5b32bce874e235850fd04
|
||||
|
|
|
|||
|
|
@ -4,16 +4,13 @@
|
|||
|
||||
Name: wingpanel-indicator-datetime
|
||||
Summary: Datetime Indicator for wingpanel
|
||||
Version: 2.2.1
|
||||
Release: 2%{?dist}
|
||||
Version: 2.2.5
|
||||
Release: 1%{?dist}
|
||||
License: GPLv3+
|
||||
|
||||
URL: https://github.com/elementary/wingpanel-indicator-datetime
|
||||
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
||||
|
||||
# include upstream patch for libecal-2.0 support
|
||||
Patch0: %{url}/commit/3ccd05d.patch
|
||||
|
||||
BuildRequires: gettext
|
||||
BuildRequires: libappstream-glib
|
||||
BuildRequires: meson
|
||||
|
|
@ -65,6 +62,18 @@ appstream-util validate-relax --nonet \
|
|||
|
||||
|
||||
%changelog
|
||||
* Sat Jul 04 2020 Fabio Valentini <decathorpe@gmail.com> - 2.2.5-1
|
||||
- Update to version 2.2.5.
|
||||
|
||||
* Thu May 28 2020 Fabio Valentini <decathorpe@gmail.com> - 2.2.4-1
|
||||
- Update to version 2.2.4.
|
||||
|
||||
* Wed May 20 2020 Fabio Valentini <decathorpe@gmail.com> - 2.2.3-1
|
||||
- Update to version 2.2.3.
|
||||
|
||||
* Mon Mar 30 2020 Fabio Valentini <decathorpe@gmail.com> - 2.2.2-1
|
||||
- Update to version 2.2.2.
|
||||
|
||||
* Sat Dec 07 2019 Fabio Valentini <decathorpe@gmail.com> - 2.2.1-2
|
||||
- Include upstream patch for libecal-2.0 support.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue