Fix page variable increment/decrement with a controller from 5 (TabSpec::rows) to 1

This commit is contained in:
LukieD4 2026-03-06 15:56:38 +00:00
parent de46641cda
commit 8489a06edf

View file

@ -1099,42 +1099,42 @@ void IUIScene_CreativeMenu::handleAdditionalKeyPress(int iAction)
break; break;
case ACTION_MENU_OTHER_STICK_DOWN: case ACTION_MENU_OTHER_STICK_DOWN:
{ {
int pageStep = TabSpec::rows; int pageStep = 1; // override: use 1 so thumbstick increment/decrement behaves alike the mouse wheel implementation.
#ifdef _WINDOWS64 #ifdef _WINDOWS64
if (g_KBMInput.WasMouseWheelConsumed()) if (g_KBMInput.WasMouseWheelConsumed())
{ {
pageStep = 1; pageStep = 1;
} }
#endif #endif
m_tabPage[m_curTab] += pageStep; m_tabPage[m_curTab] += pageStep;
if(m_tabPage[m_curTab] >= specs[m_curTab]->getPageCount()) if(m_tabPage[m_curTab] >= specs[m_curTab]->getPageCount())
{ {
m_tabPage[m_curTab] = specs[m_curTab]->getPageCount() - 1; m_tabPage[m_curTab] = specs[m_curTab]->getPageCount() - 1;
} }
else else
{ {
switchTab(m_curTab); switchTab(m_curTab);
} }
} }
break; break;
case ACTION_MENU_OTHER_STICK_UP: case ACTION_MENU_OTHER_STICK_UP:
{ {
int pageStep = TabSpec::rows; int pageStep = 1; // override: use 1 so thumbstick increment/decrement behaves alike the mouse wheel implementation.
#ifdef _WINDOWS64 #ifdef _WINDOWS64
if (g_KBMInput.WasMouseWheelConsumed()) if (g_KBMInput.WasMouseWheelConsumed())
{ {
pageStep = 1; pageStep = 1;
} }
#endif #endif
m_tabPage[m_curTab] -= pageStep; m_tabPage[m_curTab] -= pageStep;
if(m_tabPage[m_curTab] < 0) if(m_tabPage[m_curTab] < 0)
{ {
m_tabPage[m_curTab] = 0; m_tabPage[m_curTab] = 0;
} }
else else
{ {
switchTab(m_curTab); switchTab(m_curTab);
} }
} }
break; break;
} }