diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 14e0ea2a6d..daa8e1ace9 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -1691,9 +1691,8 @@ void Application::resizeGL() { } bool Application::importSVOFromURL(const QString& urlString) { - QUrl url(urlString); - emit svoImportRequested(url.url()); - return true; // assume it's accepted + emit svoImportRequested(urlString); + return true; } bool Application::event(QEvent* event) { diff --git a/interface/src/scripting/WindowScriptingInterface.cpp b/interface/src/scripting/WindowScriptingInterface.cpp index 5e5576b154..73c0098995 100644 --- a/interface/src/scripting/WindowScriptingInterface.cpp +++ b/interface/src/scripting/WindowScriptingInterface.cpp @@ -34,8 +34,19 @@ WindowScriptingInterface::WindowScriptingInterface() : { const DomainHandler& domainHandler = DependencyManager::get()->getDomainHandler(); connect(&domainHandler, &DomainHandler::connectedToDomain, this, &WindowScriptingInterface::domainChanged); - connect(qApp, &Application::svoImportRequested, this, &WindowScriptingInterface::svoImportRequested); connect(qApp, &Application::domainConnectionRefused, this, &WindowScriptingInterface::domainConnectionRefused); + + connect(qApp, &Application::svoImportRequested, [this](const QString& urlString) { + static const QMetaMethod svoImportRequestedSignal = + QMetaMethod::fromSignal(&WindowScriptingInterface::svoImportRequested); + + if (isSignalConnected(svoImportRequestedSignal)) { + QUrl url(urlString); + emit svoImportRequested(url.url()); + } else { + OffscreenUi::warning("Import SVO Error", "You need to be running edit.js to import entities."); + } + }); } WebWindowClass* WindowScriptingInterface::doCreateWebWindow(const QString& title, const QString& url, int width, int height) {