From 7e674ba3c45e50803644adee7bdcc0dab4281225 Mon Sep 17 00:00:00 2001 From: Wayne Chen Date: Mon, 14 Jan 2019 09:00:26 -0800 Subject: [PATCH] better check for if oculus is running --- interface/src/ui/LoginDialog.cpp | 4 ++-- libraries/plugins/src/plugins/OculusPlatformPlugin.h | 2 ++ plugins/oculus/src/OculusPlatformPlugin.cpp | 4 ++++ plugins/oculus/src/OculusPlatformPlugin.h | 2 ++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/interface/src/ui/LoginDialog.cpp b/interface/src/ui/LoginDialog.cpp index 7ef5bb7786..32e7ffe1c6 100644 --- a/interface/src/ui/LoginDialog.cpp +++ b/interface/src/ui/LoginDialog.cpp @@ -106,8 +106,8 @@ bool LoginDialog::isSteamRunning() const { } bool LoginDialog::isOculusRunning() const { - auto oculusPlatform = PluginManager::getInstance()->getOculusPlatformPlugin(); - return (oculusPlatform != nullptr); + auto oculusPlatformPlugin = PluginManager::getInstance()->getOculusPlatformPlugin(); + return (oculusPlatformPlugin && oculusPlatformPlugin->isRunning()); } void LoginDialog::dismissLoginDialog() { diff --git a/libraries/plugins/src/plugins/OculusPlatformPlugin.h b/libraries/plugins/src/plugins/OculusPlatformPlugin.h index e6660d7d7a..7a99ce6890 100644 --- a/libraries/plugins/src/plugins/OculusPlatformPlugin.h +++ b/libraries/plugins/src/plugins/OculusPlatformPlugin.h @@ -19,6 +19,8 @@ public: virtual const QString getName() const = 0; + virtual const bool isRunning() const = 0; + virtual void requestNonceAndUserID(NonceUserIDCallback callback) = 0; virtual void handleOVREvents() = 0; diff --git a/plugins/oculus/src/OculusPlatformPlugin.cpp b/plugins/oculus/src/OculusPlatformPlugin.cpp index 4153853287..49ff4e094d 100644 --- a/plugins/oculus/src/OculusPlatformPlugin.cpp +++ b/plugins/oculus/src/OculusPlatformPlugin.cpp @@ -24,6 +24,10 @@ OculusAPIPlugin::~OculusAPIPlugin() { hifi::ovr::releaseRenderSession(_session); } +const bool OculusAPIPlugin::isRunning() const { + return (qApp->property(hifi::properties::OCULUS_STORE).toBool()); +} + void OculusAPIPlugin::requestNonceAndUserID(NonceUserIDCallback callback) { _nonceUserIDCallback = callback; ovr_User_GetUserProof(); diff --git a/plugins/oculus/src/OculusPlatformPlugin.h b/plugins/oculus/src/OculusPlatformPlugin.h index d43776b1d1..766f3fb21d 100644 --- a/plugins/oculus/src/OculusPlatformPlugin.h +++ b/plugins/oculus/src/OculusPlatformPlugin.h @@ -20,6 +20,8 @@ public: virtual ~OculusAPIPlugin(); const QString getName() const { return NAME; } + const bool isRunning() const; + virtual void requestNonceAndUserID(NonceUserIDCallback callback); virtual void handleOVREvents();