diff options
Diffstat (limited to '')
-rw-r--r-- | src/hid_core/resources/touch_screen/gesture.cpp (renamed from src/core/hle/service/hid/controllers/gesture.cpp) | 16 | ||||
-rw-r--r-- | src/hid_core/resources/touch_screen/gesture.h (renamed from src/core/hle/service/hid/controllers/gesture.h) | 4 | ||||
-rw-r--r-- | src/hid_core/resources/touch_screen/gesture_types.h (renamed from src/core/hle/service/hid/controllers/types/gesture_types.h) | 0 | ||||
-rw-r--r-- | src/hid_core/resources/touch_screen/touch_screen.cpp (renamed from src/core/hle/service/hid/controllers/touchscreen.cpp) | 12 | ||||
-rw-r--r-- | src/hid_core/resources/touch_screen/touch_screen.h (renamed from src/core/hle/service/hid/controllers/touchscreen.h) | 6 | ||||
-rw-r--r-- | src/hid_core/resources/touch_screen/touch_types.h (renamed from src/core/hle/service/hid/controllers/types/touch_types.h) | 2 |
6 files changed, 21 insertions, 19 deletions
diff --git a/src/core/hle/service/hid/controllers/gesture.cpp b/src/hid_core/resources/touch_screen/gesture.cpp index 6e686fe65..0ecc0941f 100644 --- a/src/core/hle/service/hid/controllers/gesture.cpp +++ b/src/hid_core/resources/touch_screen/gesture.cpp @@ -4,11 +4,11 @@ #include "common/math_util.h" #include "common/settings.h" #include "core/frontend/emu_window.h" -#include "core/hid/emulated_console.h" -#include "core/hid/hid_core.h" -#include "core/hle/service/hid/controllers/applet_resource.h" -#include "core/hle/service/hid/controllers/gesture.h" -#include "core/hle/service/hid/controllers/types/shared_memory_format.h" +#include "hid_core/frontend/emulated_console.h" +#include "hid_core/hid_core.h" +#include "hid_core/resources/applet_resource.h" +#include "hid_core/resources/shared_memory_format.h" +#include "hid_core/resources/touch_screen/gesture.h" namespace Service::HID { // HW is around 700, value is set to 400 to make it easier to trigger with mouse @@ -28,10 +28,11 @@ Gesture::Gesture(Core::HID::HIDCore& hid_core_) : ControllerBase(hid_core_) { Gesture::~Gesture() = default; void Gesture::OnInit() { + std::scoped_lock shared_lock{*shared_mutex}; const u64 aruid = applet_resource->GetActiveAruid(); auto* data = applet_resource->GetAruidData(aruid); - if (data == nullptr) { + if (data == nullptr || !data->flag.is_assigned) { return; } @@ -44,10 +45,11 @@ void Gesture::OnInit() { void Gesture::OnRelease() {} void Gesture::OnUpdate(const Core::Timing::CoreTiming& core_timing) { + std::scoped_lock shared_lock{*shared_mutex}; const u64 aruid = applet_resource->GetActiveAruid(); auto* data = applet_resource->GetAruidData(aruid); - if (data == nullptr) { + if (data == nullptr || !data->flag.is_assigned) { return; } diff --git a/src/core/hle/service/hid/controllers/gesture.h b/src/hid_core/resources/touch_screen/gesture.h index 78da1552a..32e9a8690 100644 --- a/src/core/hle/service/hid/controllers/gesture.h +++ b/src/hid_core/resources/touch_screen/gesture.h @@ -6,8 +6,8 @@ #include <array> #include "common/common_types.h" -#include "core/hle/service/hid/controllers/controller_base.h" -#include "core/hle/service/hid/controllers/types/touch_types.h" +#include "hid_core/resources/controller_base.h" +#include "hid_core/resources/touch_screen/touch_types.h" namespace Core::HID { class EmulatedConsole; diff --git a/src/core/hle/service/hid/controllers/types/gesture_types.h b/src/hid_core/resources/touch_screen/gesture_types.h index b4f034cd3..b4f034cd3 100644 --- a/src/core/hle/service/hid/controllers/types/gesture_types.h +++ b/src/hid_core/resources/touch_screen/gesture_types.h diff --git a/src/core/hle/service/hid/controllers/touchscreen.cpp b/src/hid_core/resources/touch_screen/touch_screen.cpp index 291dc707e..48d956c51 100644 --- a/src/core/hle/service/hid/controllers/touchscreen.cpp +++ b/src/hid_core/resources/touch_screen/touch_screen.cpp @@ -6,11 +6,11 @@ #include "common/settings.h" #include "core/core_timing.h" #include "core/frontend/emu_window.h" -#include "core/hid/emulated_console.h" -#include "core/hid/hid_core.h" -#include "core/hle/service/hid/controllers/applet_resource.h" -#include "core/hle/service/hid/controllers/touchscreen.h" -#include "core/hle/service/hid/controllers/types/shared_memory_format.h" +#include "hid_core/frontend/emulated_console.h" +#include "hid_core/hid_core.h" +#include "hid_core/resources/applet_resource.h" +#include "hid_core/resources/shared_memory_format.h" +#include "hid_core/resources/touch_screen/touch_screen.h" namespace Service::HID { @@ -30,7 +30,7 @@ void TouchScreen::OnUpdate(const Core::Timing::CoreTiming& core_timing) { const u64 aruid = applet_resource->GetActiveAruid(); auto* data = applet_resource->GetAruidData(aruid); - if (data == nullptr) { + if (data == nullptr || !data->flag.is_assigned) { return; } diff --git a/src/core/hle/service/hid/controllers/touchscreen.h b/src/hid_core/resources/touch_screen/touch_screen.h index 945d359be..4b3824742 100644 --- a/src/core/hle/service/hid/controllers/touchscreen.h +++ b/src/hid_core/resources/touch_screen/touch_screen.h @@ -5,9 +5,9 @@ #include <array> -#include "core/hid/hid_types.h" -#include "core/hle/service/hid/controllers/controller_base.h" -#include "core/hle/service/hid/controllers/types/touch_types.h" +#include "hid_core/hid_types.h" +#include "hid_core/resources/controller_base.h" +#include "hid_core/resources/touch_screen/touch_types.h" namespace Core::HID { class EmulatedConsole; diff --git a/src/core/hle/service/hid/controllers/types/touch_types.h b/src/hid_core/resources/touch_screen/touch_types.h index efeaa796d..97ee847da 100644 --- a/src/core/hle/service/hid/controllers/types/touch_types.h +++ b/src/hid_core/resources/touch_screen/touch_types.h @@ -10,7 +10,7 @@ #include "common/common_funcs.h" #include "common/common_types.h" #include "common/point.h" -#include "core/hid/hid_types.h" +#include "hid_core/hid_types.h" namespace Service::HID { static constexpr std::size_t MAX_FINGERS = 16; |