diff --git a/src/qtwidgets/views/ViewWrapper_qtwidgets.cpp b/src/qtwidgets/views/ViewWrapper_qtwidgets.cpp index 068eef0f..2d021dcb 100644 --- a/src/qtwidgets/views/ViewWrapper_qtwidgets.cpp +++ b/src/qtwidgets/views/ViewWrapper_qtwidgets.cpp @@ -304,3 +304,8 @@ DropArea *ViewWrapper_qtwidgets::asDropArea() const { return qobject_cast(m_widget); } + +QWidget *ViewWrapper_qtwidgets::widget() const +{ + return m_widget; +} diff --git a/src/qtwidgets/views/ViewWrapper_qtwidgets.h b/src/qtwidgets/views/ViewWrapper_qtwidgets.h index 1dfeaa47..6008eb94 100644 --- a/src/qtwidgets/views/ViewWrapper_qtwidgets.h +++ b/src/qtwidgets/views/ViewWrapper_qtwidgets.h @@ -58,6 +58,8 @@ public: DropArea *asDropArea() const override; + QWidget *widget() const; + private: QPointer m_widget; }; diff --git a/tests/qtwidgets/tst_qtwidgets.cpp b/tests/qtwidgets/tst_qtwidgets.cpp index 049cba1b..60597171 100644 --- a/tests/qtwidgets/tst_qtwidgets.cpp +++ b/tests/qtwidgets/tst_qtwidgets.cpp @@ -27,6 +27,7 @@ #include "controllers/DockWidget.h" #include "controllers/MainWindow.h" #include "qtwidgets/views/MainWindow_qtwidgets.h" +#include "qtwidgets/views/ViewWrapper_qtwidgets.h" #include #include @@ -929,7 +930,8 @@ void TestQtWidgets::tst_negativeAnchorPositionWhenEmbedded() layout->checkSanity(); - delete m->window()->asQWidget(); + auto wrapper = static_cast(m->window().get()); + delete wrapper->widget(); } void TestQtWidgets::tst_restoreResizesLayout()