From 123ac541eaed95211f684cecb27e371a0f518363 Mon Sep 17 00:00:00 2001 From: Seth Alves Date: Fri, 9 Sep 2016 11:31:48 -0700 Subject: [PATCH] started to move WebEntityAPIHelper from RenderableWebEntityItem to OffscreenQmlSurface --- .../src/RenderableWebEntityItem.cpp | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/libraries/entities-renderer/src/RenderableWebEntityItem.cpp b/libraries/entities-renderer/src/RenderableWebEntityItem.cpp index bcaafee862..8ff9187adf 100644 --- a/libraries/entities-renderer/src/RenderableWebEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableWebEntityItem.cpp @@ -52,12 +52,6 @@ RenderableWebEntityItem::RenderableWebEntityItem(const EntityItemID& entityItemI _touchDevice.setType(QTouchDevice::TouchScreen); _touchDevice.setName("RenderableWebEntityItemTouchDevice"); _touchDevice.setMaximumTouchPoints(4); - - // forward web events to EntityScriptingInterface - auto entities = DependencyManager::get(); - QObject::connect(_webSurface->_webEntityAPIHelper, &WebEntityAPIHelper::webEventReceived, [=](const QVariant& message) { - emit entities->webEventReceived(entityItemID, message); - }); } RenderableWebEntityItem::~RenderableWebEntityItem() { @@ -102,6 +96,14 @@ bool RenderableWebEntityItem::buildWebSurface(EntityTreeRenderer* renderer) { _connection = QObject::connect(_webSurface, &OffscreenQmlSurface::textureUpdated, [&](GLuint textureId) { _texture = textureId; }); + + // forward web events to EntityScriptingInterface + auto entities = DependencyManager::get(); + const EntityItemID entityItemID = getID(); + QObject::connect(_webSurface->_webEntityAPIHelper, &WebEntityAPIHelper::webEventReceived, [=](const QVariant& message) { + emit entities->webEventReceived(entityItemID, message); + }); + // Restore the original GL context currentContext->makeCurrent(currentSurface); @@ -161,15 +163,10 @@ void RenderableWebEntityItem::render(RenderArgs* args) { #endif if (!_webSurface) { - #if defined(Q_OS_LINUX) - // these don't seem to work on Linux - return; - #else if (!buildWebSurface(static_cast(args->_renderer))) { return; } _fadeStartTime = usecTimestampNow(); - #endif } _lastRenderTime = usecTimestampNow();