1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-12-04 20:34:33 +00:00

Merge branch 'spellviewcursor' into 'master'

Hide the cursor in spell lists when controller tooltips are on (#8770)

Closes #8770

See merge request OpenMW/openmw!4979
This commit is contained in:
Alexei Kotov 2025-12-02 06:39:20 +03:00
commit 2b5d7c9d7d
3 changed files with 12 additions and 2 deletions

View file

@ -240,6 +240,7 @@ namespace MWGui
else if (arg.button == SDL_CONTROLLER_BUTTON_B)
{
onCancelButtonClicked(mCancelButton);
return true;
}
else if (arg.button == SDL_CONTROLLER_BUTTON_RIGHTSTICK)
{
@ -271,6 +272,8 @@ namespace MWGui
else
return true;
winMgr->setCursorVisible(!winMgr->getControllerTooltipVisible());
if (mControllerFocus < mSpellButtons.size())
{
// Scroll the list to keep the active item in view

View file

@ -847,10 +847,12 @@ namespace MWGui
mAvailableFocus = 0;
mEffectFocus = 0;
mRightColumn = false;
if (mAvailableButtons.size() > 0)
if (!mAvailableButtons.empty())
{
MWBase::WindowManager& winMgr = *MWBase::Environment::get().getWindowManager();
winMgr.setCursorVisible(!winMgr.getControllerTooltipVisible());
mAvailableButtons[0]->setStateSelected(true);
if (MWBase::Environment::get().getWindowManager()->getControllerTooltipVisible())
if (winMgr.getControllerTooltipVisible())
MWBase::Environment::get().getInputManager()->warpMouseToWidget(mAvailableButtons[0]);
}
}
@ -1117,6 +1119,8 @@ namespace MWGui
else
return true;
winMgr->setCursorVisible(!winMgr->getControllerTooltipVisible());
// Scroll the list to keep the active item in view
if (mAvailableFocus <= 5)
mAvailableEffectsList->setViewOffset(0);

View file

@ -417,6 +417,9 @@ namespace MWGui
void SpellView::updateControllerFocus(size_t prevFocus, size_t newFocus)
{
MWBase::Environment::get().getWindowManager()->setCursorVisible(
!MWBase::Environment::get().getWindowManager()->getControllerTooltipVisible());
if (mButtons.empty())
return;