-rw-r--r-- | korganizer/calendarview.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index a10e93c..72221fd 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp | |||
@@ -675,15 +675,21 @@ void CalendarView::scrollBarValue(int val ) | |||
675 | if ( block ) return; | 675 | if ( block ) return; |
676 | block = true; | 676 | block = true; |
677 | val = val/mDateScrollBar->lineStep ()*mDateScrollBar->lineStep(); | ||
678 | //qDebug("VAL %d ",val ); | ||
679 | int count = mNavigator->selectedDates().count(); | 677 | int count = mNavigator->selectedDates().count(); |
680 | int year = mNavigator->selectedDates().first().year(); | ||
681 | int day = mNavigator->selectedDates().first().dayOfYear(); | 678 | int day = mNavigator->selectedDates().first().dayOfYear(); |
682 | if ( val == day -1 ) { | 679 | int stepdays = val; |
680 | if ( mDateScrollBar->lineStep () <= count ) { | ||
681 | val = val/mDateScrollBar->lineStep ()*mDateScrollBar->lineStep(); | ||
682 | //qDebug("VAL %d ",val ); | ||
683 | stepdays = (val-day)/mDateScrollBar->lineStep ()*mDateScrollBar->lineStep(); | ||
684 | stepdays = day-1+stepdays; | ||
685 | if ( stepdays < 0 ) stepdays = 0; | ||
686 | } | ||
687 | if ( stepdays == day -1 ) { | ||
683 | block = false; | 688 | block = false; |
684 | return; | 689 | return; |
685 | } | 690 | } |
691 | int year = mNavigator->selectedDates().first().year(); | ||
686 | QDate d ( year,1,1 ); | 692 | QDate d ( year,1,1 ); |
687 | mNavigator->selectDates( d.addDays( val ), count ); | 693 | mNavigator->selectDates( d.addDays( stepdays) , count ); |
688 | block = false; | 694 | block = false; |
689 | #endif | 695 | #endif |