Only scroll QMenu when there is a valid active action
When changing the active action via QMenu::setActiveAction the menu will scroll to the active action, but we were scrolling the menu also when the active action was null, resulting in the menu scrolling back to the top. We fix this by guarding the call to scrollMenu. Fixes: QTBUG-92096 Change-Id: I998f99ddacec32640834d59a907d569fdda458f0 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit 94e03e506a0e953f72c21c4ca827174a3d1f0d73) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
49059a4007
commit
22b9e8f889
@ -2228,7 +2228,7 @@ void QMenu::setActiveAction(QAction *act)
|
||||
{
|
||||
Q_D(QMenu);
|
||||
d->setCurrentAction(act, 0);
|
||||
if (d->scroll)
|
||||
if (d->scroll && act)
|
||||
d->scrollMenu(act, QMenuPrivate::QMenuScroller::ScrollCenter);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user