Revert "libnotificationmanager: Expire all notifications when "Do not disturb" is on"

This reverts commit b8b722ba19.

This breaks the whitelist.

CCBUG: 440837
wilder-5.26
Fushan Wen 4 years ago committed by Nate Graham
parent 04e07250a7
commit a38fbf4884
  1. 16
      libnotificationmanager/abstractnotificationsmodel.cpp
  2. 1
      libnotificationmanager/abstractnotificationsmodel.h
  3. 1
      libnotificationmanager/abstractnotificationsmodel_p.h
  4. 3
      libnotificationmanager/notificationsmodel.cpp

@ -29,7 +29,6 @@ using namespace NotificationManager;
AbstractNotificationsModel::Private::Private(AbstractNotificationsModel *q)
: q(q)
, inhibited(false)
, lastRead(QDateTime::currentDateTimeUtc())
{
pendingRemovalTimer.setSingleShot(true);
@ -71,10 +70,10 @@ void AbstractNotificationsModel::Private::onNotificationAdded(const Notification
q->endRemoveRows();
}
setupNotificationTimeout(notification);
q->beginInsertRows(QModelIndex(), notifications.count(), notifications.count());
notifications.append(std::move(notification));
// Timeout must be set after the item appends to the vector
setupNotificationTimeout(notification);
q->endInsertRows();
}
@ -163,12 +162,6 @@ void AbstractNotificationsModel::Private::setupNotificationTimeout(const Notific
return;
}
// Don't show the notification popup after switching DND mode off.
if (inhibited) {
q->expire(notification.id());
return;
}
QTimer *timer = notificationTimeouts.value(notification.id());
if (!timer) {
timer = new QTimer();
@ -436,11 +429,6 @@ void AbstractNotificationsModel::stopTimeout(uint notificationId)
delete d->notificationTimeouts.take(notificationId);
}
void AbstractNotificationsModel::setInhibited(bool inhibited)
{
d->inhibited = inhibited;
}
void AbstractNotificationsModel::clear(Notifications::ClearFlags flags)
{
if (d->notifications.isEmpty()) {

@ -44,7 +44,6 @@ public:
void startTimeout(uint notificationId);
void stopTimeout(uint notificationId);
void setInhibited(bool inhibited);
void clear(Notifications::ClearFlags flags);

@ -41,7 +41,6 @@ public:
QVector<uint /*notificationId*/> pendingRemovals;
QTimer pendingRemovalTimer;
bool inhibited; // "Do not disturb" mode
QDateTime lastRead;
};

@ -50,9 +50,6 @@ NotificationsModel::NotificationsModel()
}
});
Server::self().init();
setInhibited(Server::self().inhibited());
connect(&Server::self(), &Server::inhibitedChanged, this, std::bind(&NotificationsModel::setInhibited, this, std::placeholders::_1));
}
void NotificationsModel::expire(uint notificationId)

Loading…
Cancel
Save