This adds a quick reply feature with a text field inline in the notification popup.
An action named "inline-reply" will spawn the text field and a NotificationReplied signal is emitted then.
There's additional kde hints for changing the placeholder text (defaults to "Type a reply..."),
submit button text (defaults to "Send") and submit button icon name (defaults to "document-send",
that paper aeroplane icon).
An application could have multiple inhibitions. Release all of them when the service unregisters (process dies).
Differential Revision: https://phabricator.kde.org/D26125
This can be useful for notifications that confirm direct user interaction, such as successful Bluetooth pairing,
Screenshot creation, or plasmoid removal.
It only overrules filtering based on urgency, disabling notifications for that application altogether will still hide them.
Such a notification also won't increase the unread counter as it can be assumed when they do something, e.g. click on "Pair",
they will notice that the pairing progress dialog went away and a confirmation notification is shown.
Differential Revision: https://phabricator.kde.org/D25935
When a plasmoid collapses in Active state, the popup is hidden.
In Passive state, however, one is returned to the hidden items list, as it cannot tell whether
the plasmoid collapsed on its own or because the user clicked the same one in the hidden items list again.
When we clear notifications, plasmoid state updates immediately as a result of model signals,
and when we then try to collapse the plasmoid we're already hidden and just returned to the hidden items list.
This patch addresses this by delaying the state change slightly.
Futhermore, don't collapse the plasmoid when already hidden as that would just return the user to the hidden items list.
Differential Revision: https://phabricator.kde.org/D26091
Summary:
Both the popup header size as well as units.smallMargin depend on font
size. This causes problems with the new circular timeout indicator.
Rather than trying to somehow fix the margins, this patch changes things
to use units.iconSizes.smallMedium as close button icon size instead,
stopping it from relying on font size and hopefully fixing any layout
issues.
Test Plan: Change font size to 10/11/12 pt. Icon size remains the same.
Reviewers: #plasma, #vdg, ndavis, ngraham
Reviewed By: #vdg, ndavis, ngraham
Subscribers: ndavis, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26093
Summary:
Regression introduced in previous commit, review D25777. Tray icons should have an ability to resize. If not, icons smaller than 32x32 will render incorectly. In addition, do not notify using xcb_configure_notify_event_t, in some cases (Wine) it messes up the event handling.
BUG: 414667
FIXED-IN: 5.18.0
Test Plan: Tested with keepass2, keepassx, pidgin, xchat, hexchat, tuxguitar, liferea, wine tflash.exe, workrave, stardict
Reviewers: #plasma_workspaces, #plasma, davidedmundson
Reviewed By: #plasma_workspaces, #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26088
Summary:
When the window is embedded, it should not request position change. Sometimes applications are misbehaving and ignore this constrain. We need to capture all structure requests (position or size change) and ignore them. In other words, we must be a window manager for the embedded window.
BUG: 414667
Test Plan:
0. You need multiples screens to test this
1. Configure screens so that (0,0) is not on the primary screen
2. Run any Windows app with tray icon using Wine
3. Left click event should work correctly
Reviewers: #plasma_workspaces, #plasma, davidedmundson
Reviewed By: #plasma_workspaces, #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26079
This adds a file icon to a finished job for a single total file which can be dragged anywhere for convenience.
Differential Revision: https://phabricator.kde.org/D25782
Summary:
Fixed clearing the clipboard when clearing history
(bug #409366 caused by 3bd6ac34ed)
Properly synchronize clipboard content and history
(deleting last item in history didn't clear the clipboard).
Keep last image in history even if we are ignoring images, but without preview
(so that we can still clear history, and the tooltip says truth about clipboard content).
Fixed tray icon tooltip text.
Do not scale small images up in clipboard Plasmoid.
BUG: 409366
{F7168503}
Test Plan:
Spectacle -> [Copy to Clipboard]
Paste into Dolphin (clipboard content)
Deleting single items from clipboard
Clearing the entire history
Reviewers: #plasma, #plasma_workspaces, ngraham, davidedmundson
Reviewed By: #plasma, #plasma_workspaces, ngraham, davidedmundson
Subscribers: GB_2, davidre, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D22684
Summary:
Currently there are two different sources of SystemTray items:
* Plasmoids
* Status Notifier
Thi change adds new model that holds both Plasmoids and SNIs.
Test Plan: Add/disable applets. Start/stop SNI app.
Reviewers: #plasma, broulik, ngraham, nicolasfella
Reviewed By: nicolasfella
Subscribers: plasma-devel, nicolasfella, anthonyfieroni
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25580
Summary:
Same idea as D25998, but for desktop widgets and done on the C++ side to avoid weird
interactions between a MouseArea and a MultiPointTouchArea on the QML side.
Test Plan: {F7819381}
Reviewers: #vdg, #plasma, mart, apol
Reviewed By: #vdg, #plasma, mart, apol
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26015
Summary:
This uses the new KQuickCharts framework to render the notification timeout bar as a small
circular progress bar, around the close button.
Video:
{F7818131}
Test Plan:
notify-send -t 15000 test will first show a notification with no indicator, then once the
timeout gets to 10s or less it will show a decreasing circular progress bar.
Reviewers: #plasma, broulik, ngraham
Reviewed By: #plasma, broulik, ngraham
Subscribers: ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25993
Summary:
During the port to Qt5 the circular progress bar was lost, since there is no
simple way to do circular progress bars. Now that KQuickCharts is available
as a framework, we can restore the circular progress bar in the notifications.
Video:
{F7819233}
Test Plan: Start a long-ish running job like copying a file.
Reviewers: #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26012
When Plasma notification service isn't available or provided by someone else, disable the plasmoid.
Do not disturb controls are disabled and the applet stays in the popup crossed out.
Effectively D25097 of plasma-desktop for the applet itself.
Differential Revision: https://phabricator.kde.org/D25917
This reverts commit 5c8ce892e3.
Due to the looming LTS release date and bugs (415098, 414873, 4145094, 414852) that keep piling up, we are reverting the QQC2 and PC3 port of the SDDM theme.
This reverts commit d46b018665.
Due to the looming LTS release date and bugs (415098, 414873, 4145094, 414852) that keep piling up, we are reverting the QQC2 and PC3 port of the SDDM theme.
Since this patch was also related to that port, we need to revert it as well.
It can be used to query information about the current notification server (vendor, name, version, notification spec version).
This will be used by the plasmoid and KCM to indicate when notifications are currently unavailable or provided by a
different notification service from Plasma. Also notify valid changing at runtime when ownership is lost.
Differential Revision: https://phabricator.kde.org/D25772
Summary:
The wallpaper knsrc file file assumes that `qdbus` is in $PATH. However this is not
guaranteed; the command lives in the Qt binaries dir which is not typically in $PATH,
and distros typically create symlinks with different names in `/usr/bin`, but not all
create a second compatibility symlink at `/usr/bin/qdbus` that points to the version
for the current Qt version.
Therefore, we should find the command in the Qt binaries dir itself rather than relying
on these compatibility symlinks.
Test Plan: See that the knsrc file now has the absolute path to `qdbus` in it
Reviewers: davidedmundson, fvogt, #plasma, apol
Reviewed By: apol
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25884
There's something really funky going on in this...
Avoid using ViewTransition attached property be just setting the animation target before triggering the model removal.
BUG: 414066
Differential Revision: https://phabricator.kde.org/D25861
Added a ban on disabling the last checkbox in the widget settings.
There will always be at least one graph.
If the user disables the last checkbox, all other checkboxes will automatically get enabled in the settings.
It may be inconvenient for users to uncheck a large number of checkboxes.
I'm planning to use it in job notifications, too.
This should also make it easier to migrate away from a custom drag implementation to using Qt's if we were to do that.
Differential Revision: https://phabricator.kde.org/D25751
Summary:
Allows specifying the shell through an environment variable.
Allows forwarding command line arguments to kwin_wayland, since the arguments we
use on plasma phone are slightly different.
Test Plan: Builds, still starts
Reviewers: #plasma, bshah, mart, davidedmundson
Reviewed By: #plasma, bshah, mart, davidedmundson
Subscribers: broulik, mart, alexeymin, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25750