diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2024-02-24 02:32:32 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-24 02:32:32 +0100 |
commit | 6c40d75e47c7dc2d8ab5e11664cd40906f846de9 (patch) | |
tree | b3af659a01c967e1a3082447a9ada02e5b055717 /src/core/hle/service/nfc/common | |
parent | Merge pull request #13141 from liamwhite/swap (diff) | |
parent | service: audio: Add missing logging properties of SetHeadphoneOutputLevelMode (diff) | |
download | yuzu-6c40d75e47c7dc2d8ab5e11664cd40906f846de9.tar yuzu-6c40d75e47c7dc2d8ab5e11664cd40906f846de9.tar.gz yuzu-6c40d75e47c7dc2d8ab5e11664cd40906f846de9.tar.bz2 yuzu-6c40d75e47c7dc2d8ab5e11664cd40906f846de9.tar.lz yuzu-6c40d75e47c7dc2d8ab5e11664cd40906f846de9.tar.xz yuzu-6c40d75e47c7dc2d8ab5e11664cd40906f846de9.tar.zst yuzu-6c40d75e47c7dc2d8ab5e11664cd40906f846de9.zip |
Diffstat (limited to 'src/core/hle/service/nfc/common')
-rw-r--r-- | src/core/hle/service/nfc/common/device_manager.cpp | 8 | ||||
-rw-r--r-- | src/core/hle/service/nfc/common/device_manager.h | 5 |
2 files changed, 11 insertions, 2 deletions
diff --git a/src/core/hle/service/nfc/common/device_manager.cpp b/src/core/hle/service/nfc/common/device_manager.cpp index 94a8243b5..2dd3e9f89 100644 --- a/src/core/hle/service/nfc/common/device_manager.cpp +++ b/src/core/hle/service/nfc/common/device_manager.cpp @@ -13,6 +13,7 @@ #include "core/hle/service/nfc/nfc_result.h" #include "core/hle/service/psc/time/steady_clock.h" #include "core/hle/service/service.h" +#include "core/hle/service/set/system_settings_server.h" #include "core/hle/service/sm/sm.h" #include "hid_core/hid_types.h" #include "hid_core/hid_util.h" @@ -32,6 +33,9 @@ DeviceManager::DeviceManager(Core::System& system_, KernelHelpers::ServiceContex } is_initialized = false; + + m_set_sys = + system.ServiceManager().GetService<Service::Set::ISystemSettingsServer>("set:sys", true); } DeviceManager ::~DeviceManager() { @@ -774,8 +778,8 @@ Result DeviceManager::CheckDeviceState(std::shared_ptr<NfcDevice> device) const } Result DeviceManager::IsNfcEnabled() const { - // TODO: This calls nn::settings::detail::GetNfcEnableFlag - const bool is_enabled = true; + bool is_enabled{}; + R_TRY(m_set_sys->GetNfcEnableFlag(&is_enabled)); if (!is_enabled) { return ResultNfcDisabled; } diff --git a/src/core/hle/service/nfc/common/device_manager.h b/src/core/hle/service/nfc/common/device_manager.h index c56a2fbda..6c0e6b255 100644 --- a/src/core/hle/service/nfc/common/device_manager.h +++ b/src/core/hle/service/nfc/common/device_manager.h @@ -15,6 +15,10 @@ #include "core/hle/service/service.h" #include "hid_core/hid_types.h" +namespace Service::Set { +class ISystemSettingsServer; +} + namespace Service::NFC { class NfcDevice; @@ -98,6 +102,7 @@ private: Core::System& system; KernelHelpers::ServiceContext service_context; Kernel::KEvent* availability_change_event; + std::shared_ptr<Service::Set::ISystemSettingsServer> m_set_sys; }; } // namespace Service::NFC |