A job instance is created as soon as the job starts but it might not be shown to the user right away or at all.
JobPrivate::prettyDestUrl() already creates the KFilePlacesModel if needed, no need to do it in the constructor.
Differential Revision: https://phabricator.kde.org/D23983
Currently, a notification is considered "unread" when it was created or updated after the last time the user opened the history.
To alleviate this, when the notification popup is hovered, e.g. because the user wanted to drag an image out, select some text,
or open the "More" menu, it is considered read. It will still end up in the history but will not needlessly show the "unread notification" bell icon.
Moreover, job finished notifications are always considered read, as they are either from long-standing jobs which the user is likely aware of,
or confirmation of short tasks the user doesn't need explicit confirmation about. For example, extracting an archive in Dolphin,
I get an "Extracting (Finished)" but I don't want to explicitly acknowledge that notification because I can just enter the folder that was just created in Dolphin.
This surely doesn't fix the underlying problem of notification expiration and history, and the user might just interact wiht some
tray icons or the clock and not actually deal with the notification popup but this is imho an acceptable stopgap until a proper
solution is found, which won't happen in time for Plasma 5.17 anyway.
Differential Revision: https://phabricator.kde.org/D23977
Summary: It got lost during the porting to native executables
Test Plan:
Set KDEWM=awesome, successfully started a new Plasma
session with it, unset it again and kwin is started in the next
session.
Reviewers: #plasma, apol, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23910
Summary: {F7331506}
Test Plan: Open Kicker and open the context menu for a menu item.
Reviewers: #plasma, #vdg, ngraham
Reviewed By: #vdg, ngraham
Subscribers: #vdg, plasma-devel, #plasma
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23793
Summary:
Use the new icon added in D22155.
{F6948276}
{F6948277}
Test Plan: Open the desktop context menu and also search for "activity" in KRunner.
Reviewers: #plasma, #vdg, ndavis
Reviewed By: #vdg, ndavis
Subscribers: #vdg, plasma-devel, #plasma
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D22167
Summary: Load only once and share
Test Plan: Restarted. Also made a small test app that I'll submit once this is in as it depends.
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23719
Usually it's not very long, so in the common case of just an application name, it won't be truncated anyway.
But in case an origin is set, it might be. In this case, we want to make sure the end of the origin is shown, in case it is for identifying a website domain.
Differential Revision: https://phabricator.kde.org/D23690
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
Summary:
Even with the Discover icon added in D23623, the text is still fairly unclear,
especially for the common case of wanting to uninstall the app.
This patch re-words the menu item to add that all-important word "Uninstall", while not
losing any of the current meaning.
Test Plan: {F7306465, size=full}
Reviewers: #vdg, #plasma, hein, nicolasfella
Reviewed By: nicolasfella
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23652
Summary: The icon name seems a bit weird to me, but it's what Dolphin uses for a similar purpose
Reviewers: #plasma, hein, ngraham
Reviewed By: ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23640
Summary: While not 100% technically correct since another app might be associated with appstream URLs it's still much more expressive than the current icon
Test Plan: {F7302971}
Reviewers: #plasma, hein, ngraham
Reviewed By: ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23623
This makes it group notifications of different "origins" not group together,
e.g. FooApp notifications from phone A won't be grouped together with FooApp notifications from phone B.
Also, email notifications from different accounts wouldn't be grouped together.
Finally, show the origin in the grouped header.
Differential Revision: https://phabricator.kde.org/D23583
This implements a new JobViewV3 which uses extensible variant maps rather than individual function calls,
allowing for compression of calls and extensibility.
The new API uses infoMessage correctly as a state message, e.g. "Connecting to host" rather than mixing it with the "Copying..." heading.
It also supports an "immediate" flag that the caller can use to indicate progress should be immediately shown,
so in cases where the user is likely to want to use the file afterwards (e.g. download through p-b-i or receiving a file
through KDE Connect) a job popup is shown even for small/short transfers.
Differential Revision: https://phabricator.kde.org/D23293
Summary:
One thing that has been bugging me a bit with notifications is how close the pop-up is
to the screen corners/edges. It's so close that it obscures various things that live very
close to screen edges, such as windows' titlebars and the text input field in chat apps.
The latter case is really annoying in particular because if you have multiple chat apps
running, notifications from the app that's in the background will obscure what you're
typing in the text input field of the foreground chat app.
This patch fixes these types of issues by doing the following:
- Adjusting the popup positioning algorithm make popups that are in a corner equidistant from both adjacent screen edges, rather than only one
- Doubling the defualt distance from the nearest corner/edge
The combination of these changes allows pop-ups to no longer obscure window titlebars
and chat windows' input fields.
BUG: 401500
FIXED-IN: 5.16.5
Test Plan:
Top corner popup position no longer obscures window titlebar text and buttons: {F7259424}
Bottom corner popup position no longer obscures chat app's text input field: {F7259425}
Reviewers: broulik, #plasma, #vdg
Reviewed By: broulik, #plasma
Subscribers: cblack, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23253
Summary:
Wine is using XWindow Shape Extension for transparent tray icons.
We need to find first clickable point starting from top-left.
BUG: 399234
Test Plan:
Bug fix test:
1. Enable KWin compositing;
2. Download this test program (SHA-1: 63ae606aee64259091e7f82436d4ecdf3a6e9047): https://www.nirsoft.net/utils/tflash210.zip
3. Run the .exe with Wine **Staging**
4. Right click on the icon
5. Context menu should show
Regression test:
1. Run XChat
2. Right click
3. Context menu should show in the same place as without patch
Reviewers: davidedmundson, #plasma_workspaces
Reviewed By: davidedmundson, #plasma_workspaces
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D22767
Summary: kcrash must be used else it will not be linked and crashes will crash instead of kcrashing
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D23487