diff options
author | bunnei <bunneidev@gmail.com> | 2020-05-19 21:55:14 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-19 21:55:14 +0200 |
commit | cf4ee279c6424ada927f74fcc34e013038af7228 (patch) | |
tree | 40589b41a0d79f166d6b47c8b5e6726a2ca1a246 /src/core/hle/service/hid | |
parent | Merge pull request #3665 from bunnei/device-save (diff) | |
parent | hid: Clear keyboard states & fix logic issue (diff) | |
download | yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar.gz yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar.bz2 yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar.lz yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar.xz yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.tar.zst yuzu-cf4ee279c6424ada927f74fcc34e013038af7228.zip |
Diffstat (limited to 'src/core/hle/service/hid')
-rw-r--r-- | src/core/hle/service/hid/controllers/keyboard.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/hle/service/hid/controllers/keyboard.cpp b/src/core/hle/service/hid/controllers/keyboard.cpp index 358cb9329..9a8d354ba 100644 --- a/src/core/hle/service/hid/controllers/keyboard.cpp +++ b/src/core/hle/service/hid/controllers/keyboard.cpp @@ -38,10 +38,11 @@ void Controller_Keyboard::OnUpdate(const Core::Timing::CoreTiming& core_timing, cur_entry.sampling_number = last_entry.sampling_number + 1; cur_entry.sampling_number2 = cur_entry.sampling_number; + cur_entry.key.fill(0); + cur_entry.modifier = 0; + for (std::size_t i = 0; i < keyboard_keys.size(); ++i) { - for (std::size_t k = 0; k < KEYS_PER_BYTE; ++k) { - cur_entry.key[i / KEYS_PER_BYTE] |= (keyboard_keys[i]->GetStatus() << k); - } + 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) { |