summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/datenavigatorcontainer.cpp36
1 files changed, 23 insertions, 13 deletions
diff --git a/korganizer/datenavigatorcontainer.cpp b/korganizer/datenavigatorcontainer.cpp
index f6f62a4..92abae6 100644
--- a/korganizer/datenavigatorcontainer.cpp
+++ b/korganizer/datenavigatorcontainer.cpp
@@ -164,7 +164,7 @@ void DateNavigatorContainer::checkUpdateDayMatrixDates()
164 //return; 164 //return;
165 if ( width() < 3 || height() < 3 ) 165 if ( width() < 3 || height() < 3 )
166 return; 166 return;
167 static int lastWid = 0; 167 static int lastWid = 0;
168 static int lastHei = 0; 168 static int lastHei = 0;
169 if ( lastWid == width() && height() == lastHei ) { 169 if ( lastWid == width() && height() == lastHei ) {
170 qDebug("KODNC: No layout computing needed. "); 170 qDebug("KODNC: No layout computing needed. ");
@@ -205,8 +205,14 @@ void DateNavigatorContainer::checkUpdateDayMatrixDates()
205 verticalCount = 1; 205 verticalCount = 1;
206 fontchange = true; 206 fontchange = true;
207 count = horizontalCount * verticalCount; 207 count = horizontalCount * verticalCount;
208 } 208 } else {
209 209 if ( mNavigatorView->fontChanged() ) {
210 fontchange = true;
211 fo = KOPrefs::instance()->mDateNavigatorFont;
212 mNavigatorView->changeFont( fo );
213 mNavigatorView->unsetFontChanged();
214 }
215 }
210 mLastDisplayedDN = horizontalCount*verticalCount-1; 216 mLastDisplayedDN = horizontalCount*verticalCount-1;
211 while ( count > ( mExtraViews.count() + 1 ) ) { 217 while ( count > ( mExtraViews.count() + 1 ) ) {
212 KDateNavigator *n = new KDateNavigator( this ); 218 KDateNavigator *n = new KDateNavigator( this );
@@ -218,21 +224,25 @@ void DateNavigatorContainer::checkUpdateDayMatrixDates()
218 } 224 }
219 225
220 setBaseDates(); 226 setBaseDates();
227 if ( fontchange ) {
228 //mNavigatorView->changeFont( fo );
229 uint i;
230 for( i = 0; i < mExtraViews.count(); ++i ) {
231 KDateNavigator *view = mExtraViews.at( i );
232 view->changeFont( fo );
233 }
234 }
221 mHorizontalCount = horizontalCount; 235 mHorizontalCount = horizontalCount;
222 mVerticalCount = verticalCount; 236 mVerticalCount = verticalCount;
223 237
224 } 238 }
225 if ( !fontchange ) { 239 if ( mNavigatorView->fontChanged() && ! fontchange ) {
226 if ( mNavigatorView->fontChanged() ) { 240 qDebug("KDNC: Resetting all fonts ");
227 fontchange = true; 241 fo = KOPrefs::instance()->mDateNavigatorFont;
228 fo = KOPrefs::instance()->mDateNavigatorFont; 242 mNavigatorView->changeFont( fo );
229 mNavigatorView->changeFont( fo ); 243 mNavigatorView->unsetFontChanged();
230 mNavigatorView->unsetFontChanged();
231 }
232 }
233 if ( fontchange ) {
234 uint i; 244 uint i;
235 for( i = 0; i < mLastDisplayedDN; ++i ) { 245 for( i = 0; i < mExtraViews.count(); ++i ) {
236 KDateNavigator *view = mExtraViews.at( i ); 246 KDateNavigator *view = mExtraViews.at( i );
237 view->changeFont( fo ); 247 view->changeFont( fo );
238 } 248 }