it is not matter of timeout, it is matter of the KNotification instance
being around for the actions. once it is not the notification actions
become non-operational. other than that notification stay indefinetly
in the notification area
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
in the old implementation KNotificationManager was not locked but it is
global static so it is subject to thread-safety issues thus it has to be
mutex-locked
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
questionable but the old implementation was doing it, as for why it is
questionable - it is more like a description rather than application name
(e.g. "Crash notifier" rather than "kcrash")
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
while in most cases it is the same as the main component name the always
correct value (now anyway) is the main group which is part of the event ID
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
because the old KNotification implementation did not look for sounds
recursively it was not possible to set a relative sound file that is
supposed to not be in one of the main sound directories (e.g a sound in a
sub-directory like /usr/share/sounds/freedesktop/stereo/message.oga, for
such files the full path had to be set in the notification config but no
more)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
another rewrite of bits dating back to 1997 done:
https://ibb.co/5GKtQT1
while working on it the idea of writing custom widget that will act as
checkbox but look something like a slider and using that instead of tables
popped up (the widget design itself is not new but using the widget in new
UIs will be).
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
cleaning up the mess, everything but KNotificationConfigWidget is
implemented.
not only does it not require additional D-Bus service (knotify) to
function but also does not transmit pixmaps over D-Bus, the features
to execute command or log to file are dropped and will not be
implemented.
also about markup support in notifications - if the server does not
support markup then it is supposed to strip it, see the spec:
https://specifications.freedesktop.org/notification-spec/notification-spec-latest.html#backwards-compat
meaning nothing should be done by KNotification itself because it is not
a server, it is just a proxy.
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
for compatibilty reasons automoc4 support is not removed but it
shall be in the future. automoc4 has not been maintained for a
while (last commit is from 2011) and the stable release is from
2009.
CMake version >= 2.8.6 provides the functionality for mocking so
I see no reason to not make use of it.