diff -r 730c025d4b77 -r f378acbc9cfb src/hbcore/gui/hbcontentwidget.cpp --- a/src/hbcore/gui/hbcontentwidget.cpp Thu Jul 15 14:03:49 2010 +0100 +++ b/src/hbcore/gui/hbcontentwidget.cpp Thu Jul 22 16:36:53 2010 +0100 @@ -42,28 +42,29 @@ \internal */ -HbContentWidget::HbContentWidget(HbMainWindow *mainWindow,QGraphicsItem *parent /*= 0*/): +HbContentWidget::HbContentWidget(HbMainWindow *mainWindow, QGraphicsItem *parent /*= 0*/): HbStackedWidget(parent), mViewSwitchRunning(false), mTargetView(0), mHidingView(0), mMainWindow(mainWindow) { + // Do not defer this, it causes invalidation and updating. + setFocusPolicy(Qt::StrongFocus); } QSizeF HbContentWidget::sizeHint(Qt::SizeHint which, const QSizeF &constraint) const { Q_UNUSED(constraint); - QSizeF size; + QSizeF size; switch (which) { case Qt::MinimumSize: size = QSizeF(0, 0); break; - - case Qt::PreferredSize: - { + + case Qt::PreferredSize: { HbDeviceProfile profile(HbDeviceProfile::profile(this)); size = profile.logicalSize(); if (!size.isValid()) { @@ -81,11 +82,6 @@ return size; } -void HbContentWidget::delayedConstruction() -{ - setFocusPolicy(Qt::StrongFocus); -} - void HbContentWidget::setTargetView(HbView *view) { mTargetView = view; @@ -200,7 +196,7 @@ // 2nd param (hideOld): We still want to see the old view (normally setCurrentWidget would hide it). // 3rd param (showNew): The new view is not yet needed (the effect will take care of making it visible). setCurrentWidget(mTargetView, false, false); - + mHidingView = viewToHide; mViewSwitchFlags = flags; @@ -208,7 +204,7 @@ if (effectTarget) { mMainWindow->setInteractive(false); // disable input while the effects are running QString event = getEffectEvent("hide", flags, viewToHide, mTargetView); - HbEffectInternal::EffectFlags effectFlags = + HbEffectInternal::EffectFlags effectFlags = HbEffectInternal::ClearEffectWhenFinished // the effect must not be persistent | HbEffectInternal::HideRegItemBeforeClearingEffect; // to prevent unlikely, but possible flicker HbEffectInternal::start(viewToHide, effectTarget, effectFlags,