diff -r 2f34d5167611 -r fcece45ef507 src/gui/graphicsview/qgraphicsproxywidget.cpp --- a/src/gui/graphicsview/qgraphicsproxywidget.cpp Fri Apr 16 15:50:13 2010 +0300 +++ b/src/gui/graphicsview/qgraphicsproxywidget.cpp Mon May 03 13:17:34 2010 +0300 @@ -1315,6 +1315,8 @@ return; } + d->proxyIsGivingFocus = true; + switch (event->reason()) { case Qt::TabFocusReason: { if (QWidget *focusChild = d->findFocusChild(0, true)) @@ -1328,10 +1330,11 @@ default: if (d->widget && d->widget->focusWidget()) { d->widget->focusWidget()->setFocus(event->reason()); - return; } break; } + + d->proxyIsGivingFocus = false; } /*!