SDDM 0.21 still runs its greeter on X11 and sets
QT_IM_MODULE=qtvirtualkeyboard, but since b1eed7f7 the theme only forwards
to Keyboards.KWinVirtualKeyboard, which only exists under a running KWin.
Qt Virtual Keyboard stays loaded as the input method, and because the theme
no longer instantiates its input panel, Qt creates its own
DesktopInputPanel, which pops up whenever a text field gains focus, a plain
mouse click included. The keyboard button was dead there as well, because
KWinVirtualKeyboard.available is false and its visible property never
becomes true.
Bring the X11 fallback back as a theme-private component: on X11
VirtualKeyboard.qml loads the Qt Virtual Keyboard panel that
plasma-workspace dropped in f1c83d15 (instantiating QtVK.InputPanel is what
keeps Qt from creating its own panel), on Wayland it keeps forwarding to
Keyboards.KWinVirtualKeyboard. The button is hidden when no virtual
keyboard is available at all.
The panel itself carries no animation: it is shown and hidden by animating
the loader that holds it, which slides it below the bottom edge while
fading it out. Keeping the animation in one place matters because Qt
Virtual Keyboard's own hide key turns InputMethod.visible off before the
theme is notified, and a panel that hid itself as soon as it became
inactive would disappear in a single frame instead of sliding out. The
panel is only deactivated once it is fully off-screen, so that hiding it
does not cut the animation short.
BUG: 527138
This reverts commit 1e77a2df15.
Some references to the footer were not fixed, breaking the login method:
file:///usr/share/sddm/themes/breeze/Login.qml:65: ReferenceError: footer is not defined
It removed sessionButton which is still needed and referenced, which
also broke login:
file:///usr/share/sddm/themes/breeze/Main.qml:245: ReferenceError: sessionButton is not defined
Had comments noting to keep the implementations in sync between the
lockscreen and sddm versions, not ideal.
Port to a reusable component in plasma-workspace, so they can both use
the same one without concern of keeping them in sync. Also will allow
plasma-login-manager to become the 3rd consumer of this component
without further duplicating code.
This change adds translation contexts to all translatable strings in qml
files that did not have any. Occasionally, the existing translation
contexts are updated for consistency with the newly added ones.
The string themselves are unchanged, save for one instance where the
Accessible strings were somewhat awkward and were a bit streamlined, and
one set of accessible strings in PanelConfiguration that were not
marked as translatable, but are now.
Co-authored-by: Nate Graham <nate@kde.org>
qmllint fails to properly handle the Qt.application property
(QTBUG-119643). Upstream recommends using the Application singleton
instead, as it resolves issues with the types (which are variable
depending on the imported modules) and is more accessible for tooling
(codereview qtdeclarative/+/350080). The main use for Qt.application
in p-d is to access the layoutDirection.
This change ports p-d to using the Application singleton.
An opacity of 0 will still render the items, particularly the
blinking password field cursor will still be active.
This was addressed for the lock screen in 45e0a722 of
plasma-workspace but not for the sddm-theme.
While the mentioned commit also set "enabled" to avoid
some alleged cursor blinking, I could not reproduce this
and just "visible" false seems to work fine.
Signed-off-by: Kiriakos Antoniadis <kiriakos.antoniadis@advantest.com>
Part of https://invent.kde.org/plasma/plasma-desktop/-/issues/149
Right now there are some labels that don't achieve WCAG AA, which
specifies a text contrast of at least 4.5:1. The causes are varied, but
this commit fixes them all to exceed 4.5:1.
In particular, standardizing on an opacity level of 0.75 raises the text
contrast of those labels to:
- 5.73:1 on the opaque gray window background color
- 5.44:1 on a translucent background in Plasma with the current default
wallpaper (though this will vary a bit with different backgrounds)
Now they meet WCAG AA.
Users don't have the same passwords, so it doesn't serve any purpose to
keep anything in the password field when the selected user changes.
BUG: 502514
FIXED-IN: 6.4.0
Fixes an error message that appeared when testing SDDM.
The fallback string being empty is OK because this item will not be visible when keyboard.layouts has a size of 1 or less.