Summary:
[copy-pasted from T10500:]
Problems with the current term:
- It's a somewhat severe-sounding technical term that doesn't intrinsically mean much to the average person. To the extent that it does, the connotations may be negative (e.g. when a misbehaving kid is being kept out of school)
- Our two major closed-source desktop competitors (macOS and Windows) both use the term "Sleep", so user familiarity with "Suspend" is low and falling all the time
I'd like to propose that we use "Sleep" instead, to address the above issues. It's a nicer
word in general, and since it's what our competitors use, we benefit from user familiarity.
We also recently adopted a moon icon with Zs for this, which visually connotes sleep. So it
would make sense to update the string too, because then the string and the icon will both
match.
Test Plan:
Kickoff: {F6625999}
Kicker: {F6626000}
Dash: {F6626001}
Reviewers: #vdg, #plasma, filipf, mart
Reviewed By: #vdg, #plasma, filipf, mart
Subscribers: filipf, broulik, plasma-devel
Tags: #plasma
Maniphest Tasks: T10500
Differential Revision: https://phabricator.kde.org/D19184
Summary:
RunnerMatchesModel is backed by a list. When this list changes
RunnerManagerModel add/removes the new number of rows then called
dataChanged on everything that remained.
It's a common pattern, but not a great one. Especially with QtQuick
where moving a delegate is faster than updating all the properties of an
existing one - unfortunately I can't find a nice solution to do this
properly in linear time.
The problem with the current code is we update the entire list in the
insert/remove rows. This is a violation of the model rules as we're
updating rows outside the rows listed inside begin/remove rows.
It works, but Qt's model test fails.
We also have a lot of duplicates of a crash in QtQuick after runner
model changes, bug 369430. I think it could be related, but can't
prove anything.
This patch updates the rows that exist in both the before and after
models before adding/removing the remaining rows.
BUG: 402439
Test Plan:
Added Qt model tester in https://phabricator.kde.org/P283
It now passes.
Reviewers: #plasma, hein
Reviewed By: #plasma, hein
Subscribers: hein, apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D17725
Makes it consistent with other places where such an entry exists, such as Dolphin's context menu
Differential Revision: https://phabricator.kde.org/D14671
For KCMs we get a relative entryPath() for our KService resulting in an invalid URL being created.
BUG: 397070
FIXED-IN: 5.14.0
Differential Revision: https://phabricator.kde.org/D14647
This groups entries in Places under the same categories (Places, Recently Saved,
Remote, Devices, etc) as in all other places where Places are shown
Differential Revision: https://phabricator.kde.org/D14030
It is only used in one place and cached, so no need for a global static that is created
as soon as the plugin is loaded.
Differential Revision: https://phabricator.kde.org/D13999
The InvalidAppsFilterProxy and GroupSortProxy models were creating
circular parent-child relationships by setting themselves as parents
of their parent objects.
Reviewers: davidedmundson, mart
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D13856
Summary:
Users get confused by the difference between "Pin to Task Manager" and "Add to Panel (Widget)", and we get bugs about this.
This patch resolves that confusion by only showing "Add to Panel (Widget)" when there's no Task Manager widget.
BUG: 390817
FIXED-IN: 5.14.0
Test Plan:
Dragging-and-dropping an app from Kicker or Kickoff pins it to the Task Manager if there's a Task Manager, or creates a Panel launcher if there's no Task Manager.
Context menu items:
Task Manager, widgets unlocked:
{F5856628}
Task Manager, Widgets locked:
{F5856629}
No Task Manager, Widgets unlocked:
{F5856630}
Task Manager, Widgets unlocked:
{F5856631}
Reviewers: #plasma, davidedmundson, mart
Reviewed By: #plasma, mart
Subscribers: mart, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D12969
Summary:
D10890 was a workaround related to KRecentDocument::add() bug (see D10863)
which is fixed in Frameworks 5.46. Given that Plasma 5.13 depends on that
Frameworks version, it's safe to remove this no longer needed workaround
without breaking anything.
Reviewers: #plasma, broulik, hein
Reviewed By: #plasma, hein
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D12701
Summary:
This fixes a regression introduced in 38403268aad3, which forgot to
handle the branch where the counts are the same.
BUG:394013
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D12774
Summary:
The new asserts added in qtbase in commit 00c09e752f (Qt 5.11) are triggered
by this invalid code, which sets up the model before the begin* methods.
So Qt already sees the new rowCount in that method, which is wrong.
Test Plan: Opening the K menu
Reviewers: hein, davidedmundson
Reviewed By: davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D12275
Forward the action information to the model and pass all information to run.
This way future me will not have to wonder why actions don't work when he touches this area of code again.
Differential Revision: https://phabricator.kde.org/D11927
Summary:
Due to KRecentDocument::add() bug, application name '<app>' could
be stored for recent documents instead of its desktop entry name
'org.kde.<app>'. This issue mostly affects items opened from apps
themselves, while items opened from e.g. Dolphin are not affected.
(The bug is fixed by D10863, but we depend on Frameworks 5.42 which
doesn't include it.)
Kicker and taskmanager used to query for '<app>' agent only, thus
excluding items with correct 'org.kde.<app>' agent.
This commit makes kicker and taskmanager query for both '<app>' and
'org.kde.<app>' agents in order to get all recent documents for the
application.
Test Plan:
# Create 'test1' and 'test2' text files.
# Open 'test1' in Kate from Dolphin.
# Open 'test2' from Kate itself.
# Right-click Kate in Kicker/Kickoff and Task Manager and check
that both files are present there.
Reviewers: #plasma, broulik, hein
Reviewed By: #plasma, hein
Subscribers: anthonyfieroni, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10890
Summary:
When one tried to open a recent document which happened to be
executable (a shell script, for example), it was run instead.
This was unexpected and could even be disastrous.
After this change, recent documents are always opened.
Reviewers: #plasma, hein, broulik
Reviewed By: #plasma, broulik
Subscribers: ngraham, hein, broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10835
Kickoff uses AppsModel instead of RootModel but since RootModel inherits AppsModel we can just move everything over here.
Differential Revision: https://phabricator.kde.org/D10506
Summary:
I'd like this in the 5.12 branch as it also fixes a shell freeze.
BUG:387316
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10456
Summary:
removing favorites crashed, next() has to be called
before accessing the item
Test Plan: crash--
Reviewers: #plasma, hein, ivan
Reviewed By: #plasma, ivan
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10177
Summary:
removing favorites crashed, next() has to be called
before accessing the item
Test Plan: crash--
Reviewers: #plasma, hein, ivan
Reviewed By: #plasma, ivan
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10177