diff options
Diffstat (limited to 'src/engine-eds.cpp')
-rw-r--r-- | src/engine-eds.cpp | 43 |
1 files changed, 35 insertions, 8 deletions
diff --git a/src/engine-eds.cpp b/src/engine-eds.cpp index b7f4682..7a61fc0 100644 --- a/src/engine-eds.cpp +++ b/src/engine-eds.cpp @@ -1,6 +1,6 @@ /* * Copyright 2014 Canonical Ltd. - * Copyright 2021 Robert Tari + * Copyright 2021-2024 Robert Tari * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License version 3, as published @@ -635,19 +635,18 @@ private: auto action = e_cal_component_alarm_get_action(alarm); if (action == E_CAL_COMPONENT_ALARM_AUDIO) { - ICalAttach *attach = nullptr; auto attachments = e_cal_component_alarm_get_attachments(alarm); - if (attachments != nullptr && attachments->next != nullptr) - attach = I_CAL_ATTACH (attachments->data); + for (; attachments != nullptr; attachments = attachments->next) { + ICalAttach *attach = I_CAL_ATTACH (attachments->data); - if (attach != nullptr) - { - if (i_cal_attach_get_is_url (attach)) + if (attach != nullptr && i_cal_attach_get_is_url (attach)) { const char* url = i_cal_attach_get_url(attach); - if (url != nullptr) + if (url != nullptr) { ret = url; + break; + } } } if (ret.empty()) @@ -1075,6 +1074,34 @@ private: } g_slist_free_full(categ_list, g_free); + // Get the colour - we might need this override in the future + + /*if (icc) + { + ECalComponentPropertyBag *pBag = e_cal_component_property_bag_new_from_component (icc, NULL, NULL); + + if (pBag) + { + guint nProperties = e_cal_component_property_bag_get_count (pBag); + + for (guint nProperty = 0; nProperty < nProperties; nProperty++) + { + ICalProperty *pProperty = e_cal_component_property_bag_get (pBag, nProperty); + gchar *sName = i_cal_property_get_property_name (pProperty); + gboolean bColour = !g_strcmp0 (sName, "COLOR"); + + if (bColour) + { + baseline.color = i_cal_property_get_value_as_string (pProperty); + + break; + } + } + + e_cal_component_property_bag_free (pBag); + } + }*/ + g_debug("%s got appointment from %s to %s: %s", G_STRLOC, baseline.begin.format("%F %T %z").c_str(), baseline.end.format("%F %T %z").c_str(), |