summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerEmu/ControlGroup
diff options
context:
space:
mode:
authorPokechu22 <Pokechu022@gmail.com>2021-12-23 15:22:35 -0800
committerPokechu22 <Pokechu022@gmail.com>2021-12-23 15:22:35 -0800
commitde7c78ef3dae0977c182071eebe139e0362ded5d (patch)
treebe8d286b9b4e59456c8f6ae9725e2b7268a817b3 /Source/Core/InputCommon/ControllerEmu/ControlGroup
parent6dae4043cb967925ae28cce92d9c100330a5d17e (diff)
ControllerEmu: Hide the cursor if the input gate is disabled
Diffstat (limited to 'Source/Core/InputCommon/ControllerEmu/ControlGroup')
-rw-r--r--Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.cpp b/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.cpp
index 9c280ab135..043ef37356 100644
--- a/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.cpp
+++ b/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.cpp
@@ -140,8 +140,11 @@ Cursor::StateData Cursor::GetState(const bool adjusted)
m_prev_result = result;
- // If auto-hide time is up or hide button is held:
- if (!m_auto_hide_timer || controls[4]->GetState<bool>())
+ // If auto-hide time is up, the hide button is held, or the input gate is disabled, hide the
+ // cursor. We need to check the input gate explicitly as the hide button check always returns
+ // false if the input gate is disabled (e.g. the window is not focused with background input
+ // disabled)
+ if (!m_auto_hide_timer || !ControlReference::GetInputGate() || controls[4]->GetState<bool>())
{
result.x = std::numeric_limits<ControlState>::quiet_NaN();
result.y = 0;