fix scrolling when selecting item by key

This commit is contained in:
Alexander Kromm 2022-06-02 23:24:16 +07:00 committed by Christoph Oelckers
parent 15a5554f8d
commit ea007f56f2

View file

@ -219,9 +219,10 @@ class OptionMenu : Menu
} }
} }
if (mDesc.mSelectedItem <= mDesc.mScrollTop + mDesc.mScrollPos if (mDesc.mSelectedItem <= mDesc.mScrollTop + mDesc.mScrollPos
|| mDesc.mSelectedItem >= VisBottom) || mDesc.mSelectedItem > VisBottom)
{ {
mDesc.mScrollPos = MAX(mDesc.mSelectedItem - mDesc.mScrollTop - 1, 0); int pagesize = VisBottom - mDesc.mScrollPos - mDesc.mScrollTop;
mDesc.mScrollPos = clamp(mDesc.mSelectedItem - mDesc.mScrollTop - 1, 0, mDesc.mItems.size() - pagesize - 1);
} }
} }
return Super.OnUIEvent(ev); return Super.OnUIEvent(ev);