@@ -576,16 +576,21 @@ void LauncherModel::applicationRemoved(const QModelIndex &parent, int row)
578 LauncherItem * item = m_list.at(appIndex);
578 LauncherItem * item = m_list.at(appIndex);
579− item->setRunning(false);
581 if (!item->pinned()) {
580 if (!item->pinned()) {
582 beginRemoveRows(QModelIndex(), appIndex, appIndex);
581 beginRemoveRows(QModelIndex(), appIndex, appIndex);
583 m_list.takeAt(appIndex)->deleteLater();
582 m_list.takeAt(appIndex)->deleteLater();
584 endRemoveRows();
583 endRemoveRows();
585 m_asAdapter->syncItems(m_list);
584 m_asAdapter->syncItems(m_list);
586+ QVector<int> changedRoles = {RoleRunning};
587+ item->setRunning(false);
588+ if (item->focused()) {
589+ changedRoles << RoleFocused;
590+ item->setFocused(false);
586− Q_EMIT dataChanged(index(appIndex), index(appIndex), {RolePinned});
592+ Q_EMIT dataChanged(index(appIndex), index(appIndex), changedRoles);
588− Q_EMIT dataChanged(index(appIndex), index(appIndex), {RoleRunning});
591void LauncherModel::focusedAppIdChanged()
596void LauncherModel::focusedAppIdChanged()