The startup feedback uses theme adjusted colors, we can use standard
foreground colors for the panels for better contrast rather than relying
on the shadow.
Now that plasma-keyboard has had its first release, we can switch to it
as the default keyboard and drop maliit-keyboard (and its Qt 5 dependency).
We also drop the maliit-keyboard kcm here (moved to
https://invent.kde.org/devinlin/maliit-keyboard-kcm), which is replaced by the one
installed by plasma-keyboard.
if that's not installed at run-time, plasma-mobile shell opens without top/bottom bars and the following is logged in journal:
nov 30 10:34:27 mobian plasmashell[4763]: QQmlComponent: Component is not ready
nov 30 10:34:27 mobian plasmashell[4763]: kf.plasma.quick: "file:///usr/share/plasma/shells/org.kde.plasma.mobileshell/contents/views/Panel.qml"
nov 30 10:34:27 mobian plasmashell[4763]: "Error loading QML file.\n15: module \"org.kde.kwindowsystem\" is not installed\n"
checks
Handle situations where the GetConfigOperation never succeeds (really early start
of initialstart) with callbacks so users can still set the scale. Also
guard more aggressively against nullptr
This adds support for specifying options needed to deal with phone
display panel pecularities (ex. screen curves, notches, punch holes)
This is implemented as settings in ~/.config/plasmamobilerc, which can
set panel heights, paddings, and center spacings to duck display
cutouts. The pixel values are scaling independent, and so are not
affected when the display scaling is changed.
This is then exposed over DBus, so that components from outside of
plasmashell (ex. KWin) can access it easily without needing to connect to
kscreen themselves. Each screen is exposed as a single object.
Currently support is only added in the status bar and the navigation
panel.
Currently all screens have the settings applied. In the future, we may
want to limit this just to the internal screen (?)
---
This also adds a "devices" folder (in `devices/configs`) where per-device configs can be set.
This is installed to `/usr/share/plasma-mobile-device-configs`.
In `plasmamobilerc` (installed to `/etc/xdg/plasmamobilerc`, or
`~/.config/plasmamobilerc`), envmanager will read:
```toml
[Device]
device=oneplus-enchilada
```
for the device config to use and write its settings to
`~/.config/plasma-mobile/plasmamobilerc`.
Don't block plasmashell when doing kscreen calls (make them async). Also
add a nullptr check to rotationplugin, which potentially could be a fix
for crashes on the PinePhone.