on xenial help sign in
Workaround for non-deletion of indicator page menu items. Fixes: https://bugs.launchpad.net/bugs/1183065, https://bugs.launchpad.net/bugs/1206991.

Approved by PS Jenkins bot, Michał Sawicz.

commitdbafbfa70f5cf86cc8f49a9e05e1df54711f8fce authorNick Dedekind <nicholas.dedekind@gmail.com> dateThu 8 Aug 2013, 13:43 (13 years ago) parentd15c4c2658be48
1 file changed+10−7
plugins/Unity/Indicators/flatmenuproxymodel.cpp+10−7
plugins/Unity/Indicators/flatmenuproxymodel.cpp+10−7
@@ -55,31 +55,34 @@ void FlatMenuProxyModel::setSourceModel(QAbstractItemModel *source)
5555 if (source) {
5656
5757 // FIXME - not working correctly with dynamic inserts/removes
58+ // FIXME 2 - We're using Queud connections as a workaround to QTBUG-32859
59+ // The signals from qmenumodel are coming straight off the glib event loop,
60+ // which is not supported and has the effect of listview delegates not to be deleted.
5861
5962 connect(source,
6063 SIGNAL(rowsAboutToBeInserted(QModelIndex,int,int)),
61− SLOT(onModelAboutToBeReset()));
64+ SLOT(onModelAboutToBeReset()), Qt::QueuedConnection);
6265 connect(source,
6366 SIGNAL(rowsInserted(QModelIndex,int,int)),
64− SLOT(onModelReset()));
67+ SLOT(onModelReset()), Qt::QueuedConnection);
6568
6669 connect(source,
6770 SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),
68− SLOT(onModelAboutToBeReset()));
71+ SLOT(onModelAboutToBeReset()), Qt::QueuedConnection);
6972 connect(source,
7073 SIGNAL(rowsRemoved(QModelIndex,int,int)),
71− SLOT(onModelReset()));
74+ SLOT(onModelReset()), Qt::QueuedConnection);
7275
7376 connect(source,
7477 SIGNAL(modelAboutToBeReset()),
75− SLOT(onModelAboutToBeReset()));
78+ SLOT(onModelAboutToBeReset()), Qt::QueuedConnection);
7679 connect(source,
7780 SIGNAL(modelReset()),
78− SLOT(onModelReset()));
81+ SLOT(onModelReset()), Qt::QueuedConnection);
7982
8083 connect(source,
8184 SIGNAL(statusChanged(DBusEnums::ConnectionStatus)),
82− SIGNAL(statusChanged()));
85+ SIGNAL(statusChanged()), Qt::QueuedConnection);
8386
8487 // initiliaze rowCount
8588 QModelIndex lastItem = source->index(source->rowCount() - 1, 0);