Commit 1f6050b1 authored by Kai Uwe Broulik's avatar Kai Uwe Broulik 🍇
Browse files

[Notifications] Don't keep non-configurable notifications in history

If a notification isn't configurable (e.g. because the application doesn't set a desktop-entry hint),
there's no way for the user to keep it out of the history if they so desire, causing excess history spam.

Differential Revision: https://phabricator.kde.org/D22048
parent c26fd34c
......@@ -132,7 +132,16 @@ bool NotificationFilterProxyModel::filterAcceptsRow(int source_row, const QModel
{
const QModelIndex sourceIdx = sourceModel()->index(source_row, 0, source_parent);
if (!m_showExpired && sourceIdx.data(Notifications::ExpiredRole).toBool()) {
const bool expired = sourceIdx.data(Notifications::ExpiredRole).toBool();
if (!m_showExpired && expired) {
return false;
}
// If the application isn't configurable in any way, it doesn't deserve to be in the history
// since there's no way for the user to get rid of it there.
if (expired && !sourceIdx.data(Notifications::ConfigurableRole).toBool()
// jobs are never configurable so this only applies to notifications
&& sourceIdx.data(Notifications::TypeRole).toInt() == Notifications::NotificationType) {
return false;
}
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment