Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock X-Debbugs-Cc: Debian KDE Extras Team <pkg-kde-ext...@lists.alioth.debian.org>
Dear Release Team, please unblock package kongress. [ Reason ] This upload includes a minor upstream release with only targetted fixes, and a trivial copyright fix. The upstream fixes are the following: - Fix display of talk time on notifications - Prevent kongressac from crashing - Fix grouping of talks into conference days - Fix alarm schedule time - Prevent duplicate conference entries from being displayed - Do not display generic, multi-day calendar events on the daily schedule - Fix translation congiguration [ Impact ] Users won’t get the above listed fixes. [ Tests ] I tested all main functionality manually. [ Risks ] None that I can see, individual upstream commits could be reverted if need be. [ Checklist ] [x] all changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in testing [ Other info ] <3 <3 <3 unblock kongress/1.0.1-1
diff -Nru kongress-1.0/AndroidManifest.xml kongress-1.0.1/AndroidManifest.xml --- kongress-1.0/AndroidManifest.xml 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/AndroidManifest.xml 2021-03-08 10:21:05.000000000 +0100 @@ -5,7 +5,7 @@ --> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.kde.kongress" - android:versionName="1.0.0" + android:versionName="1.0.1" android:versionCode="1" android:installLocation="auto"> <supports-screens android:largeScreens="true" android:normalScreens="true" android:anyDensity="true" android:smallScreens="true"/> diff -Nru kongress-1.0/changelog.md kongress-1.0.1/changelog.md --- kongress-1.0/changelog.md 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/changelog.md 2021-03-08 10:21:05.000000000 +0100 @@ -1,3 +1,17 @@ +<!-- + SPDX-FileCopyrightText: 2021 Dimitris Kardarakos <dimk...@posteo.net> + SPDX-License-Identifier: CC-BY-SA-4.0 +--> + +## Version 1.0.1 +- Fix display of talk time on notifications +- Prevent kongressac from crashing +- Fix grouping of talks into conference days +- Fix alarm schedule time +- Prevent duplicate conference entries from being displayed +- Do not display generic, multi-day calendar events on the daily schedule +- Fix translation congiguration + ## Version 1.0 - Display the schedule of a collection of conferences - Show the schedule of the talks by conference day diff -Nru kongress-1.0/CMakeLists.txt kongress-1.0.1/CMakeLists.txt --- kongress-1.0/CMakeLists.txt 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/CMakeLists.txt 2021-03-08 10:21:05.000000000 +0100 @@ -4,7 +4,7 @@ cmake_minimum_required(VERSION 3.0) -project(kongress VERSION "1.0") +project(kongress VERSION "1.0.1") set(KF5_MIN_VERSION "5.63.0") set(QT_MIN_VERSION "5.7.0") @@ -14,6 +14,7 @@ option(REMINDERS_ENABLED "Build with reminders support" ON) +include(CTest) include(FeatureSummary) find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE) @@ -26,7 +27,7 @@ include(KDECompilerSettings NO_POLICY_SCOPE) include(ECMPoQmTools) -find_package(Qt5 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS DBus Core Quick Gui Svg Test Qml QuickControls2 Network) +find_package(Qt5 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS DBus Core Quick Gui Svg Qml QuickControls2 Network) find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS Config Kirigami2 I18n CalendarCore CoreAddons) @@ -37,7 +38,9 @@ else() find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Widgets) endif() - +if (BUILD_TESTING) + find_package(Qt5 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS Test) +endif() if(NOT ANDROID AND REMINDERS_ENABLED) find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS DBusAddons Notifications Service) endif() @@ -49,7 +52,7 @@ endif() if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po") - ecm_install_po_files_as_qm(po) + ki18n_install(po) endif() install(FILES org.kde.kongress.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR}) diff -Nru kongress-1.0/debian/changelog kongress-1.0.1/debian/changelog --- kongress-1.0/debian/changelog 2021-01-26 16:26:16.000000000 +0100 +++ kongress-1.0.1/debian/changelog 2021-03-29 10:42:07.000000000 +0200 @@ -1,3 +1,17 @@ +kongress (1.0.1-1) unstable; urgency=medium + + * New upstream release (1.0.1): + - Fix display of talk time on notifications + - Prevent kongressac from crashing + - Fix grouping of talks into conference days + - Fix alarm schedule time + - Prevent duplicate conference entries from being displayed + - Do not display generic, multi-day calendar events on the daily schedule + - Fix translation congiguration + * Minor fixes to debian/copyright. + + -- Aurélien COUDERC <couc...@debian.org> Mon, 29 Mar 2021 10:42:07 +0200 + kongress (1.0-1) unstable; urgency=medium * Initial release. (Closes: #981109) diff -Nru kongress-1.0/debian/copyright kongress-1.0.1/debian/copyright --- kongress-1.0/debian/copyright 2021-01-26 15:28:23.000000000 +0100 +++ kongress-1.0.1/debian/copyright 2021-03-29 10:38:59.000000000 +0200 @@ -32,8 +32,7 @@ License: BSD-2-Clause Files: ic_launcher-playstore.png - icons/* - logo.png + logo.png org.kde.kongress.svg res/* Copyright: 2020, Breeze Icon Theme Developers diff -Nru kongress-1.0/kongressac/calalarmclient.cpp kongress-1.0.1/kongressac/calalarmclient.cpp --- kongress-1.0/kongressac/calalarmclient.cpp 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/kongressac/calalarmclient.cpp 2021-03-08 10:21:05.000000000 +0100 @@ -18,7 +18,7 @@ #include <KLocalizedString> CalAlarmClient::CalAlarmClient(QObject *parent) - : QObject {parent}, m_alarms_model {new AlarmsModel {this}}, m_notification_handler {new NotificationHandler {this}}, m_wakeup_manager {new WakeupManager {this}} + : QObject {parent}, m_notification_handler {new NotificationHandler {this}}, m_wakeup_manager {new WakeupManager {this}} { new KongressacAdaptor {this}; auto dbus = QDBusConnection::sessionBus(); @@ -71,18 +71,18 @@ qDebug() << "\ncheckAlarms:Check:" << checkFrom.toString() << " -" << m_last_checked.toString(); FilterPeriod fPeriod {.from = checkFrom, .to = m_last_checked}; - m_alarms_model->setCalendarFiles(calendarFileList()); - m_alarms_model->setPeriod(fPeriod); - m_notification_handler->setPeriod(fPeriod); + AlarmsModel alarmsModel; + alarmsModel.setCalendarFiles(calendarFileList()); + alarmsModel.setPeriod(fPeriod); - const auto alarms = m_alarms_model->alarms(); + const auto alarms = alarmsModel.alarms(); qDebug() << "checkAlarms:Alarms Found: " << alarms.count(); KConfigGroup notificationsConfig {KSharedConfig::openConfig("kongressrc"), "notifications"}; if (notificationsConfig.readEntry("remindFavorites", true)) { for (const auto &alarm : qAsConst(alarms)) { - m_notification_handler->addActiveNotification(alarm->parentUid(), QString {"%1\n%2"}.arg(alarm->time().toString("hh:mm"), alarm->text())); + m_notification_handler->addActiveNotification(alarm->parentUid(), QString {"%1\n%2"}.arg(alarm->time().toTimeZone( QTimeZone::systemTimeZone()).toString("hh:mm"), alarm->text())); } m_notification_handler->sendNotifications(); } diff -Nru kongress-1.0/kongressac/calalarmclient.h kongress-1.0.1/kongressac/calalarmclient.h --- kongress-1.0/kongressac/calalarmclient.h 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/kongressac/calalarmclient.h 2021-03-08 10:21:05.000000000 +0100 @@ -10,7 +10,6 @@ #include <QTimer> #include <QDateTime> -class AlarmsModel; class NotificationHandler; class WakeupBackend; class WakeupManager; @@ -70,7 +69,6 @@ void saveLastCheckTime(); QStringList calendarFileList() const; - AlarmsModel *m_alarms_model; QDateTime m_last_checked; NotificationHandler *m_notification_handler; WakeupManager *m_wakeup_manager; diff -Nru kongress-1.0/kongressac/notificationhandler.cpp kongress-1.0.1/kongressac/notificationhandler.cpp --- kongress-1.0/kongressac/notificationhandler.cpp 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/kongressac/notificationhandler.cpp 2021-03-08 10:21:05.000000000 +0100 @@ -22,27 +22,15 @@ m_active_notifications[notification->uid()] = notification; } -void NotificationHandler::sendActiveNotifications() + +void NotificationHandler::sendNotifications() { for (const auto &n : qAsConst(m_active_notifications)) { qDebug() << "sendNotifications:\tSending notification for alarm" << n->uid(); n->send(); } -} -void NotificationHandler::sendNotifications() -{ - sendActiveNotifications(); -} - -FilterPeriod NotificationHandler::period() const -{ - return m_period; -} - -void NotificationHandler::setPeriod(const FilterPeriod &checkPeriod) -{ - m_period = checkPeriod; + m_active_notifications.clear(); } QHash<QString, AlarmNotification *> NotificationHandler::activeNotifications() const diff -Nru kongress-1.0/kongressac/notificationhandler.h kongress-1.0.1/kongressac/notificationhandler.h --- kongress-1.0/kongressac/notificationhandler.h 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/kongressac/notificationhandler.h 2021-03-08 10:21:05.000000000 +0100 @@ -33,23 +33,11 @@ void addActiveNotification(const QString &uid, const QString &text); /** - * @return The time period to check for alarms - */ - FilterPeriod period() const; - - /** - * @brief Sets the time period to check for alarms - */ - void setPeriod(const FilterPeriod &checkPeriod); - - /** * @return The list of active notifications. It is the set of notification that should be sent at the next check */ QHash<QString, AlarmNotification *> activeNotifications() const; private: - void sendActiveNotifications(); - QHash<QString, AlarmNotification *> m_active_notifications; FilterPeriod m_period; }; diff -Nru kongress-1.0/org.kde.kongress.appdata.xml kongress-1.0.1/org.kde.kongress.appdata.xml --- kongress-1.0/org.kde.kongress.appdata.xml 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/org.kde.kongress.appdata.xml 2021-03-08 10:21:05.000000000 +0100 @@ -66,6 +66,7 @@ <p xml:lang="en-GB">Kongress is a companion application for conferences made by KDE</p> <p xml:lang="es">Kongress es una aplicación complementaria para conferencias creada por KDE</p> <p xml:lang="fr">Kongress est une application de compagnon pour les conférences, réalisée par KDE.</p> + <p xml:lang="ia">Kongress es un application companion per conferentias facite per KDE</p> <p xml:lang="id">Kongress adalah aplikasi pendamping untuk konferensi yang dibuat oleh KDE</p> <p xml:lang="it">Kongress è un'applicazione di supporto per le conferenze realizzata da KDE</p> <p xml:lang="nl">Kongress is de compagnon-toepassing voor conferenties, gemaakt door KDE</p> @@ -87,6 +88,7 @@ <caption xml:lang="en-GB">Kongress on Mobile</caption> <caption xml:lang="es">Kongress para móviles</caption> <caption xml:lang="fr">Kongress sur périphériques mobiles</caption> + <caption xml:lang="ia">Kongress sur Mobile</caption> <caption xml:lang="id">Kongress di Ponsel</caption> <caption xml:lang="it">Kongress su dispositivo mobile</caption> <caption xml:lang="nl">Kongress op mobiel</caption> @@ -108,6 +110,7 @@ <caption xml:lang="en-GB">Kongress on Desktop</caption> <caption xml:lang="es">Kongress para el escritorio</caption> <caption xml:lang="fr">Kongress sur le bureau</caption> + <caption xml:lang="ia">Kongress sur scriptorio</caption> <caption xml:lang="id">Kongress di Desktop</caption> <caption xml:lang="it">Kongress su desktop</caption> <caption xml:lang="nl">Kongress op bureaublad</caption> @@ -123,6 +126,20 @@ </screenshots> <url type="homepage">https://invent.kde.org/utilities/kongress</url> <releases> + <release version="1.0.1" date="2021-03-08"> + <description> + <p>Kongress bugfix release</p> + <ul> + <li>Fix display of talk time on notifications</li> + <li>Prevent kongressac from crashing</li> + <li>Fix grouping of talks into conference dayss</li> + <li>Fix alarm schedule times</li> + <li>Prevent duplicate conference entries from being displayeds</li> + <li>Do not display generic, multi-day calendar events on the daily schedules</li> + <li>Fix translation congigurations</li> + </ul> + </description> + </release> <release version="1.0" date="2021-01-25"> <description> <p>Kongress first official release</p> diff -Nru kongress-1.0/po/fr/kongressac.po kongress-1.0.1/po/fr/kongressac.po --- kongress-1.0/po/fr/kongressac.po 2021-01-25 16:46:16.000000000 +0100 +++ kongress-1.0.1/po/fr/kongressac.po 2021-03-08 10:21:16.000000000 +0100 @@ -6,7 +6,7 @@ "POT-Creation-Date: 2021-01-07 02:52+0100\n" "PO-Revision-Date: 2021-01-08 17:38+0100\n" "Last-Translator: Xavier Besnard <xavier.besn...@neuf.fr>\n" -"Language-Team: FR\n" +"Language-Team: French <kde-francoph...@kde.org>\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff -Nru kongress-1.0/po/fr/kongress.po kongress-1.0.1/po/fr/kongress.po --- kongress-1.0/po/fr/kongress.po 2021-01-25 16:46:16.000000000 +0100 +++ kongress-1.0.1/po/fr/kongress.po 2021-03-08 10:21:16.000000000 +0100 @@ -6,7 +6,7 @@ "POT-Creation-Date: 2021-01-25 02:45+0100\n" "PO-Revision-Date: 2021-01-13 07:30+0100\n" "Last-Translator: Xavier Besnard <xavier.besn...@neuf.fr>\n" -"Language-Team: FR\n" +"Language-Team: French <kde-francoph...@kde.org>\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff -Nru kongress-1.0/po/ia/kongressac.po kongress-1.0.1/po/ia/kongressac.po --- kongress-1.0/po/ia/kongressac.po 2021-01-25 16:46:23.000000000 +0100 +++ kongress-1.0.1/po/ia/kongressac.po 2021-03-08 10:21:20.000000000 +0100 @@ -29,15 +29,13 @@ #: kongressacmain.cpp:20 kongressacmain.cpp:21 #, kde-format -#| msgid "KDE Conference Alarm Check Daemon" msgid "Kongress Alarm Check Daemon" msgstr "" -"Kongress Alarm Check Daemon (Demon de verifica de alarma de " -"conferentia Kongress)" +"Kongress Alarm Check Daemon (Demon de verifica de alarma de conferentia " +"Kongress)" #: kongressacmain.cpp:23 #, kde-format -#| msgid "(c) 2020 Dimitris Kardarakos" msgid "(c) 2021 Dimitris Kardarakos" msgstr "(c) 2021 Dimitris Kardarakos" diff -Nru kongress-1.0/po/ia/kongress.po kongress-1.0.1/po/ia/kongress.po --- kongress-1.0/po/ia/kongress.po 2021-01-25 16:46:23.000000000 +0100 +++ kongress-1.0.1/po/ia/kongress.po 2021-03-08 10:21:20.000000000 +0100 @@ -44,7 +44,6 @@ #: contents/ui/Conferences.qml:24 #, kde-format -#| msgid "No events found" msgid "No conference found" msgstr "Necun conferentia trovate" @@ -75,13 +74,11 @@ #: contents/ui/FavoritesView.qml:28 #, kde-format -#| msgid "No events found for %1" msgid "No favorite talks found for %1" msgstr "Necun conversationes favorite trovate per %1" #: contents/ui/FavoritesView.qml:28 #, kde-format -#| msgid "No events found" msgid "No favorite talks found" msgstr "Necun conversationes favorite trovate" @@ -185,13 +182,11 @@ #: contents/ui/ScheduleView.qml:28 #, kde-format -#| msgid "No events found for %1" msgid "No talks found for %1" msgstr "Necun conversationes trovate per %1" #: contents/ui/ScheduleView.qml:28 #, kde-format -#| msgid "No events found" msgid "No talks found" msgstr "Necun conversationes trovate " @@ -261,13 +256,11 @@ #: main.cpp:32 #, kde-format -#| msgid "© 2020 KDE Community" msgid "© 2021 KDE Community" msgstr "© 2021 Communitate de KDE" #: main.cpp:35 #, kde-format -#| msgid "Dimitris Kardarakos" msgctxt "@info:credit" msgid "Dimitris Kardarakos" msgstr "Dimitris Kardarakos" diff -Nru kongress-1.0/po/it/kongressac.po kongress-1.0.1/po/it/kongressac.po --- kongress-1.0/po/it/kongressac.po 2021-01-25 16:46:25.000000000 +0100 +++ kongress-1.0.1/po/it/kongressac.po 2021-03-08 10:21:21.000000000 +0100 @@ -1,13 +1,13 @@ # Copyright (C) YEAR This file is copyright: # This file is distributed under the same license as the kongress package. -# Paolo Zamponi <zapa...@email.it>, 2020. +# Paolo Zamponi <zapa...@email.it>, 2020, 2021. # msgid "" msgstr "" "Project-Id-Version: kongress\n" "Report-Msgid-Bugs-To: https://bugs.kde.org\n" "POT-Creation-Date: 2021-01-07 02:52+0100\n" -"PO-Revision-Date: 2020-03-10 10:04+0100\n" +"PO-Revision-Date: 2021-01-10 09:30+0100\n" "Last-Translator: Paolo Zamponi <zapa...@email.it>\n" "Language-Team: Italian <kde-i18n...@kde.org>\n" "Language: it\n" @@ -15,7 +15,7 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Lokalize 19.12.2\n" +"X-Generator: Lokalize 20.12.0\n" #, kde-format msgctxt "NAME OF TRANSLATORS" @@ -28,16 +28,14 @@ msgstr "zapa...@email.it" #: kongressacmain.cpp:20 kongressacmain.cpp:21 -#, fuzzy, kde-format -#| msgid "KDE Conference Alarm Check Daemon" +#, kde-format msgid "Kongress Alarm Check Daemon" -msgstr "Demone per il controllo allarmi di KDE Conference" +msgstr "Demone per il controllo allarmi di Kongress" #: kongressacmain.cpp:23 -#, fuzzy, kde-format -#| msgid "(c) 2020 Dimitris Kardarakos" +#, kde-format msgid "(c) 2021 Dimitris Kardarakos" -msgstr "(c) 2020 Dimitris Kardarakos" +msgstr "(c) 2021 Dimitris Kardarakos" #: kongressacmain.cpp:25 #, kde-format diff -Nru kongress-1.0/po/nn/kongress.po kongress-1.0.1/po/nn/kongress.po --- kongress-1.0/po/nn/kongress.po 2021-01-25 16:46:34.000000000 +0100 +++ kongress-1.0.1/po/nn/kongress.po 2021-03-08 10:21:27.000000000 +0100 @@ -5,7 +5,7 @@ msgstr "" "Project-Id-Version: kongress\n" "Report-Msgid-Bugs-To: https://bugs.kde.org\n" -"POT-Creation-Date: 2021-01-07 02:52+0100\n" +"POT-Creation-Date: 2021-01-25 02:45+0100\n" "PO-Revision-Date: 2021-01-08 21:32+0100\n" "Last-Translator: Karl Ove Hufthammer <k...@huftis.org>\n" "Language-Team: Norwegian Nynorsk <l10n...@lister.huftis.org>\n" @@ -247,28 +247,28 @@ msgid "Talk added to favorites" msgstr "Presentasjonen er lagd til som favoritt" -#: main.cpp:31 +#: main.cpp:32 #, kde-format msgid "Kongress" msgstr "Kongress" -#: main.cpp:31 +#: main.cpp:32 #, kde-format msgid "KDE Conference Companion" msgstr "Konferanseassistent frå KDE" -#: main.cpp:31 +#: main.cpp:32 #, kde-format msgid "© 2021 KDE Community" msgstr "© 2021 KDE-fellesskapet" -#: main.cpp:34 +#: main.cpp:35 #, kde-format msgctxt "@info:credit" msgid "Dimitris Kardarakos" msgstr "Dimitris Kardarakos" -#: main.cpp:34 +#: main.cpp:35 #, kde-format msgctxt "@info:credit" msgid "Maintainer and Developer" diff -Nru kongress-1.0/src/CMakeLists.txt kongress-1.0.1/src/CMakeLists.txt --- kongress-1.0/src/CMakeLists.txt 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/CMakeLists.txt 2021-03-08 10:21:05.000000000 +0100 @@ -21,7 +21,10 @@ ) add_executable(kongress ${kongress_SRCS} ${RESOURCES}) -target_link_libraries(kongress PRIVATE Qt5::Core Qt5::Qml Qt5::Quick Qt5::Test Qt5::Svg Qt5::QuickControls2 Qt5::Network Qt5::DBus KF5::ConfigCore KF5::I18n KF5::CalendarCore KF5::CoreAddons) +target_link_libraries(kongress PRIVATE Qt5::Core Qt5::Qml Qt5::Quick Qt5::Svg Qt5::QuickControls2 Qt5::Network Qt5::DBus KF5::ConfigCore KF5::I18n KF5::CalendarCore KF5::CoreAddons) +if (BUILD_TESTING) + target_link_libraries(kongress PRIVATE Qt5::Test) +endif() if (ANDROID) target_link_libraries(kongress PRIVATE diff -Nru kongress-1.0/src/conferencecontroller.cpp kongress-1.0.1/src/conferencecontroller.cpp --- kongress-1.0/src/conferencecontroller.cpp 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/conferencecontroller.cpp 2021-03-08 10:21:05.000000000 +0100 @@ -64,7 +64,6 @@ m_conferences_file = new QFile {dir + fileName}; const QUrl conferencesUrl {QStringLiteral("https://autoconfig.kde.org/kongress") + fileName}; - QNetworkRequest request {conferencesUrl}; auto nm = new QNetworkAccessManager {this}; nm->get(request); @@ -115,9 +114,17 @@ void ConferenceController::loadConference(const QJsonObject &jsonObj) { - auto conference = new Conference {this}; + auto conferenceId = jsonObj["id"].toString(); + + for (const auto cf : qAsConst(m_conferences)) { + if (cf->id() == conferenceId) { + qDebug() << "Conference already loaded"; + return; + } + } - conference->setId(jsonObj["id"].toString()); + auto conference = new Conference {this}; + conference->setId(conferenceId); conference->setName(jsonObj["name"].toString()); conference->setDescription(jsonObj["description"].toString()); conference->setIcalUrl(jsonObj["icalUrl"].toString()); diff -Nru kongress-1.0/src/contents/ui/EventInfo.qml kongress-1.0.1/src/contents/ui/EventInfo.qml --- kongress-1.0/src/contents/ui/EventInfo.qml 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/contents/ui/EventInfo.qml 2021-03-08 10:21:05.000000000 +0100 @@ -57,8 +57,11 @@ id: cardDelegate visible: root.event - banner.title: root.event ? event.summary : "" - banner.titleLevel: 3 + banner { + title: root.event ? event.summary : "" + titleLevel: 3 + titleWrapMode: Text.WordWrap + } contentItem: Column { spacing: Kirigami.Units.largeSpacing diff -Nru kongress-1.0/src/contents/ui/ScheduleView.qml kongress-1.0.1/src/contents/ui/ScheduleView.qml --- kongress-1.0/src/contents/ui/ScheduleView.qml 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/contents/ui/ScheduleView.qml 2021-03-08 10:21:05.000000000 +0100 @@ -53,7 +53,7 @@ model: eventsModel section { - property: "eventDt" + property: Kongress.SettingsController.displayInLocalTimezone ? "shiftedEventDtLocal" : "shiftedEventDt" criteria: ViewSection.FullString delegate: Kirigami.ListSectionHeader { label: section @@ -103,5 +103,4 @@ calendar: root.roCalendar eventCategory: root.category } - } diff -Nru kongress-1.0/src/eventcontroller.cpp kongress-1.0.1/src/eventcontroller.cpp --- kongress-1.0/src/eventcontroller.cpp 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/eventcontroller.cpp 2021-03-08 10:21:05.000000000 +0100 @@ -88,7 +88,7 @@ event->clearAlarms(); auto newAlarm = event->newAlarm(); - newAlarm->setStartOffset(KCalendarCore::Duration(-60 & m_settings_controller->remindBeforeStart(), KCalendarCore::Duration::Type::Seconds)); + newAlarm->setStartOffset(KCalendarCore::Duration(-60 * m_settings_controller->remindBeforeStart(), KCalendarCore::Duration::Type::Seconds)); newAlarm->setType(KCalendarCore::Alarm::Type::Display); newAlarm->setEnabled(true); auto alarmText = (event->summary()).isEmpty() ? event->description() : event->summary(); diff -Nru kongress-1.0/src/eventmodel.cpp kongress-1.0.1/src/eventmodel.cpp --- kongress-1.0/src/eventmodel.cpp 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/eventmodel.cpp 2021-03-08 10:21:05.000000000 +0100 @@ -9,13 +9,16 @@ #include <KCalendarCore/CalFilter> #include <KCalendarCore/MemoryCalendar> #include <KLocalizedString> +#include <KCalendarCore/Sorting> +#include "settingscontroller.h" EventModel::EventModel(QObject *parent) : QAbstractListModel {parent}, m_events {KCalendarCore::Event::List {}}, m_filterdt {QDate {}}, m_category {QString {}}, - m_local_calendar {nullptr} + m_local_calendar {nullptr}, + m_settings_controller {new SettingsController} { connect(this, &EventModel::filterdtChanged, this, &EventModel::loadEvents); connect(this, &EventModel::calendarChanged, this, &EventModel::loadEvents); @@ -54,6 +57,8 @@ { Uid, "uid" }, { EventStartDt, "eventStartDt" }, { EventDt, "eventDt" }, + { ShiftedEventDt, "shiftedEventDt" }, + { ShiftedEventDtLocal, "shiftedEventDtLocal" }, { ScheduleStartDt, "scheduleStartDt" }, { AllDay, "allday" }, { Description, "description" }, @@ -103,6 +108,15 @@ return startDtTime; case EventDt: return startDtTime.toString("dddd d MMMM"); + case ShiftedEventDt: { + startDtTime.setTimeZone(calendarTz); + return startDtTime.toString("dddd d MMMM"); + } + case ShiftedEventDtLocal: { + startDtTime.setTimeZone(calendarTz); + startDtTime = startDtTime.toTimeZone(QTimeZone::systemTimeZone()); + return startDtTime.toString("dddd d MMMM"); + } case ScheduleStartDt: { startDtTime.setTimeZone(calendarTz); return startDtTime; @@ -220,7 +234,9 @@ m_events.clear(); if (m_local_calendar != nullptr && m_local_calendar->memorycalendar() != nullptr && m_filterdt.isValid()) { - m_events = m_local_calendar->memorycalendar()->rawEventsForDate(m_filterdt, m_local_calendar->memorycalendar()->timeZone(), KCalendarCore::EventSortStartDate, KCalendarCore::SortDirectionAscending); + auto filterTz = m_settings_controller->displayInLocalTimezone() ? QTimeZone::systemTimeZone() : m_local_calendar->memorycalendar()->timeZone(); + auto dayEvents = m_local_calendar->memorycalendar()->rawEvents(m_filterdt, m_filterdt, filterTz, true); + m_events = KCalendarCore::Calendar::sortEvents(dayEvents, KCalendarCore::EventSortField::EventSortStartDate, KCalendarCore::SortDirection::SortDirectionAscending); } if (m_local_calendar != nullptr && m_local_calendar->memorycalendar() != nullptr && m_filterdt.isNull()) { diff -Nru kongress-1.0/src/eventmodel.h kongress-1.0.1/src/eventmodel.h --- kongress-1.0/src/eventmodel.h 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/eventmodel.h 2021-03-08 10:21:05.000000000 +0100 @@ -11,6 +11,7 @@ #include <KCalendarCore/Event> class LocalCalendar; +class SettingsController; class EventModel : public QAbstractListModel { @@ -29,6 +30,8 @@ ScheduleStartDt, EventStartDt, EventDt, + ShiftedEventDt, + ShiftedEventDtLocal, AllDay, Description, Summary, @@ -108,6 +111,7 @@ QDate m_filterdt; QString m_category; LocalCalendar *m_local_calendar; + SettingsController *m_settings_controller; }; #endif //EVENTMODEL_H diff -Nru kongress-1.0/src/main.cpp kongress-1.0.1/src/main.cpp --- kongress-1.0/src/main.cpp 2021-01-25 16:45:58.000000000 +0100 +++ kongress-1.0.1/src/main.cpp 2021-03-08 10:21:05.000000000 +0100 @@ -29,7 +29,7 @@ QApplication app {argc, argv}; KLocalizedString::setApplicationDomain("kongress"); - KAboutData about {QStringLiteral("kongress"), i18n("Kongress"), QStringLiteral("1.0"), i18n("KDE Conference Companion"), KAboutLicense::GPL_V3, i18n("© 2021 KDE Community")}; + KAboutData about {QStringLiteral("kongress"), i18n("Kongress"), QStringLiteral("1.0.1"), i18n("KDE Conference Companion"), KAboutLicense::GPL_V3, i18n("© 2021 KDE Community")}; about.setOrganizationDomain(QByteArray {"kde.org"}); about.setProductName(QByteArray {"kongress"}); about.addAuthor(i18nc("@info:credit", "Dimitris Kardarakos"), i18nc("@info:credit", "Maintainer and Developer"), QStringLiteral("dimk...@posteo.net"));