-rw-r--r-- | korganizer/calendarview.cpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 31e103d..8965d3b 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -1980,3 +1980,2 @@ void CalendarView::syncExternal( int mode ) mGlobalSyncMode = SYNC_MODE_EXTERNAL; - qApp->processEvents(); @@ -5036,3 +5035,3 @@ void CalendarView::keyPressEvent ( QKeyEvent *e) -bool CalendarView::sync(KSyncManager* manager, QString filename, int mode) +bool CalendarView::sync(KSyncManager* manager, QString filename, int mode,QString resource) { @@ -5046,3 +5045,17 @@ bool CalendarView::sync(KSyncManager* manager, QString filename, int mode) mCurrentSyncName = mSyncManager->getCurrentSyncName(); - return syncCalendar( filename, mode ); + if ( !resource.isEmpty() ) { + int exclusiveSyncResource = KOPrefs::instance()->getFuzzyCalendarID( resource ); + qDebug( "KO: Sync request for resource: %s", resource.latin1() ); + + if ( !exclusiveSyncResource ) { + qDebug( "KO: Requested sync resource not found: %s", resource.latin1() ); + return false; + } + mCalendar->setDefaultCalendar( exclusiveSyncResource ); + mCalendar->setDefaultCalendarEnabledOnly(); + } + bool result = syncCalendar( filename, mode ); + if ( !resource.isEmpty() ) + restoreCalendarSettings(); + return result; } |