<table><tr><td style="">broulik created this revision.<br />broulik added reviewers: Plasma, VDG.<br />Herald added a project: Plasma.<br />Herald added a subscriber: plasma-devel.<br />broulik requested review of this revision.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D28646">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>This ensures that newer notification popups don't push old ones out.<br />
Some applications are notorious for spamming the user which right now results in a firework of notification popups. With this patch only the number that fits on screen is displayed and everything beyond that is off screen until there's room enough for new popups which are then gradually lowered.<br />
It also reduces the likelihood of the notification the user is interacting with being shifted away by an incoming notification.<br />
Furthermore, since notifications that are off screen will have their timeout reset, it can happen that you have a bunch of recent notifications at the bottom but then get some old ones that were off screen sliding back in because some middle ones have expired already, leading to awkward results.</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>Before<br />
<a href="https://phabricator.kde.org/F8222633" style="background-color: #e7e7e7;
border-color: #e7e7e7;
border-radius: 3px;
padding: 0 4px;
font-weight: bold;
color: black;text-decoration: none;">F8222633: notiorderold.ogv</a><br />
After<br />
<a href="https://phabricator.kde.org/F8222634" style="background-color: #e7e7e7;
border-color: #e7e7e7;
border-radius: 3px;
padding: 0 4px;
font-weight: bold;
color: black;text-decoration: none;">F8222634: notiordernew.ogv</a></p>
<p>Order in the history is unaffected and still shows newest first</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R120 Plasma Workspace</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D28646">https://phabricator.kde.org/D28646</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>applets/notifications/package/contents/ui/global/Globals.qml<br />
libnotificationmanager/notifications.cpp<br />
libnotificationmanager/notifications.h<br />
libnotificationmanager/notificationsortproxymodel.cpp<br />
libnotificationmanager/notificationsortproxymodel_p.h</div></div></div><br /><div><strong>To: </strong>broulik, Plasma, VDG<br /><strong>Cc: </strong>plasma-devel, Orage, LeGast00n, The-Feren-OS-Dev, cblack, jraleigh, zachus, fbampaloukas, GB_2, ragreen, ZrenBot, ngraham, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart<br /></div>