diff --git a/interface/src/Application.h b/interface/src/Application.h index a0c67a9e73..b8ba83afd7 100644 --- a/interface/src/Application.h +++ b/interface/src/Application.h @@ -223,7 +223,7 @@ public: // the isHMDMode is true whenever we use the interface from an HMD and not a standard flat display // rendering of several elements depend on that // TODO: carry that information on the Camera as a setting - bool isHMDMode() const; + virtual bool isHMDMode() const override; glm::mat4 getHMDSensorPose() const; glm::mat4 getEyeOffset(int eye) const; glm::mat4 getEyeProjection(int eye) const; diff --git a/libraries/entities-renderer/src/RenderableWebEntityItem.cpp b/libraries/entities-renderer/src/RenderableWebEntityItem.cpp index 568bf7c787..f25ed55800 100644 --- a/libraries/entities-renderer/src/RenderableWebEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableWebEntityItem.cpp @@ -396,5 +396,9 @@ void RenderableWebEntityItem::emitScriptEvent(const QVariant& message) { } void RenderableWebEntityItem::setKeyboardRaised(bool raised) { - _webSurface->getRootItem()->setProperty("keyboardRaised", QVariant(raised)); + + // raise the keyboard only while in HMD mode and it's being requested. + bool value = AbstractViewStateInterface::instance()->isHMDMode() && raised; + + _webSurface->getRootItem()->setProperty("keyboardRaised", QVariant(value)); } diff --git a/libraries/render-utils/src/AbstractViewStateInterface.h b/libraries/render-utils/src/AbstractViewStateInterface.h index 65fa693914..362c0cc1bf 100644 --- a/libraries/render-utils/src/AbstractViewStateInterface.h +++ b/libraries/render-utils/src/AbstractViewStateInterface.h @@ -48,6 +48,8 @@ public: virtual void pushPostUpdateLambda(void* key, std::function func) = 0; + virtual bool isHMDMode() const = 0; + // FIXME - we shouldn't assume that there's a single instance of an AbstractViewStateInterface static AbstractViewStateInterface* instance(); static void setInstance(AbstractViewStateInterface* instance); diff --git a/tests/render-perf/src/main.cpp b/tests/render-perf/src/main.cpp index c6cca74c69..b5a702447a 100644 --- a/tests/render-perf/src/main.cpp +++ b/tests/render-perf/src/main.cpp @@ -497,6 +497,10 @@ protected: _postUpdateLambdas[key] = func; } + bool isHMDMode() const override { + return false; + } + public: //"/-17.2049,-8.08629,-19.4153/0,0.881994,0,-0.47126" static void setup() {