authPrompt: Use placeholder label to avoid layout changes
We don't want to show a caps-lock warning when showing a non-password entry, but we also don't want the layout to jump when changing the label's visibility. Achieve that by inserting an empty placeholder label that we can show whenever the caps-lock warning is hidden. https://gitlab.gnome.org/GNOME/gnome-shell/issues/2215
This commit is contained in:
parent
41da4b0681
commit
0d766dcf70
@ -85,12 +85,19 @@ var AuthPrompt = GObject.registerClass({
|
|||||||
|
|
||||||
this._initEntryRow();
|
this._initEntryRow();
|
||||||
|
|
||||||
|
let capsLockPlaceholder = new St.Label();
|
||||||
|
this.add_child(capsLockPlaceholder);
|
||||||
|
|
||||||
this._capsLockWarningLabel = new ShellEntry.CapsLockWarning({
|
this._capsLockWarningLabel = new ShellEntry.CapsLockWarning({
|
||||||
x_expand: true,
|
x_expand: true,
|
||||||
x_align: Clutter.ActorAlign.CENTER,
|
x_align: Clutter.ActorAlign.CENTER,
|
||||||
});
|
});
|
||||||
this.add_child(this._capsLockWarningLabel);
|
this.add_child(this._capsLockWarningLabel);
|
||||||
|
|
||||||
|
this._capsLockWarningLabel.bind_property('visible',
|
||||||
|
capsLockPlaceholder, 'visible',
|
||||||
|
GObject.BindingFlags.SYNC_CREATE | GObject.BindingFlags.INVERT_BOOLEAN);
|
||||||
|
|
||||||
this._message = new St.Label({
|
this._message = new St.Label({
|
||||||
opacity: 0,
|
opacity: 0,
|
||||||
styleClass: 'login-dialog-message',
|
styleClass: 'login-dialog-message',
|
||||||
|
Loading…
Reference in New Issue
Block a user