In a Plasma Wayland session, kscreenlocker_greet is started by kwin_wayland,
so it doesn't inherit $DISPLAY currently. Additionally, there might not even
be an Xwayland instance running.
Remove the only non-optional use of $DISPLAY and drop the requirement.
The refreshes are async and we were cleaning it up at the async trigger
and populating it at the end. This created an intermediate invalid state
which confused the item selection code.
This change moves all the refreshing into one reset call so the view is
only refreshed once.
This helps us keep the frontend code simpler by not having to refresh to
show momentarily invalid information.
Summary:
Wayland has an entire new protocol for getting and setting clipboard
when we don't have focus. Unfortunately this means reinventing
QClipboard from the QPA.
Not mergable as-is, especially the hardcoded line in CMakeLists but
uploaded to show direction.
It uses the newly agreed approach of using QtWayland generated classes
in clients directly rather than writing full pimpl API-fixed wrappers
first,
as ultimately that didn't really help do anything.
Code is written so that it can be moved to KWindowSystem if needed by
KDEConnect or others.
Test Plan: Copying and pasting all over the place
This begins the process of porting plasma-workspace to PlasmaComponents3. At
this point, only the relatively easy work is done. Every file not ported
now has been given the reason for still using PC2 in a comment on the import
line so you can see at a glance what the blocker is by running
`grep -r "org.kde.plasma.components 2.0"` in the repo.
Everything is tested and there are no breakages or functional regressions. In
the process, a few unused imports are removed.
Here are the remaining PC3 omissions blocking what's left from getting easily
ported:
- No Highlight
- No ListItem
- No PageStack
- No ContextMenu
- No QueryDialog
- No ModelContextMenu
- TabBar has no left and right tab states
- ToolButton has no built-in method to show a menu when clicked
Many applets shouldn't actually appear on the phone, like
devicenotifier, the battery applet, the systray and so on
Populate all desktop files of the plasmoids with the proper
formfactors. on the desktop we keep showing everything.
on the phone most of those applets will be filtered out
Also take into account of the formfactors when populating the available
categories, wo we don't have the risk of seeing empty categories
the source model is set asyncronously so onComponentcomplete count is 0, and when the proper source is set the notify is not emitted. furthermore the source canchange at runtime, so count needs to be reevaluated every time this happens
Image takes a string and loads the relevant package at a given path
wallpapers+packageName
pluginId typically is the same as the package name on disk, but not
always, either due to bad metadata or it being deliberately mangled
during install to avoid escaped characters.
Returning the package path has the same desired effect for saving
chosen images by package names, but avoids the complexity above.
metaData presence is still queried to separate real packages from the
fake packages generated internally which represent just one image.
BUG: 423987
(cherry picked from commit 74e9f990ae)
Image takes a string and loads the relevant package at a given path
wallpapers+packageName
pluginId typically is the same as the package name on disk, but not
always, either due to bad metadata or it being deliberately mangled
during install to avoid escaped characters.
Returning the package path has the same desired effect for saving
chosen images by package names, but avoids the complexity above.
metaData presence is still queried to separate real packages from the
fake packages generated internally which represent just one image.
BUG: 423987
the source model is set asyncronously so onComponentcomplete count is 0, and when the proper source is set the notify is not emitted. furthermore the source canchange at runtime, so count needs to be reevaluated every time this happens
Currently in git master there are three options for Tray icon sizing/arrangement:
1. Scale to fit + automatic number of rows/columns
2. One auto-scaling row/column
3. Two auto-scaling rows/columns
After consultation with VDG folks and many discussions, we discovered that the
latter two settings are kind of useless and are unlikely to satisfy anyone.
Instead, what some people will actually want is a way to return to the pre-Plasma
5.20 style, with one or two rows/columns of small-ish, fixed size icons.
This commit changes those two options to provide exactly that, allowing people who
don't like auto-scaling icons to return to the way their System Tray looked before
Plasma 5.20, and can also be used for global themes which are trying to emulate
Windows or Cinnamon, which have tray icons like this.
This reverts commit edc64d04a1.
This commit unfortunately caused a serious regression. Another approach
will be needed to solve 176650 and 417070.
BUG: 423995
FIXED-IN: 5.19.4
CCMAIL: alexander.lohnau@gmx.de
This reverts commit edc64d04a1.
This commit unfortunately caused a serious regression. Another approach
will be needed to solve 176650 and 417070.
BUG: 423995
FIXED-IN: 5.19.4
CCMAIL: alexander.lohnau@gmx.de
Right now we handle the "plugged in but not charging" state but not the
state where you're plugged in but the power supply doesn't supply enough
power to prevent discharging anyway. We can wiggle the logic around to
catch this case with the existing one for the "plugged in and not
charging" state.