taking colors for the svg and text from ColorScope makes it work
on the inverted areas, such as the plasma mobile top bar.
disable the text selection by mouse on mobile as well
the config buttons to configure each individual notification
- Battery and device notifier go into Hardware category
- Clipboard goes to SystemServices category
- Notifications and media controller go to ApplicationStatus category
This reworks the notification sizing computation to use Layouts. This
should fix all the popup sizing issues there are (including a binding
loop error).
Now it also properly elides after max 4 lines of text.
REVIEW: 124149
FIXED-IN: 5.3.2
BUG: 339588
BUG: 349142
According to Kai:
"object literal is more performant
same with [] vs new Array()
also you should avoid putting the keys in ""
{"foo": bar} is also less performant than {foo: bar} :)"
And so I did to his bidding.
Reviewed-by: Kai Uwe Broulik
With the previous patch, now everything has "notification N" source
name, so there's needed another way to detect that it's a job's
notification.
Reviewed-by: Kai Uwe Broulik
As notifications support <img/> tags, it can happen that a big image is
sent and that is then painted even outside of the popup's frame. So we
need to clip it.
BUG: 346419
FIXED-IN: 5.3.1
It can happen that a notification is placed in the show queue and then
it's closed (eg. programatically) before it was even shown. In this case
the notification must be cleared from the show queue otherwise it will
get displayed and hidden but the popup is never freed for reuse,
resulting in notificaions starting at higher position from the panel.
BUG: 342605
It can happen that a notification is placed in the show queue and then
it's closed (eg. programatically) before it was even shown. In this case
the notification must be cleared from the show queue otherwise it will
get displayed and hidden but the popup is never freed for reuse,
resulting in notificaions starting at higher position from the panel.
BUG: 342605
DataSources source is a QStringList property which means changes within cannot be tracked
causing all the job delegates to be destroyed and re-created when sourcesChanged is emitted.
This is pretty wasteful and also causes the delegates to lose their state (eg. details expanded)
REVIEW: 123502
BUG: 346673
FIXED-IN: 5.3.1
There's a bug with MouseArea which causes the containsMouse to not be
updated when the Item moves away from below the mouse while the mouse is
not being moved. This should help at least with those cases where the
notification gets stuck.
Reviewed-by: Kai Uwe Broulik
CCBUG: 345973
Modify applicationjobs dataengine so that "error" value
now contains job's error code and "errorText" error message.
This depends on commit 812d0b440e7f08e3acdd1c9bb95779bd871b75b3
to kjobwidgets.
REVIEW: 122928
Check for job error when job finishes and in case of error, set notification
summary to "%job_message%: Error", body to error text and clears the
actions (no open url).
It only works with jobs that actually sets the error text (KJob::setErrorText),
because KJob::error is not exposed in dataengine.
REVIEW: 122921