aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/service/hid/controllers/keyboard.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-07-25 11:57:24 -0700
committerGitHub <noreply@github.com>2020-07-25 11:57:24 -0700
commita2e1810287b8b7ffead994dcb17e8e0ba6bc0914 (patch)
tree8d5bc09c7abb7c36ca76be3e6605393f6e73ff16 /src/core/hle/service/hid/controllers/keyboard.cpp
parente3503de588665343a1ae0e4d09691f1ccad87231 (diff)
parent0319cc1c3700cfc29789ef5f09ed493fd3408acd (diff)
Merge pull request #4350 from ogniK5377/hid-update-connected
hid: Only update keyboard & debug pad inputs if enabled
Diffstat (limited to 'src/core/hle/service/hid/controllers/keyboard.cpp')
-rw-r--r--src/core/hle/service/hid/controllers/keyboard.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/core/hle/service/hid/controllers/keyboard.cpp b/src/core/hle/service/hid/controllers/keyboard.cpp
index feae89525..0b896d5ad 100644
--- a/src/core/hle/service/hid/controllers/keyboard.cpp
+++ b/src/core/hle/service/hid/controllers/keyboard.cpp
@@ -40,15 +40,16 @@ void Controller_Keyboard::OnUpdate(const Core::Timing::CoreTiming& core_timing,
cur_entry.key.fill(0);
cur_entry.modifier = 0;
-
- for (std::size_t i = 0; i < keyboard_keys.size(); ++i) {
- cur_entry.key[i / KEYS_PER_BYTE] |= (keyboard_keys[i]->GetStatus() << (i % KEYS_PER_BYTE));
- }
-
- for (std::size_t i = 0; i < keyboard_mods.size(); ++i) {
- cur_entry.modifier |= (keyboard_mods[i]->GetStatus() << i);
+ if (Settings::values.keyboard_enabled) {
+ for (std::size_t i = 0; i < keyboard_keys.size(); ++i) {
+ cur_entry.key[i / KEYS_PER_BYTE] |=
+ (keyboard_keys[i]->GetStatus() << (i % KEYS_PER_BYTE));
+ }
+
+ for (std::size_t i = 0; i < keyboard_mods.size(); ++i) {
+ cur_entry.modifier |= (keyboard_mods[i]->GetStatus() << i);
+ }
}
-
std::memcpy(data + SHARED_MEMORY_OFFSET, &shared_memory, sizeof(SharedMemory));
}