From de0b038ee1d1bb2c82f2326216c2a2025da5c9a0 Mon Sep 17 00:00:00 2001 From: amer cerkic Date: Fri, 26 Jul 2019 13:52:38 -0700 Subject: [PATCH] trunked to a lambda for simplicity --- interface/src/ui/InteractiveWindow.cpp | 6 ++++-- interface/src/ui/InteractiveWindow.h | 10 +--------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/interface/src/ui/InteractiveWindow.cpp b/interface/src/ui/InteractiveWindow.cpp index 8fdcb1d9d6..8cc2f9a3d5 100644 --- a/interface/src/ui/InteractiveWindow.cpp +++ b/interface/src/ui/InteractiveWindow.cpp @@ -136,8 +136,10 @@ InteractiveWindow::InteractiveWindow(const QString& sourceUrl, const QVariantMap if (properties.contains(PRESENTATION_MODE_PROPERTY)) { presentationMode = (InteractiveWindowPresentationMode) properties[PRESENTATION_MODE_PROPERTY].toInt(); } - - _interactiveWindowProxy = std::unique_ptr(new InteractiveWindowProxy()); + + _interactiveWindowProxy= std::unique_ptr>(new InteractiveWindowProxy, [](InteractiveWindowProxy *p) { + p->deleteLater(); + }); QObject::connect(_interactiveWindowProxy.get(), &InteractiveWindowProxy::webEventReceived, this, &InteractiveWindow::emitWebEvent, Qt::QueuedConnection); QObject::connect(this, &InteractiveWindow::scriptEventReceived, _interactiveWindowProxy.get(), &InteractiveWindowProxy::emitScriptEvent, Qt::QueuedConnection); diff --git a/interface/src/ui/InteractiveWindow.h b/interface/src/ui/InteractiveWindow.h index dda71b3087..357db3744a 100644 --- a/interface/src/ui/InteractiveWindow.h +++ b/interface/src/ui/InteractiveWindow.h @@ -37,7 +37,6 @@ private: }; - class InteractiveWindowProxy : public QObject { Q_OBJECT public: @@ -54,13 +53,6 @@ signals: void webEventReceived(const QVariant& message); }; -struct InteractiveWindowProxyDeleter { - void operator()(InteractiveWindowProxy * p) { - p->deleteLater(); - } -}; - - namespace InteractiveWindowEnums { Q_NAMESPACE @@ -332,7 +324,7 @@ protected slots: private: std::shared_ptr _qmlWindowProxy; std::shared_ptr _dockWidget { nullptr }; - std::unique_ptr _interactiveWindowProxy; + std::unique_ptr> _interactiveWindowProxy; }; typedef InteractiveWindow* InteractiveWindowPointer;