summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/hid/controllers/mouse.cpp
diff options
context:
space:
mode:
authorgerman <german@thesoftwareartisans.com>2021-01-10 18:37:19 +0100
committergerman <german@thesoftwareartisans.com>2021-02-04 03:17:08 +0100
commitf30ef987615729f5a3b8eab524ce5680369057e9 (patch)
tree665cfd2d8191212f80b5d6bdc3bbe6aa39de8385 /src/core/hle/service/hid/controllers/mouse.cpp
parentMerge pull request #5863 from ogniK5377/disable-reverb (diff)
downloadyuzu-f30ef987615729f5a3b8eab524ce5680369057e9.tar
yuzu-f30ef987615729f5a3b8eab524ce5680369057e9.tar.gz
yuzu-f30ef987615729f5a3b8eab524ce5680369057e9.tar.bz2
yuzu-f30ef987615729f5a3b8eab524ce5680369057e9.tar.lz
yuzu-f30ef987615729f5a3b8eab524ce5680369057e9.tar.xz
yuzu-f30ef987615729f5a3b8eab524ce5680369057e9.tar.zst
yuzu-f30ef987615729f5a3b8eab524ce5680369057e9.zip
Diffstat (limited to 'src/core/hle/service/hid/controllers/mouse.cpp')
-rw-r--r--src/core/hle/service/hid/controllers/mouse.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/core/hle/service/hid/controllers/mouse.cpp b/src/core/hle/service/hid/controllers/mouse.cpp
index ac40989c5..30924d9e2 100644
--- a/src/core/hle/service/hid/controllers/mouse.cpp
+++ b/src/core/hle/service/hid/controllers/mouse.cpp
@@ -35,7 +35,7 @@ void Controller_Mouse::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8*
cur_entry.sampling_number = last_entry.sampling_number + 1;
cur_entry.sampling_number2 = cur_entry.sampling_number;
-
+ cur_entry.attribute.raw = 0;
if (Settings::values.mouse_enabled) {
const auto [px, py, sx, sy] = mouse_device->GetStatus();
const auto x = static_cast<s32>(px * Layout::ScreenUndocked::Width);
@@ -46,10 +46,14 @@ void Controller_Mouse::OnUpdate(const Core::Timing::CoreTiming& core_timing, u8*
cur_entry.delta_y = y - last_entry.y;
cur_entry.mouse_wheel_x = sx;
cur_entry.mouse_wheel_y = sy;
+ cur_entry.attribute.is_connected.Assign(1);
- for (std::size_t i = 0; i < mouse_button_devices.size(); ++i) {
- cur_entry.button |= (mouse_button_devices[i]->GetStatus() << i);
- }
+ using namespace Settings::NativeMouseButton;
+ cur_entry.button.left.Assign(mouse_button_devices[Left]->GetStatus());
+ cur_entry.button.right.Assign(mouse_button_devices[Right]->GetStatus());
+ cur_entry.button.middle.Assign(mouse_button_devices[Middle]->GetStatus());
+ cur_entry.button.forward.Assign(mouse_button_devices[Forward]->GetStatus());
+ cur_entry.button.back.Assign(mouse_button_devices[Back]->GetStatus());
}
std::memcpy(data + SHARED_MEMORY_OFFSET, &shared_memory, sizeof(SharedMemory));