Summary:
Before loading the view, query all plasma processes and show why they're using
KUserFeedback.
Depends on D26569
Test Plan: Manual testing
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: ngraham, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26570
Summary:
We currently have a mouse-wheel action to switch to the previous/next activity,
but it wasn't possible to assign a global keyboard shortcut to these actions.
As discussed on Phabricator, this doesn't define a default key-sequence yet,
but at least gives users the possibility to assign there own ones, which wasn't
possible before.
Reviewers: apol, davidedmundson, #vdg, #plasma, ngraham
Reviewed By: davidedmundson, #vdg, #plasma, ngraham
Subscribers: ngraham, romangg, ivan, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D22382
Summary:
I'm trying to implement the idea of @davidedmundson from this https://phabricator.kde.org/T10172 with my limited knowledge of C++/Qt/KDE/programming. This is the start of a new class so it could lack many things but it's usable.
- It allows clients to set the available screen rect/region from outside through dbus.
- The final available screen rect/region would be the intersection of all set values.
- When a client dies, its values would be removed automatically.
Test Plan:
+ qdbus-qt5 org.kde.plasmashell /StrutManager test org.kde.lattedock LVDS-1 0 24 1366 768
+ After killing latte-dock, the values are got only from plasmashellCorona.
{F7820969}
Reviewers: #plasma, mvourlakos, davidedmundson, mart, apol
Reviewed By: #plasma, davidedmundson
Subscribers: davidre, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25807
Summary:
edit mode menu action
edit mode dbus property for systemsettings
containmentlayoutmanager goes out of edit mode only when the whole
plasma app loses focus, so the panel controlled doesn't make it go out
of it
Test Plan:
iaction shows in context menu, works
property exposed on dbus works
Reviewers: #plasma, #vdg, ngraham, GB_2, davidedmundson
Reviewed By: #plasma, #vdg, ngraham, GB_2, davidedmundson
Subscribers: GB_2, ngraham, davidedmundson, plasma-devel
Tags: #plasma
Maniphest Tasks: T10190, T11094, T10402
Differential Revision: https://phabricator.kde.org/D24264
Summary:
It offers 2 main features:
- Configure the system-wide KUserFeedback kill-switch
- Provide a setting for how much information we want our Plasma to be sending
Test Plan:
Tested it together with Discover, works fine.
{F7497259}
Reviewers: #plasma, vkrause, ngraham
Reviewed By: ngraham
Subscribers: aspotashev, ngraham, bcooksley, davidedmundson, ognarb, broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D24011
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:
We had an overly complex and in practice unexploited system to detect
which shell to use,
This patch changes it to default to the desktop, still allowing to
modify which to use from --shell-plugin argument.
Test Plan:
Starts up fine, --shell-plugin/-p still works, which is what
bhushan told me is important for plasma mobile.
Reviewers: #plasma, davidedmundson, bshah
Reviewed By: #plasma, davidedmundson, bshah
Subscribers: bshah, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D22874
Summary:
The macro is on its way to getting deprecated, so we better start
adopting the suggested alternative just as well.
Test Plan: plasmashell runs fine
Reviewers: #plasma, ngraham
Reviewed By: ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21493
Summary:
If the desktops are already visible, there's no much need to hold on the KSplash. Panels should be ellegantly displayed when they're ready.
As discussed in T10958.
Test Plan:
Made sure that it gets emitted at the right time.
Timing-wise, my system takes about 1s to show the DesktopView and 2s to show the PanelView (I have 1 panel)
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: broulik, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21494
Summary: Put load in queue of the event loop to wait for the whole set of containments to have been deleteLater(), as some like FolderView operate on singletons which can cause inconsistent states
Test Plan:
now switching look and feel between 2 themes that use both FolderView
as desktop containment, the icons are still there
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21513
during l&f switch, use destroy() which does a proper cleanup
and gives applets time to react to destroyedChanged, so we're sure they
properly cleaned up their states.
This among other things makes the in-app menubar work again when the
user switches from a style with a global menu bar to one without
Summary:
load() is called a few times and different states. After the change I
also get the warning on a regular load.
This patch returns early whilst we're in the loading state, but still
prints the warning should kactivitymanagerd fail.
Reviewers: #plasma, mart
Reviewed By: #plasma, mart
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18922
Summary:
Ran into this gotcha the other day, and it was impossible to resolve
without code debugging.
Reviewers: #plasma, bshah
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18493
It takes almost 30ms here to create the engine and then we usually don't end up using
it as all update scripts had already been processed in the past.
Differential Revision: https://phabricator.kde.org/D14751
Summary:
Port plasma desktop scripting to qjsengine, removing every trace of QScript from plasma-workspace.
The scripting is 100% API compatible.
the bindings are partly done on the javascript part as some things are only possible there and not on the QJSEngine part:
* setting AppInterface as the globalobject's __proto__ with property getters that are evaluated every time
* setting functions that act as constructors (using newQMetaObject gives way more complex and uglier c++ code in Containment, as the scriptengine is not immediately accessible)
* a QRectF wrapper which exposes all properties and methods that were exposed in the previous implementation
Test Plan:
* some manual api test from the interactive console
* tested both from the desktop console and first start with some pretty complex layouts from lnf packages (the default one, netrunner, united, elpas)
* tested every property/methos of the qrectf wrapper
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D13112
Summary:
If we cannot create a GL context, instead of showing an error and
quitting, switch to using the QtQuick software renderer and restart.
If software mode is already set, then show the error as before. This
could happen in the case of the software renderer not being installed.
Test Plan:
After doing some driver changing, I ended up with the annoying "plasma can't start"
message.
Without the entry in kdeglobals I now start plasma and it seamlessly comes up
working.
Reviewers: #plasma
Subscribers: mart, broulik, graesslin, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11722
Summary:
with new corona containment query functions in D11361 the data
copy done in m_desktopContainments is no more necessary: this should
make things a bit more simple and robust
Test Plan: launched plasmashell, tried to add/remove activities and screens, all keeps working
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11801
Summary:
Original decision didn't really have a rationale:
https://git.reviewboard.kde.org/r/125648/
It's causing bugs in people doing somewhat sensible things.
BUG: 380347
If widgets are locked, the script will still fail when it tries to do
something it can't.
Reviewers: #plasma, broulik
Subscribers: mart, broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11375
Summary: QUrl::fromLocalFile can't be used when packages are qrc
Test Plan: plasashell loads correctly with packages from qrc
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D9176
Summary: This is the implementation of the new Plasma Corona API, as described in https://phabricator.kde.org/D8566
Reviewers: #plasma, ervin, dvratil, mlaurent, hein, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: mwolff, apol, mart, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D8567
Summary:
There is (a very appreciated) a description of why loading the
alternatives dialog was queued.
This causes issues for autohide as it gives us a time when the menu is
closed and we don't have anything else inhibiting autohide.
The comment doesn't seem to hold true with the latest frameworks which has
some mouse releasing code on the menu itself.
Test Plan: Clicked a lot. Clicks worked first time.
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6647
Summary: Replace QObject::sender() and tracking objects in a list with a simple lambda.
Test Plan: Opened and closed dialog.
Reviewers: #plasma, mart
Reviewed By: #plasma, mart
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6615
Summary:
This allows us to run the plasma-tests repo on your system without it
destroying all your real activities. Even though one run tests in a
nested
dbus sessions, kactivities will still load and meddle with your real
database
at the same time as the real daemon is. That gets messy and broken.
It also allows us to remove a hack in the plasma-tests script.
Test Plan:
Ran normal plasma, everything is the same.
Ran plasma-tests everything there now works properly
Reviewers: #plasma, hein
Reviewed By: #plasma, hein
Subscribers: apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6133
if any kscreen related activities occurred
during startup, the panel wouldn't be visible
yet, and this would assert. This often happens
when a screen gets disabled at startup
CCBUG:377280
if any kscreen related activities occurred
during startup, the panel wouldn't be visible
yet, and this would assert. This often happens
when a screen gets disabled at startup
CCBUG:377280
Summary:
this is for the following setup:
the primary screen is at position 0,0 and gets disconnected.
the other screen will be moved at 0,0 and becomes primary
the screen is reconnected, the events arrive in the followin order:
1) a new screen gets added, at 0,0 position
(not primary yet, it may be markedredundant)
2) the screen becomes primary, both screens still at 0,0
3) the old screen gets moved out of the way
in the end result none of the two need to be redundant.
adding the old one in the redundant list, will cause reconsideroutputs
to consider it and create a view for it.
BUG: 377808
Test Plan:
added and removed sevaral times a primary screen at 0,0
also tried other positions of screens to check it doesn't make regressions
Reviewers: #plasma, sebas, subdiff, broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D5323
Summary:
this is for the following setup:
the primary screen is at position 0,0 and gets disconnected.
the other screen will be moved at 0,0 and becomes primary
the screen is reconnected, the events arrive in the followin order:
1) a new screen gets added, at 0,0 position
(not primary yet, it may be markedredundant)
2) the screen becomes primary, both screens still at 0,0
3) the old screen gets moved out of the way
in the end result none of the two need to be redundant.
adding the old one in the redundant list, will cause reconsideroutputs
to consider it and create a view for it.
Test Plan: added and removed sevaral times a primary screen at 0,0
Reviewers: #plasma, broulik, sebas
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D5323