style: Only apply neutral entry focus color on lock screen

Commit a72c95de changed the focus style for all system entries
to a more neutral color, as the stronger focus often clashes
with the wallpaper background on the lock screen.

However that is not a concern for entries that appear over the
neutral system background. Worse, the neutral focus indication
provides so little contrast with the background there that is
not much of an indication anymore.

Address this by restoring the old focus indication for the
generic system_entry mix-in, but override it specifically on
the lock screen to avoid the clash with the wallpaper background.

Fixes a72c95de
Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6945
Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6880

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2922>
This commit is contained in:
Florian Müllner 2023-08-29 17:54:43 +02:00 committed by Marge Bot
parent 7095ef05e1
commit 92ccfe7f65
2 changed files with 6 additions and 1 deletions

View File

@ -280,7 +280,7 @@ stage {
@extend %entry_common; @extend %entry_common;
@include entry(normal, $c:$system_fg_color,); @include entry(normal, $c:$system_fg_color,);
&:hover { @include entry(hover, $c:$system_fg_color);} &:hover { @include entry(hover, $c:$system_fg_color);}
&:focus { @include entry(focus, $c:$system_fg_color, $fc:transparentize($system_fg_color, 0.5));} &:focus { @include entry(focus, $c:$system_fg_color, $fc:$selected_bg_color);}
&:insensitive { @include entry(insensitive, $c:$system_fg_color);} &:insensitive { @include entry(insensitive, $c:$system_fg_color);}
StLabel.hint-text { color: transparentize($system_fg_color, 0.3);} StLabel.hint-text { color: transparentize($system_fg_color, 0.3);}

View File

@ -155,6 +155,11 @@ $_gdm_dialog_width: 23em;
.unlock-dialog { .unlock-dialog {
background-color: transparent; background-color: transparent;
// %system_entry style override to have neutral focus color with wallpaper background
.login-dialog-prompt-entry {
&:focus { @include entry(focus, $c:$system_fg_color, $fc:transparentize($system_fg_color, 0.5));}
}
} }
.screen-shield-background { // just the shadow, really .screen-shield-background { // just the shadow, really