Summary:
It is not uncommon to run the same command repeatedly. In this case,
the history is actually unchanged - the item is removed from the first
position, and prepended again.
Test Plan:
run the same command twice, config file is not rewritten
run a new command, config is updated
Reviewers: #plasma, broulik, apol
Reviewed By: #plasma, broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D20383
Summary:
As discussed the env variables are no longer exported. Thus Qt
applications follow the default qpa platform they are compiled with and
thus still function if they are packaged with a Qt without QtWayland.
Plasma's internal processes pick the qpa platform depending on the
session type as well as our flatpak apps.
KRunner and Plasmashell are adjusted to not leak the env variable they
set for themselves.
Test Plan:
Started a wayland session, verified with KWin's debug console
that plasmashell and krunner are wayland. Launched kwrite from both plasma
and krunner and verified that it's xcb
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11447
Summary:
This is a preparation step to unset QT_QPA_PLATFORM from the wayland
startup session script. Setting QT_QPA_PLATFORM breaks 3rd-party Qt
software which does not bundle QtWayland. Most prominent example is
the Qt installer itself (see
https://bugreports.qt.io/browse/QTBUG-60222).
On the other hand our Plasma workspace applications need to be forced to
Wayland on a Wayland system. So we have a conflict between we want to
set QT_QPA_PLATFORM and we don't want to set QT_QPA_PLATFORM.
This change adds new API to KWorkspace to address this problem. The new
method adjusts the QT_QPA_PLATFORM based on the XDG_SESSION_TYPE
enviornment variable. It is completely opt-in. Meaning applications need
to explicitly add the call prior to creating the QGuiApplication and if
the user specifies either QT_QPA_PLATFORM env variable or any of the
-platform command line argument variants, the platform detection is
skipped.
The change also adjusts all plasma-workspace applications which should
use Wayland on Wayland to use the new API. The startup script on the
other hand still sets QT_QPA_PLATFORM. We also have applications outside
of plasma-workspace which needs this detection. Examples are:
* powerdevil
* systemsettings
* kinfocenter
Once this change is merged those applications can be adjusted by linking
against PW::KWorkspace and afterwards QT_QPA_PLATFORM can be unset from
startplasmacompositor.
Test Plan: See added autotest
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10816
Summary:
Consistent usage of install variables avoids mismatches for people who
make use of custom settings of install paths.
Reviewers: #plasma, apol
Reviewed By: apol
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10400
Summary:
Consistent usage of install variables avoids mismatches for people who
make use of custom settings of install paths.
Reviewers: #plasma, apol
Reviewed By: apol
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10400
Summary:
Don't go through the workaround introduced for X11 that makes it go mental.
BUG: 385693
Test Plan: Have been a happy krunner user since
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: ngraham, davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D10197
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:
enable actual keyboard navigation, as the previous
completely manual keyboard navigation in krunner completely broke
the screen reader support, rendering it inaccessible (while
potentially krunner is one of the most useful apps for blind
users)
Test Plan:
tested to navigate with keyboard (still similar behavior as before)
while having orca running, which correctly read the result entries
Reviewers: #plasma, davidedmundson, broulik
Reviewed By: #plasma, davidedmundson
Subscribers: gladhorn, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D7765
Summary:
If a PlasmaShellSurface for an already mapped window is created and set
to panel it affects other windows by adjusting the maximized area. This
happens when showing KRunner for the second time and later. To prevent
this and make KWin's life slightly easier we first set the panel behavior
to windows go below and then mark it as panel. Thus other windows are not
affected by opening KRunner.
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6657
Summary:
make the behavior similar to Dialog
create a plasmashell surface only when isVisible() as
some expose events can arrive there too, and also not
create the shell surface if the exposed surface is null
Test Plan: krunner seems to be more reliable
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: broulik, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D6299
Summary:
as showEvent is too soon, create the plasma surface on
:Expose event, and reposition the surface
Test Plan: krunner is correctly positioned with correct blur and shadows
Reviewers: #plasma, #plasma_on_wayland, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: hein, davidedmundson, graesslin, plasma-devel
Tags: #plasma_on_wayland
Differential Revision: https://phabricator.kde.org/D5748
Summary:
Panel is the best matching type which gives us the required behavior
like being on all desktops.
BUG: 370158
Reviewers: #plasma, broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D3038
Summary:
migrate the enabled runners from enabledCategories
to the more classic [Plugins] group
the krunner framework supports both, so as long
the enabledCategories entry isn't there,
it will work correctly with the other config format
Test Plan: ran on an existing krunnerrc with different sets of categories enabled, tested krunner and its kcm with it, all expected runner plugins were used both in the kcm and while searching with krunner
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D2873
CHANGELOG: KRunner global shortcuts are listed in a "Run Command" category rather than "krunner"
Differential Revision: https://phabricator.kde.org/D2426
Summary:
Reduces code duplication and we always opperate on cached value, that
is the platform is only checked once in application life cycle.
Reviewers: #plasma, hein
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D2342
Summary:
Using KDeclrative::QmlObject::rootObject before it's created blocks the
thread until it finishes so that code always "works" - but displays a
warning and is slower.
We now no longer get a warning on startup.
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D2086
It uses Plasma components with their own scaling and they get confused
about Qt's scaling, so better just disable it for now.
Differential Revision: https://phabricator.kde.org/D1765