forked from suyu/suyu
hid: Implement DeactivateNpad
Makes use of the already existing DeactivateController function.
This commit is contained in:
parent
5326d3cb3a
commit
29e15601f3
2 changed files with 13 additions and 1 deletions
|
@ -195,7 +195,7 @@ Hid::Hid(Core::System& system) : ServiceFramework("hid"), system(system) {
|
||||||
{101, &Hid::GetSupportedNpadStyleSet, "GetSupportedNpadStyleSet"},
|
{101, &Hid::GetSupportedNpadStyleSet, "GetSupportedNpadStyleSet"},
|
||||||
{102, &Hid::SetSupportedNpadIdType, "SetSupportedNpadIdType"},
|
{102, &Hid::SetSupportedNpadIdType, "SetSupportedNpadIdType"},
|
||||||
{103, &Hid::ActivateNpad, "ActivateNpad"},
|
{103, &Hid::ActivateNpad, "ActivateNpad"},
|
||||||
{104, nullptr, "DeactivateNpad"},
|
{104, &Hid::DeactivateNpad, "DeactivateNpad"},
|
||||||
{106, &Hid::AcquireNpadStyleSetUpdateEventHandle, "AcquireNpadStyleSetUpdateEventHandle"},
|
{106, &Hid::AcquireNpadStyleSetUpdateEventHandle, "AcquireNpadStyleSetUpdateEventHandle"},
|
||||||
{107, &Hid::DisconnectNpad, "DisconnectNpad"},
|
{107, &Hid::DisconnectNpad, "DisconnectNpad"},
|
||||||
{108, &Hid::GetPlayerLedPattern, "GetPlayerLedPattern"},
|
{108, &Hid::GetPlayerLedPattern, "GetPlayerLedPattern"},
|
||||||
|
@ -470,6 +470,17 @@ void Hid::ActivateNpad(Kernel::HLERequestContext& ctx) {
|
||||||
applet_resource->ActivateController(HidController::NPad);
|
applet_resource->ActivateController(HidController::NPad);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Hid::DeactivateNpad(Kernel::HLERequestContext& ctx) {
|
||||||
|
IPC::RequestParser rp{ctx};
|
||||||
|
const auto applet_resource_user_id{rp.Pop<u64>()};
|
||||||
|
|
||||||
|
LOG_DEBUG(Service_HID, "called, applet_resource_user_id={}", applet_resource_user_id);
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
applet_resource->DeactivateController(HidController::NPad);
|
||||||
|
}
|
||||||
|
|
||||||
void Hid::AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx) {
|
void Hid::AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx) {
|
||||||
IPC::RequestParser rp{ctx};
|
IPC::RequestParser rp{ctx};
|
||||||
const auto npad_id{rp.Pop<u32>()};
|
const auto npad_id{rp.Pop<u32>()};
|
||||||
|
|
|
@ -99,6 +99,7 @@ private:
|
||||||
void GetSupportedNpadStyleSet(Kernel::HLERequestContext& ctx);
|
void GetSupportedNpadStyleSet(Kernel::HLERequestContext& ctx);
|
||||||
void SetSupportedNpadIdType(Kernel::HLERequestContext& ctx);
|
void SetSupportedNpadIdType(Kernel::HLERequestContext& ctx);
|
||||||
void ActivateNpad(Kernel::HLERequestContext& ctx);
|
void ActivateNpad(Kernel::HLERequestContext& ctx);
|
||||||
|
void DeactivateNpad(Kernel::HLERequestContext& ctx);
|
||||||
void AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx);
|
void AcquireNpadStyleSetUpdateEventHandle(Kernel::HLERequestContext& ctx);
|
||||||
void DisconnectNpad(Kernel::HLERequestContext& ctx);
|
void DisconnectNpad(Kernel::HLERequestContext& ctx);
|
||||||
void GetPlayerLedPattern(Kernel::HLERequestContext& ctx);
|
void GetPlayerLedPattern(Kernel::HLERequestContext& ctx);
|
||||||
|
|
Loading…
Reference in a new issue