This patch fixes regressions provided by D14931.
Steps to reproduce (my system is neon/bionic with Qt 5.11.1 and KDevelop/master):
- Start KDevelop and load some project
- Start project build
- Close KDevelop
- Segfault happens
Main problems:
- Incorrect signal processing. OutputWidget::updateFilter() slot is called from parent's destructor when m_tabwidget/m_stackwidget is deleted so we have destroyed m_views hash and segfault as a result.
- Incorrect QSharedPointer usage. All handled objects have QWidget as a parent so we have double-free problem and and segfault as a result.
BUG: 398615