This reverts commit 2e4b1e1f2d.
That commit was too broad in scope and changed the sizes of more pieces
of text than were needed to fix Bug 442650. It is fixed correctly in
this commit.
CCBUG: 442650
Use the system's virtual keyboard instead of relying on
QtVirtualKeyboard specifically for the lock screen.
It means less code (when we can remove the virtual keyboard part),
better integration and one dependency less.
1c0c824cc5 uses Screen but that is inside
in QtQuick.Window. This happens to work in the lockscreen (something else
importing it above it?) but breaks in the sddm theme, with the default image
being super pixelated because sourceSize defaults back to 22x22.
BUG:418546
Lock screen avatar is blurry when using HiDPI scaling. This fixes that
by adding a multiplication factor to the size of the retrieved image.
CCBUG: 418546
The context property version is slower to access and won't be supported
in Qt6. Let's port away from it and use the singleton version instead.
Here was my full process for making this change:
1. Made the change with `find . -name '*.qml' | xargs perl -pi -e 's/units\./PlasmaCore\.Units\./g'`
2. Verified no more occurrences with `grep -r " units."`
3. Made sure this didn't change any comments in a silly way by inspecting the output of `git diff | grep "+ " | grep "//"`
4. Manually inspected the full git diff to make sure there were no other unintentional or silly changes (there were none)
5. verified that all changed files have the PlasmaCore import with the correct name with `for FILE in `git status | grep modified | cut -d ":" -f 3`; do grep -q "as PlasmaCore" $FILE || echo "$FILE needs the PlasmaCore import"; done`
It was broken because its visiblity was not bound to activeFocus
correctly. This would have broken in Qt6 anyway but fixing it now makes
the focus effect work as intended again.
BUG: 433755
FIXED-IN: 5.22.3
there was a behavioral change in qtvirtualkeyboard, where now it
reparents itself to the root item (done by purpose to make sure is
always on top of any overlay), not respecting the parent's geometry
so move it in the kwyboard widget itself
BUG:427934
Commit bcaf3886 removed the property `m` in UserDelegate.qml, but it is still used by
`userListCurrentModelData` in SessionManagementScreen.qml at least.
This broke switching to an existing session via the "Switch User" button on the lock screen or the
application launcher/menu, it just hung with an empty screen and this runtime error in the logs:
file:///usr/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/lockscreen/LockScreenUi.qml:444: TypeError: Cannot read property 'vtNumber' of undefined
Adding it back makes switching work again (and gets rid of the runtime error).
CCBUG: 423526
FIXED-IN: 5.20.3
There were three principal sources of errors and warnings:
1. Un-ported `onFooChanged` statements
2. `config.fontSize` being unconditionally referenced from components
without access to it (it comes from the SDDM config)
3. Accessing units from the context property rather than the singleton
All are fixed now. Tested with:
1. `sddm-greeter --test-mode --theme ~/kde/usr/share/sddm/themes/breeze/`
2. `~/kde/usr/lib64/libexec/kscreenlocker_greet --testing --theme ~/kde/src/plasma-workspace/lookandfeel`
3. `/kde/usr/lib64/libexec/ksmserver-logout-greeter --fakearg`
No regressions found.
BUG: 425349
FIXED-IN: 5.20
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
On the lockscreen or on a single user system you can currently move the user
item horizontally across the screen without it doing anything. If the list only
contains one entry, disable interacting with it.
Currently on the login screen after some idle time (60 seconds) all controls become hidden, including clock. This commit makes the clock remain visible after idle time (similar to the lock screen).
Summary:
After D28144, some animations are now too long because they were inappropriately
multiplying a duration value. That's no longer necessary, so let's remove the
multiplication.
Depends on D28144
Test Plan: Various things that were a bit too slow before feel just right now
Reviewers: #vdg, #plasma, cblack
Reviewed By: #vdg, #plasma, cblack
Subscribers: cblack, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28238
This reverts commit d46b018665.
Due to the looming LTS release date and bugs (415098, 414873, 4145094, 414852) that keep piling up, we are reverting the QQC2 and PC3 port of the SDDM theme.
Since this patch was also related to that port, we need to revert it as well.
Summary:
QQC2 StackView has a major behavioural difference
QQuickStackViewPrivate::setCurrentItem
item->setFocus(true);
This as a general rule makes sense, especially if you're pushing a whole
focus scope onto the stackView, it would automatically select the right
element. However as our base was not a focus scope the
SessionManagementScreen instance itself got focus, taking it away from
the child password box.
LockScreenUi has to be changed so that it sets the initial focus the
same even though the stackview is on QQC1.
Test Plan:
qmlscene in the sddm-theme directory with the dummydata setup
locked the screen regularly
Lots of gammaray
Reviewers: #plasma, ngraham
Reviewed By: ngraham
Subscribers: davidre, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25261
Summary:
Currently the avatar in the logout screen is noticeably smaller than the avatar in the lock and logout screens.
This patch roughly bases the size value on what is produced in the lock and logout, and then applies it to the logout screen.
Test Plan:
Before (logout screen):
{F7680624}
After (logout screen):
{F7680632}
Before (lock screen):
{F7680634}
After (lock screen):
{F7680635}
Reviewers: #plasma, #vdg, ngraham
Reviewed By: #vdg, ngraham
Subscribers: davidedmundson, ngraham, plasma-devel
Tags: #plasma
Maniphest Tasks: T11093
Differential Revision: https://phabricator.kde.org/D25024
Summary:
QQC2 StackView has a major behavioural difference
QQuickStackViewPrivate::setCurrentItem
item->setFocus(true);
This as a general rule makes sense, especially if you're pushing a whole
focus scope onto the stackView, it would automatically select the right
element. However as our base was not a focus scope the
SessionManagementScreen instance itself got focus, taking it away from
the child password box.
LockScreenUi has to be changed so that it sets the initial focus the
same even though the stackview is on QQC1.
Test Plan:
qmlscene in the sddm-theme directory with the dummydata setup
locked the screen regularly
Lots of gammaray
Reviewers: #plasma, ngraham
Reviewed By: ngraham
Subscribers: davidre, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D25261
Summary: The action buttons were missing a visual indication of when they were being pressed so this patch adds it by drawing another an animated rectangle when the button is pressed.
Test Plan: {F6819154}
Reviewers: #vdg, #plasma, ngraham, davidedmundson
Reviewed By: #vdg, #plasma, ngraham, davidedmundson
Subscribers: broulik, abetts, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21062
Summary:
This patch replaces the PlasmaComponents labels in Clock.qml with QQC2 ones. This resolves the issue of the clock letters/numbers getting clipped.
BUG: 404651
FIXED-IN: 5.15.3
Test Plan:
Before and after
{F6680490}
Reviewers: #plasma, #vdg, filipf, ngraham, hein
Reviewed By: #plasma, #vdg, ngraham, hein
Subscribers: mart, davidedmundson, plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19647
Summary:
This patch:
- tells the login screen to modify the font size specified in theme.conf and the lock screen to modify the user's default theme's font size instead
- makes sure that the login screen session and keyboard buttons take this new approach too
- raises the font size of "Start New Session" on the lock screen (to match the rest)
- raises the artist/track font sizes (to match the password field)
Test Plan:
This patch resolves the problem of
(1) The fonts on the login screen and
{F6676520}
(2) the fonts on the lock screen
{F6676524}
not having matching sizes.
Reviewers: #vdg, #plasma, ngraham, filipf
Reviewed By: #vdg, ngraham, filipf
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19631
Summary: This patch improves the appearance of the sddm theme and the lock screen with software rendering in place (QT_QUICK_BACKEND=software) by adding an outline to the action buttons, correcting the error that prevented the username outline from appearing and by adding a background to the action buttons that are otherwise impossible to see on top of a very bright background in software rendering mode.
Test Plan:
Before (white background):
{F6673579}
After (white background):
{F6673580}
Before (Next):
{F6673581}
After (Next):
{F6673582}
Reviewers: #plasma, #vdg, ngraham, filipf
Reviewed By: #vdg, ngraham
Subscribers: plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19609
Summary: This patch removes the shadow from the usernames on the login and lock screens. It also restricts the clock shadow to just the opaque (unfocused) versions of each screen.
Test Plan:
{F6648570}
{F6648571}
Reviewers: #vdg, ngraham, filipf
Reviewed By: #vdg, ngraham, filipf
Subscribers: filipf, plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19468
Summary: Added in D16879, the background circle was designed to work on a blurless login screen. Since we have abandoned that idea, it's good to adjust it to our present needs. This patch lowers the opacity of the circle and removes the double border it created.
Test Plan:
Before:
{F6649241}
{F6649240}
After:
{F6649244}
{F6649243}
Reviewers: ngraham, #vdg, #plasma, rooty
Reviewed By: ngraham, #vdg, rooty
Subscribers: abetts, plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19478
Summary:
Unlike in the logout screen, our action buttons in the SDDM theme currently offer no visual feedback when interacted with. This patch adds a minimal yet effective amount of opacity shifting, as well as a transparent circle behind the button. The same circle is added to logout screen, where it remains always visible to better indicate the chosen option.
BUG: 393048
Test Plan:
Logout:
{F6664346}
Lock:
{F6664347}
Login:
{F6664348}
Reviewers: rooty, ngraham, #vdg, #plasma
Reviewed By: rooty, ngraham, #vdg
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19479
Summary:
This patch fixes the "Unable to assign [undefined] to QColor" and "Unable to assign [undefined] to int" errors that occur in UserDelegate.qml (188:9, 187:9) and Clock.qml (53:13, 52:13, 60:13, 59:13), visible in sddm-greeter's output.
It does so by resetting the label style to Normal (instead of undefined). Once Text.Normal is set, the outline color is set as transparent (but that doesn't matter since there's no outline to begin with).
Test Plan: Works the same, looks the same, no error in output.
Reviewers: #vdg, #plasma, broulik
Reviewed By: #plasma, broulik
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D19577
Summary: Due to Qt bug: https://bugreports.qt.io/browse/QTBUG-70138 (KDE bug: https://bugs.kde.org/show_bug.cgi?id=401644) we have label opacity utterly failing when the logout screen is superimposed over a bright background. Even though QtRendering is the inferior renderer, this patch uses it as a workaround for the aforementioned bug since ugly (if it ever would be) text is better than (almost) no text.
Test Plan:
Before:
{F6656331}
After:
{F6656332}
Reviewers: #plasma, ngraham, rooty
Reviewed By: ngraham, rooty
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D19510
Summary: Same result as D19433, except not hardcoded anymore (adjusts for the default font size the user sets).
Reviewers: #vdg, #plasma, filipf, ngraham
Reviewed By: #vdg, filipf, ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D19547
Summary: This patch makes the user avatar that is selected (in focus) larger than the other unselected/deselected avatars surrounding it (provided there is more than one user).
Test Plan: {F6651290}
Reviewers: #vdg, ngraham
Reviewed By: #vdg, ngraham
Subscribers: davidedmundson, abetts, filipf, plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19372
Summary:
This patch tightens the shadows around the clock in the Breeze SDDM theme and lock screen so as to prevent the appearance of a diffuse dark glare that appears around the clock on top of very bright backgrounds.
In addition, it tightens the username/prompt shadows to match the shadows used in desktopcontainment.
Test Plan:
Username shadows, before:
{F6640921}
and after:
{F6640923}
(the new shadows take after the ones in desktopcontainment)
Before (white background):
{F6635960}
After (white background):
{F6641670}
Before (Next):
{F6635964}
After (Next):
{F6641671}
Reviewers: #vdg, ngraham, filipf, mart
Reviewed By: #vdg, ngraham, filipf, mart
Subscribers: mart, plasma-devel
Tags: #plasma
Maniphest Tasks: T10325
Differential Revision: https://phabricator.kde.org/D19325
Summary:
QML shadows aren't supported with software rendering, so the white text often has poor readability.
This patch falls back to outlines when using software rendering to ensure adequate readability.
BUG: 398317
FIXED-IN: 5.15.0
Test Plan:
No visual change with hardware rendering of some sort.
When forcing software rendering, I get outlines instead of shadows
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18733
Summary:
This patch removes the line of code that required that the lock screen use a light font style.
This patch is also closely related to the fixes in D17905, D17906 and D17907.
Test Plan:
Worst case scenario (legibility extremely poor):
{F6520750}
Before and after the patch:
{F6520747}
Reviewers: ngraham, #vdg, #plasma
Reviewed By: ngraham, #vdg
Subscribers: abetts, davidedmundson, filipf, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D17916
Summary:
As requested in D16031, tweak the login and lock screens in only fairly non-controversial ways:
- Add a dark background behind the user avatar and a shadow behind the username
- Tweak the clock shadow to make it a tiny bit stronger
- Reduce clock shadow redundancy by moving it into the `Clock` item and out of the clients
- Don't use hardcoded shadow colors anymore
With the existing UI, these are very subtle changes that should barely be visible.
This diff does **NOT** include the following changes from D16031:
- Blur-less login screen
- New icons for the buttons
- Horizontal bar on the bottom to hold the buttons for the virtual keyboard, session chooser, and battery status
Test Plan:
Login screen:
{F6424115, size=full}
Lock screen:
{F6435507, size=full}
{F6435506, size=full}
{F6435519, size=full}
{F6435518, size=full}
{F6435517, size=full}
{F6435516, size=full}
{F6435515, size=full}
{F6435514, size=full}
{F6435513, size=full}
{F6435512, size=full}
{F6435511, size=full}
{F6435510, size=full}
{F6435523, size=full}
{F6435522, size=full}
{F6435521, size=full}
{F6435509, size=full}
{F6424114, size=full}
Reviewers: davidedmundson, #vdg, #plasma
Reviewed By: davidedmundson, #plasma
Subscribers: mart, rooty, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D16879