Right now we change the intensity of shadows based on the color scheme's
text color, but with a property called "lightBackground". This indicates
that we wanted to do it based on the background color itself, but did
not or could not, so settled on using the text color as a proxy. However
this is wrong; there is no relationship between the active color
scheme's text color and the color of the background image.
Even if we could or did fix that, it would probably still be wrong,
because using lighter shadows on a genuinely light background would
result in worse contrast and readability, especially if the light
background was very visually busy.
For these reasons, in most other places, we have since settled on the
mantra of "shadows should be black", and this commit makes the lock and
login screens follow that convention as well.
BUG: 449985
FIXED-IN: 5.24.2
(cherry picked from commit 146ef22fcb)
The shadows can look rather harsh against light backgrounds; this commit
softens them a little bitty bit to reduce that effect, while still
preserving adequate contrast to keep the text readable.
BUG: 436247
FIXED-IN: 5.22
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`
Without this, the virtual keyboard appears and takes focus, which
doesn't make sense:the password field needs to retain focus or else
the keystrokes you type using the virtual keyboard get eaten.
BUG: 430209
FIXED-IN: 5.21
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
Summary:
Even when the vendor logo is turned off it can be briefly seen when the login screen changes from the fadeout state back into normal.
Comments in other code say that "OpacityAnimator when starting from 0 is buggy (it shows one frame with opacity 1)" so this patch replaces it with NumberAnimation.
There's also a minor fix included - placing the drop shadow sooner in the hierarchy because it should be drawn underneath an object, not in front of it.
Test Plan:
Reduce the fadeout time to something small and then:
`sddm-greeter --test-mode --theme /usr/share/sddm/themes/breeze`
Reviewers: ngraham, cblack, #plasma, mart
Reviewed By: ngraham, #plasma, mart
Subscribers: mart, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D29351
This reverts commit 5c8ce892e3.
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.
In b7b25010aa the import line was changed
but nothing else was, causing errors in QML loading which ultimately
prevented SDDM from loading the theme.
BUG: 414252
CCMAIL: i@guoyunhe.me
Summary:
The TableView in digital clock widget time zone configuration is replaced with ListView. Other UI didn't change.
{F7635385}
Reviewers: #plasma, #plasma_workspaces, ngraham
Reviewed By: ngraham
Subscribers: GB_2, ahiemstra, broulik, kmaterka, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D24798
Summary: The Breeze SDDM theme now shows a logo that can be configured by distro vendors or curious users or anyone else.
Test Plan:
Test configuration and defaults.
Default logo:
{F7028488}
Example with a distro logo:
{F7023244}
Reviewers: #vdg, #plasma, filipf, ngraham
Reviewed By: #vdg, filipf, ngraham
Subscribers: GB_2, Codezela, filipf, davidedmundson, broulik, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D22458
Summary: Components that used QQC1 in `sddm-theme/` (excluding the symlinked `components` folder) have been changed to use QQC2.
Test Plan:
Ensure no loss of functionality, style, or bugs from the port of QQC1 to QQC2.
{F7256235}
Reviewers: #plasma, #vdg, davidedmundson, filipf
Reviewed By: #plasma, #vdg, davidedmundson, filipf
Subscribers: ndavis, GB_2, ngraham, filipf, davidedmundson, plasma-devel
Tags: #plasma
Maniphest Tasks: T10958
Differential Revision: https://phabricator.kde.org/D21815
Summary:
Otherwise SDDM has to load all users even if they're not shown.
See https://github.com/sddm/sddm/pull/1017
Test Plan: Using this for several releases downstream to support >1500 users.
Reviewers: #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: ngraham, davidedmundson, filipf, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D24333
Summary: When we updated the fonts in the sddm-theme, we bumped the default size from 9pt to 10pt. We missed adding the relevant code to the virtual keyboard button so it remained 9pt. This patch brings it up to 10pt.
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21614
Summary:
It's a weird thing to do, and that's causing us to hit
https://bugreports.qt.io/browse/QTBUG-75900 when it tries to lookup a
property (icon) that we don't have.
BUG: 407220
Test Plan: Opened sddm-greeter --test-mode --theme clicked button
Reviewers: #plasma, fvogt
Reviewed By: fvogt
Subscribers: fvogt, apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21274
Summary: Currently there is no spacing between the labels of action buttons, leading to crammed text with longer translations which are not split up into more rows.
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D21279
Summary:
Currently, when you log in you can see a short freeze which looks bad. This patch adds some feedback by disabling and reducing the opacity of the controls after you begin the login (a busy cursor wouldn't work well, because it only changes when you move the mouse).
{F6800357}
Test Plan: Log in to a user.
Reviewers: #plasma, #vdg, ngraham
Reviewed By: #vdg, ngraham
Subscribers: ngraham, #vdg, plasma-devel, #plasma
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D20902
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:
[copy-pasted from T10500:]
Problems with the current term:
- It's a somewhat severe-sounding technical term that doesn't intrinsically mean much to the average person. To the extent that it does, the connotations may be negative (e.g. when a misbehaving kid is being kept out of school)
- Our two major closed-source desktop competitors (macOS and Windows) both use the term "Sleep", so user familiarity with "Suspend" is low and falling all the time
I'd like to propose that we use "Sleep" instead, to address the above issues. It's a nicer
word in general, and since it's what our competitors use, we benefit from user familiarity.
We also recently adopted a moon icon with Zs for this, which visually connotes sleep. So it
would make sense to update the string too, because then the string and the icon will both
match.
Test Plan:
KRunner, searched for "Sleep": {F6640273}
KRunner, searched for "Suspend": {F6640284}
Kickoff, searched for "Sleep": {F6640309}
Kickoff, searched for "Suspend": {F6640315}
SDDM theme: {F6626026}
Logout screen: {F6626010}
Logout widget, UI: {F6626034}
Logout widget, config: {F6626035}
Reviewers: #vdg, #plasma, davidedmundson, filipf, mart
Reviewed By: #vdg, #plasma, filipf, mart
Subscribers: abetts, filipf, davidedmundson, plasma-devel
Tags: #plasma
Maniphest Tasks: T10500
Differential Revision: https://phabricator.kde.org/D19185
Summary:
This patch adds the buttons Suspend, Restart, and Shut Down to the username prompt screen that appears once the Type User button is clicked so the user is able to suspend/restart/shut down from that screen without having to return to the initial login screen.
It also replaces the "Back" button with "List Users" (and an appropriate icon) on account of the latter being a more accurate description of what the screen goes back to once the button is clicked (and in case of future improvements, enables it to become a standalone login screen as well).
Test Plan:
Before: {F6605023}
After: {F6605026}
Reviewers: #vdg, #plasma, filipf, davidedmundson, ngraham
Reviewed By: #vdg, #plasma, filipf, davidedmundson, ngraham
Subscribers: abetts, davidedmundson, ngraham, filipf, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18893
Summary: The "Different User" action button label is wrong. The respective button switches to a screen where usernames are manually inputted. The patch proposes a better label and also renames the label in this manual input screen.
Reviewers: ngraham, #plasma, #vdg, hein
Reviewed By: ngraham, #plasma, #vdg, hein
Subscribers: rooty, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D18831
Summary:
Meaning pressing enter just wakes up the display.
Behaviour now matches lock screen.
BUG: 402957
Test Plan: Ran SDDM
Reviewers: #plasma, ngraham
Reviewed By: ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D17997
Summary:
Clone of b9f9581f99 which was only applied
to the lock screen.
CCBUG: 402957
Test Plan: sddm-greeter --test-mode --theme
Reviewers: #plasma, ngraham
Reviewed By: ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D17996
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
Summary: "Login" is a noun: "I have a login for the system." This is not appropriate for a button title that is used as an action; the correct verb-based string is "Log In".
Test Plan: {F6311398}
Reviewers: #vdg, #plasma, abetts
Reviewed By: #vdg, abetts
Subscribers: abetts, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D16035
Summary:
"Shutdown" is a noun ("The nuclear reactor is experiencing a shutdown!")
"Shut Down" is an imperative command with a verb ("Shut down the nuclear reactor!"), which is how everything else is phrased.
Test Plan:
- Login screen button now says "Shut Down"
- Searching for "shut down" in KRunner brings up the appropriate option ("shutdown" still works too)
- KRunner says, "Shut down the computer"
Reviewers: #vdg, #plasma, davidedmundson
Reviewed By: #plasma, davidedmundson
Subscribers: davidedmundson, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D15878
Summary:
for both lockscreen and login screen:
* display the wallpaper and the clock with a shadow by default
* at the first mouse or keyboard input, make the input fields appear
* the actual controls appear pretty fast
* the wallpaper starts to blur, desaturate and fade to darker
* after 10 seconds make the controls disappear again
* as soon as anything is written in the password field never fade out the controls
* if the virtual keyboard is open, never fade out the controls
* if anything is pushed on the stack, like "switch user", never fade the controls
* Esc clears the field and makes controls disappear (closing keyboard if needed)
the fade won't happen if the background is a simple color
BUG: 369676
BUG: 388622
FIXED-IN: 5.13
Depends on D12314
Recommended D11309 and D11308 to change the default wallpaper to plasma wallpaper
Test Plan: tested the behavior of all the above points
Reviewers: #plasma, #vdg, ngraham
Reviewed By: #vdg, ngraham
Subscribers: zzag, abetts, davidedmundson, ngraham, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11928
Summary:
Replace "different user" icon on SDDM login screen to match icon used on
unlock screen. Original icon was `system-search`, now changed to `system-switch-user`.
BUG: 392830
Test Plan:
- Recompile `plasma-workspace`
- Log out of current session
- Check that `Different User` icon is now a figure with an arrow
Reviewers: ngraham, #vdg, #plasma, davidedmundson
Reviewed By: ngraham, #vdg, #plasma, davidedmundson
Subscribers: abetts, sebas, davidedmundson, #vdg, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D12036
Summary:
Similar to D4893, use a state machine to track the status of the
keyboard and animate the open/close.
this improves also the layout on low and weird resolutions when
there isn't much available space
Test Plan:
tested with many different window sizes, to make sure it
behaves better than before
Reviewers: #plasma, davidedmundson, graesslin, broulik
Reviewed By: #plasma, broulik
Subscribers: apol, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D5254
Summary:
Just like in the lock screen this adds support for virtual keyboard.
Note: this requires adjustments in sddm, the greeter must specify the
env variable QT_IM_MODULE=qtvirtualkeyboard to have the virtual keyboard
shown.
If the virtual keyboard is not available, the button to enable it will
not be shown.
Test Plan: run in qmlscene
Reviewers: #plasma
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D5061
Summary:
take into account the size of the empty area before the
user icons, make the clock disappear when there isn't
enough room for it anymore, as user icons
are more important. Same change in queue for
the lock screen as well
Test Plan:
tested in sddm test ui, resized the window to different sizes
to veryfy the layout looks sane in different conditions and
that disappears first the clock, then the user list and the
input fields always stay uncovered
replaces D5063
Reviewers: #plasma, graesslin, davidedmundson
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D5126
When we default to the user input we would not remember the user name.
CHANGELOG: Login screen now remembers the last user name for domain logins where the user list is unavailable
Differential Revision: https://phabricator.kde.org/D3462