forked from qt-creator/qt-creator
QmlDesigner: Avoid leaking unused view widgets
IF a widget is never shown it has no parent and has to be deleted manually. Change-Id: I5cf34e3a7706dd3472d4388a04bf12910530fe4d Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
This commit is contained in:
@@ -192,6 +192,13 @@ DesignModeWidget::DesignModeWidget(QWidget *parent) :
|
||||
|
||||
DesignModeWidget::~DesignModeWidget()
|
||||
{
|
||||
m_leftSideBar.reset();
|
||||
m_rightSideBar.reset();
|
||||
|
||||
foreach (QPointer<QWidget> widget, m_viewWidgets) {
|
||||
if (widget)
|
||||
widget.clear();
|
||||
}
|
||||
}
|
||||
|
||||
void DesignModeWidget::restoreDefaultView()
|
||||
@@ -382,7 +389,9 @@ void DesignModeWidget::setup()
|
||||
Core::SideBarItem *sideBarItem = new DesignerSideBarItem(widgetInfo.widget, widgetInfo.toolBarWidgetFactory, widgetInfo.uniqueId);
|
||||
sideBarItems.append(sideBarItem);
|
||||
rightSideBarItems.append(sideBarItem);
|
||||
|
||||
}
|
||||
m_viewWidgets.append(widgetInfo.widget);
|
||||
}
|
||||
|
||||
if (projectsExplorer) {
|
||||
|
||||
Reference in New Issue
Block a user