[pim/korganizer] src: Kontact plugins - use consisent, short date strings among the plugins

Allen Winter <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git commit d9ed1b810dc22b13e9ed767f3d65f4ecbaa6e23a by Allen Winter.
Committed on 20/07/2026 at 11:49.
Pushed by winterz into branch 'master'.

Kontact plugins - use consisent, short date strings among the plugins

some where using longformat; some were using shortformat

M  +13   -7    src/kontactplugin/korganizer/summaryeventinfo.cpp
M  +10   -2    src/kontactplugin/specialdates/sdsummarywidget.cpp
M  +1    -0    src/org.kde.korganizer.appdata.xml

https://invent.kde.org/pim/korganizer/-/commit/d9ed1b810dc22b13e9ed767f3d65f4ecbaa6e23a

diff --git a/src/kontactplugin/korganizer/summaryeventinfo.cpp b/src/kontactplugin/korganizer/summaryeventinfo.cpp
index a4f45dddf..84a8b22f5 100644
--- a/src/kontactplugin/korganizer/summaryeventinfo.cpp
+++ b/src/kontactplugin/korganizer/summaryeventinfo.cpp
@@ -130,6 +130,7 @@ SummaryEventInfo::List SummaryEventInfo::eventsForRange(QDate start, QDate end,
         summaryEvent->ev = ev;
 
         // Start date label
+        const auto locale = QLocale::system();
         QString str;
         const QDate sD = occurrenceStartDate;
         if (currentDate >= sD) {
@@ -138,15 +139,16 @@ SummaryEventInfo::List SummaryEventInfo::eventsForRange(QDate start, QDate end,
         } else if (sD == currentDate.addDays(1)) {
             str = i18nc("the appointment is tomorrow", "Tomorrow");
         } else {
-            const auto locale = QLocale::system();
             for (int i = 3; i < 8; ++i) {
-                if (sD < currentDate.addDays(i)) {
-                    str = locale.dayName(sD.dayOfWeek(), QLocale::LongFormat);
-                    break;
+                if (currentDate.daysTo(sD) < 6) {
+                    str = i18nc("1. weekday", "%1", locale.dayName(sD.dayOfWeek(), QLocale::LongFormat));
+                } else {
+                    str = i18nc("1. weekday, 2. date", "%1 %2", locale.dayName(sD.dayOfWeek(), QLocale::LongFormat), locale.toString(sD, QLocale::ShortFormat));
                 }
+                break;
             }
             if (str.isEmpty()) {
-                str = locale.toString(sD, QLocale::LongFormat);
+                str = i18nc("1. weekday, 2. date", "%1 %2", locale.dayName(sD.dayOfWeek(), QLocale::LongFormat), locale.toString(sD, QLocale::ShortFormat));
             }
         }
         summaryEvent->startDate = str;
@@ -159,8 +161,12 @@ SummaryEventInfo::List SummaryEventInfo::eventsForRange(QDate start, QDate end,
         // Print the date span for multiday, floating events, for the
         // first day of the event only.
         if (ev->isMultiDay() && ev->allDay() && firstDayOfMultiday && span > 1) {
-            str = QLocale().toString(ev->dtStart().toLocalTime().date(), QLocale::LongFormat) + QLatin1StringView(" -\n ")
-                + QLocale().toString(ev->dtEnd().toLocalTime().date(), QLocale::LongFormat);
+            const QDate dtStart = ev->dtStart().toLocalTime().date();
+            const QDate dtEnd = ev->dtEnd().toLocalTime().date();
+            str =
+                i18nc("1. weekday, 2. date", "%1 %2", locale.dayName(dtStart.dayOfWeek(), QLocale::LongFormat), locale.toString(dtStart, QLocale::ShortFormat))
+                + QLatin1StringView(" -\n ")
+                + i18nc("1. weekday, 2. date", "%1 %2", locale.dayName(dtEnd.dayOfWeek(), QLocale::LongFormat), locale.toString(dtEnd, QLocale::ShortFormat));
         }
         summaryEvent->dateSpan = str;
 
diff --git a/src/kontactplugin/specialdates/sdsummarywidget.cpp b/src/kontactplugin/specialdates/sdsummarywidget.cpp
index 42230552b..ab50f5a85 100644
--- a/src/kontactplugin/specialdates/sdsummarywidget.cpp
+++ b/src/kontactplugin/specialdates/sdsummarywidget.cpp
@@ -462,12 +462,20 @@ void SDSummaryWidget::createLabels()
                 const auto locale = QLocale::system();
                 for (int i = 3; i < 8; ++i) {
                     if ((*addrIt).daysTo < i) {
-                        datestr = locale.dayName(sD.dayOfWeek(), QLocale::LongFormat);
+                        if ((*addrIt).daysTo < 6) {
+                            datestr = i18nc("1. weekday", "%1", locale.dayName(sD.dayOfWeek(), QLocale::LongFormat));
+                        } else {
+                            datestr = i18nc("1. weekday, 2. date",
+                                            "%1 %2",
+                                            locale.dayName(sD.dayOfWeek(), QLocale::LongFormat),
+                                            locale.toString(sD, QLocale::ShortFormat));
+                        }
                         break;
                     }
                 }
                 if (datestr.isEmpty()) {
-                    datestr = locale.toString(sD, QLocale::ShortFormat);
+                    datestr =
+                        i18nc("1. weekday, 2. date", "%1 %2", locale.dayName(sD.dayOfWeek(), QLocale::LongFormat), locale.toString(sD, QLocale::ShortFormat));
                 }
             }
             // Print the date span for multiday, floating events, for the
diff --git a/src/org.kde.korganizer.appdata.xml b/src/org.kde.korganizer.appdata.xml
index ea11ed98b..91fca22cf 100644
--- a/src/org.kde.korganizer.appdata.xml
+++ b/src/org.kde.korganizer.appdata.xml
@@ -526,6 +526,7 @@
           <li xml:lang="sv">Kontact-översikt: Väntande uppgifter har förbättrad rutnätsjustering och datumsträngar</li>
           <li xml:lang="tr">Kontak özet: Bekleyen yapılacakların tarih dizileri ve ızgara hizalaması iyileştirildi.</li>
           <li xml:lang="uk">Резюме Kontact: удосконалено вирівнювання у таблиці та рядки дат для завдань у черзі</li>
+          <li>Kontact summary: Consistent date string formats</li>
         </ul>
       </description>
     </release>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.