Hello! I am trying to understand how KCalCore in MeeGo is related to the corresponding code in KDE PIM. Because it involves two different projects, I am cross-posting; beware that answers to meego-dev will bounce unless subscribed (sorry for that).
There have been various issues in MeeGo with iCalendar 2.0 handling, which surprised me because I thought that KDE had already solved these issues. After digging deeper, it seems that some of these problems were introduced when adapting KCalCore to MeeGo. For example, one bug fix (NB#196197, quoted below) consists of removing code that was only used in MeeGo. On the other hand, another patch introduces such a define (NB#6050). Alvaro, Pertti, shouldn't KCalCore be independent of MeeGo and (ignoring short-term bug fixes which are not yet upstream) identical to the version in KDE? Why are these defines necessary? Question to KDE: which KDE apps use KCalCore? Have they been adapted to the API changes introduced last year? In other words, is KCalCore actively used in KDE? $ git log -n 1 -p 6f6a2d53fad00ca00dce3d456145258b9fa43d3e commit 6f6a2d53fad00ca00dce3d456145258b9fa43d3e Author: Pertti Luukko <[email protected]> Date: Wed Oct 6 11:33:06 2010 +0300 Fixes:NB#196197 - Task shown one day later in device after sync with N900 diff --git a/src/vcalformat.cpp b/src/vcalformat.cpp index e89aed0..1492b82 100644 --- a/src/vcalformat.cpp +++ b/src/vcalformat.cpp @@ -978,14 +978,6 @@ Todo::Ptr VCalFormat::VTodoToEvent( VObject *vtodo ) anEvent->setHasStartDate( false ); } -#if defined(KCALCORE_FOR_MEEGO) - if (anEvent->allDay()) { - if ( anEvent->dtDue() == anEvent->dtStart() ) { - anEvent->setDtDue( anEvent->dtDue().addDays( 1 ) ); - } - } -#endif - // alarm stuff if ( ( vo = isAPropertyOf( vtodo, VCDAlarmProp ) ) ) { Alarm::Ptr alarm; $ git log -n 1 -p 6620d44b42a628ed1da54b3e2323a311ab3d9dc1 commit 6620d44b42a628ed1da54b3e2323a311ab3d9dc1 Author: Pertti Luukko <[email protected]> Date: Tue Feb 1 09:20:52 2011 +0200 Fixes: NB#6050 - importing/exporting iCalendar 2.0: all-day event looses DTEND and VALUE=DATE diff --git a/src/icalformat_p.cpp b/src/icalformat_p.cpp index 6721077..e5ee5a0 100644 --- a/src/icalformat_p.cpp +++ b/src/icalformat_p.cpp @@ -1153,7 +1153,12 @@ Event::Ptr ICalFormatImpl::readEvent( icalcomponent *vevent, ICalTimeZones *tzli KDateTime kdt = readICalDateTimeProperty( p, tzlist ); if ( kdt.isDateOnly() ) { // End date is non-inclusive - QDate endDate = kdt.date().addDays( -1 ); + QDate endDate; +#if !defined(KCALCORE_FOR_MEEGO) + endDate = kdt.date().addDays( -1 ); +#else + endDate = kdt.date(); +#endif if ( d->mCompat ) { d->mCompat->fixFloatingEnd( endDate ); } -- Best Regards, Patrick Ohly The content of this message is my personal opinion only and although I am an employee of Intel, the statements I make here in no way represent Intel's position on the issue, nor am I authorized to speak on behalf of Intel on this matter. _______________________________________________ MeeGo-dev mailing list [email protected] http://lists.meego.com/listinfo/meego-dev http://wiki.meego.com/Mailing_list_guidelines
