Summary:
==1408== Conditional jump or move depends on uninitialised value(s)
==1408== at 0x1F0D8A6D:
NotificationManager::NotificationGroupCollapsingProxyModel::setLimit(int)
(src/kde/workspace/plasma-workspace/libnotificationmanager/notificationgroupcollapsingproxymodel.cpp:112)
==1408== by 0x1F0BA091:
NotificationManager::Notifications::Private::initProxyModels()
(src/kde/workspace/plasma-workspace/libnotificationmanager/notifications.cpp:227)
==1408== by 0x1F0BBC75:
NotificationManager::Notifications::setGroupMode(NotificationManager::Notifications::GroupMode)
(src/kde/workspace/plasma-workspace/libnotificationmanager/notifications.cpp:584)
==1408== by 0x1F09F7B2:
NotificationManager::Notifications::qt_static_metacall(QObject*,
QMetaObject::Call, int, void**) (moc_notifications.cpp:668)
Practical impact is limited as every user has to call setLimit anyway
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23683
* Ship some more default rules in plasmanotifyrc
* Improved do not disturb menu (add "for 4 hours" and "until disabled")
* Expand unread notifications by default, overall improved expansion/collapse handling
* Show unread count in panel and reset when plasmoid is closed again
* Move notification sanitizer and its test from dataengine to lib
* Load pixmaps into model also for files and limit their physical size
* Enforce maximum limit for notifications (1000...)
- Rename some of the classes:
NotificationServer -> Server (there's namespaces, you know)
NotificationModel -> NotificationsModel (so it's plural like JobsModel)
- Introduce NotificationGroupingCollapse
- Wire up PulseAudio-qt for eventual notification silence in dnd mode
- Touch up notification looks
- Add indentation and "line" for grouped plasmoids
- Rethink "show more" button to be at the end
- Fix buttons overlapping
- Remove NotificationDelegate item and do those few adjustments in FullRepresentation
- Cleanup job details, handle when processed > total
- Use States {} more
- Show low urgency popups by default but don't add them to history
- Rework compact representation animations a bit
For some reason they often got stuck
- Implement do not disturb mode for applications
- Add fallback timeout to ensure notifications eventually timeout
Otherwise when disabling dnd mode you will get spammed
and we would also keep apps running indefinitely waiting for the notification to close
- Install plasmanotifyrc with some sane defaults
So far only lets Spectacle show its screenshot notifications in dnd mode
- Introduce Closable role rather than hardcoding that behavior everywhere in the view
- Better app identification/grouping for jobs
- Be more lenient about app identification (firefox will match Firefox, too)
- Cleanups
- Notification action buttons
- Custom icon pixmaps in notifications
- Popup handling
- Notification urgency (low isn't shown as popup TBD, critical always no matter what)
- History stuff (only expired notifications end up there, none that were closed or revoked)
- Text selection and copy for body text
- Basic tray icon support
and many other things
Application jobs are shown as part of regular notifications:
- They show up as little popup that can be hidden in the history
- When finished progress popup turns into a notification
There's still some glitches and missing features, notably
- Screenshot thumbnails
- "Open" functionality for finished jobs
- History layout
- code cleanup
- and basically every configuration option
libnotificationmanager provides a proper notification model situation similar
to libtaskmanager. There is also a new notification applet implementing the
suggestions and VDG mockups in the wiki
NOTE: the notification dataengine is defunct in this branch, so while the applet
(for now) installs as "new notifications", the old applet will stop working when
you use this. The dataengine will eventually be restored (famous last words)
for compatibility but using the NotificationServer singleton introduced in
libnotificationmanager.
The applet can show notifications, they expire, can be closed, and their
default action invoked. Still heavily WIP and API subject to change.
[1] https://community.kde.org/Plasma/Notifications
This is the beginning of revision history for this module. If you
want to look at revision history older than this, please refer to the
techbase wiki for how to use Git history grafting. At the time of
writing, this wiki is located here:
http://community.kde.org/Frameworks/GitOldHistory
If you have already performed the grafting and you don't see any
history beyond this commit, try running "git log" with the "--follow"
argument.
Branched from the monolithic repo kde-workspace, frameworks branch, at commit
049113e719dd2fc4446d054fa1a3aada330094f0