diff options
Diffstat (limited to 'src/input_common/input_mapping.cpp')
| -rw-r--r-- | src/input_common/input_mapping.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/input_common/input_mapping.cpp b/src/input_common/input_mapping.cpp index edd5287c1..6990a86b9 100644 --- a/src/input_common/input_mapping.cpp +++ b/src/input_common/input_mapping.cpp | |||
| @@ -76,7 +76,7 @@ void MappingFactory::RegisterButton(const MappingData& data) { | |||
| 76 | break; | 76 | break; |
| 77 | case EngineInputType::Analog: | 77 | case EngineInputType::Analog: |
| 78 | // Ignore mouse axis when mapping buttons | 78 | // Ignore mouse axis when mapping buttons |
| 79 | if (data.engine == "mouse") { | 79 | if (data.engine == "mouse" && data.index != 4) { |
| 80 | return; | 80 | return; |
| 81 | } | 81 | } |
| 82 | new_input.Set("axis", data.index); | 82 | new_input.Set("axis", data.index); |
| @@ -194,6 +194,10 @@ bool MappingFactory::IsDriverValid(const MappingData& data) const { | |||
| 194 | if (data.engine == "keyboard" && data.pad.port != 0) { | 194 | if (data.engine == "keyboard" && data.pad.port != 0) { |
| 195 | return false; | 195 | return false; |
| 196 | } | 196 | } |
| 197 | // Only port 0 can be mapped on the mouse | ||
| 198 | if (data.engine == "mouse" && data.pad.port != 0) { | ||
| 199 | return false; | ||
| 200 | } | ||
| 197 | // To prevent mapping with two devices we disable any UDP except motion | 201 | // To prevent mapping with two devices we disable any UDP except motion |
| 198 | if (!Settings::values.enable_udp_controller && data.engine == "cemuhookudp" && | 202 | if (!Settings::values.enable_udp_controller && data.engine == "cemuhookudp" && |
| 199 | data.type != EngineInputType::Motion) { | 203 | data.type != EngineInputType::Motion) { |