We do this sometimes, but not consistenly.
The benefit is twofold.
First it improves the diff when adding new values since no existing line needs to be touched.
Second it prevents clang-format from collapsing the definition into a single line, which is undesired for large enums.
The code is meant to add the entry if it's valid, then watch for
changes. Somehow we end up only monitoring if it was valid initially.
This doesn't make sense.
This means if the menu loads before the backend we don't update
correctly when it does load.
CCBUG: 423526
BUG: 427779
For System Settings the frequently used settings modules are shown in the same way
they are done on System Settings home page.
The default set is taken from its jump list actions when there aren't enough (5)
frequent entries yet. This matches System Settings behavior, too.
If no runners are explicitly specified the RunnerManager will read the enabled plugins from the krunnerrc file. This way enabled plugins are configurable and consistent with KRunner.
The system actions model recently changed behavior to always present all
possible actions, with `AbstractEntry::isValid` driving the model role
`Kicker::DisabledRole` so that views can e.g. grey out unavailable
actions.
This was perceived as a regression by users who are annoyed at e.g.
`Hibernate` being visible when their system setup precludes it more or
less permanently.
This patch reverts this behavior.
Note that the dynamic approach we had permanently wasn't very great
anyway, as the associated favorites models would remove entries when
they became invalid, and they wouldn't come back automatically when the
entry were to become valid again. In effect that means when you added one
of these actions to e.g. the Kicker sidebar and it became unavailable
it would disappear until re-added anyways.
I can imagine use cases where dynamic behavior would be useful to have -
let's say disabling Shutdown/Reboot while a critical system update is
being performed. But in that case we'd need to fix the favorites
behavior and add some way to inform the user why the action is disabled
for a good user experienced anyhow.
BUG:426645
This patch adds a new enabled role to kicker items instead of creating
and deleting them if they're not available due to configuration.
It ports to the new session code in libkworkspace dropping our need for
KDE4Support.
From: D20237
Better to keep the exact semantics when porting stuff, we can change it later
if we want. (Disregarding that I even got the boolean the wrong way around).
This is a more generic term that's less likely to be inappropriate
(every document is a file, but not every file is a document) and using
"Recent Files" brings Plasma into consistency with what KIO and Dolphin
call it.
CCBUG: 424007
Fixes regression caused by me meddling with data in 6e660cf92d
Unfortunately KRunner has no notion of "this is application xyz" so Kicker has to make assumptions, which broke here.
Differential Revision: https://phabricator.kde.org/D29744
Summary: And use KNotificationJobUiDelegate in case of errors
Test Plan: Untested other than compilation
Reviewers: broulik, davidedmundson
Reviewed By: broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D29124
Summary:
RecentUsageModel can list all aps and docs,
only aps or only docs. make possible to control that from QML
Test Plan: the api works, all existing code has the same behavior as before
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D27782
Summary:
Since D10835 opening urls that needed mimetype determination such as smb:/ or sftp:/ urls were always opened with a "Open With" dialog.
To keep the same security but adding some convenience, use KRun::setRunExecutables to disable executable run here.
Reviewers: #plasma, broulik, aleksejshilin, hein
Reviewed By: #plasma, hein
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26582
Summary:
Save quite a few KFileItem instanciation.
On each document hovering several KFileItem were instanciated for nothing.
Reviewers: #frameworks, apol
Reviewed By: apol
Subscribers: apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26416
Summary:
The path of places is not very informative to users
Follow the path of D26121
Test Plan: {F7828297}
Reviewers: ngraham, #plasma, #vdg, hein
Reviewed By: ngraham, #plasma, #vdg, hein
Subscribers: hein, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26147
Summary:
Most group have icons, this one did not. A new icon just got created for
all applications, it makes sense to be consistent.
This has no effect in the kicker-dash as that does not show icons, nor
kicker/kickoff as they don't show the all applications group.
Only third party menus will be affected.
Test Plan:
Looked at my custom menu
Looked at kicker-dash
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25294
Summary: Include duplication, no newline at the end of file and missing argument to the i18n() call
Test Plan: Should work fine but needs a review for i18n() calls
Reviewers: #plasma, apol
Reviewed By: apol
Subscribers: apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D24580