Revert "unlockDialog: Remove 'Login as another user' Label"
This reverts commit c6a79fafc
. The back button doesn't really work
as a replacement for going back to the login screen.
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1006
This commit is contained in:
parent
ead73e5195
commit
06565542e7
@ -1,7 +1,7 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||
/* exported AuthPrompt */
|
||||
|
||||
const { Clutter, Gdm, Gio, GObject, Pango, Shell, St } = imports.gi;
|
||||
const { Clutter, GObject, Pango, Shell, St } = imports.gi;
|
||||
|
||||
const Animation = imports.ui.animation;
|
||||
const Batch = imports.gdm.batch;
|
||||
@ -129,7 +129,7 @@ var AuthPrompt = GObject.registerClass({
|
||||
y_align: Clutter.ActorAlign.CENTER,
|
||||
child: new St.Icon({ icon_name: 'go-previous-symbolic' }),
|
||||
});
|
||||
this.cancelButton.connect('clicked', () => this._onCancelButtonClicked());
|
||||
this.cancelButton.connect('clicked', () => this.cancel());
|
||||
this._mainBox.add_child(this.cancelButton);
|
||||
|
||||
let entryParams = {
|
||||
@ -382,15 +382,6 @@ var AuthPrompt = GObject.registerClass({
|
||||
});
|
||||
}
|
||||
|
||||
_onCancelButtonClicked() {
|
||||
if (this._mode == AuthPromptMode.UNLOCK_ONLY) {
|
||||
let screenSaverSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.screensaver' });
|
||||
if (screenSaverSettings.get_boolean('user-switch-enabled'))
|
||||
Gdm.goto_login_session_sync(null);
|
||||
}
|
||||
this.cancel();
|
||||
}
|
||||
|
||||
setMessage(message, type) {
|
||||
if (type == GdmUtil.MessageType.ERROR)
|
||||
this._message.add_style_class_name('login-dialog-message-warning');
|
||||
|
@ -1,7 +1,7 @@
|
||||
// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
|
||||
/* exported UnlockDialog */
|
||||
|
||||
const { AccountsService, Atk, Clutter, Gdm,
|
||||
const { AccountsService, Atk, Clutter, Gdm, Gio,
|
||||
GnomeDesktop, GLib, GObject, Meta, Shell, St } = imports.gi;
|
||||
|
||||
const Background = imports.ui.background;
|
||||
@ -625,6 +625,24 @@ var UnlockDialog = GObject.registerClass({
|
||||
|
||||
this._promptBox.add_child(this._authPrompt);
|
||||
|
||||
let screenSaverSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.screensaver' });
|
||||
if (screenSaverSettings.get_boolean('user-switch-enabled')) {
|
||||
let otherUserLabel = new St.Label({
|
||||
text: _('Log in as another user'),
|
||||
style_class: 'login-dialog-not-listed-label',
|
||||
});
|
||||
this._otherUserButton = new St.Button({
|
||||
style_class: 'login-dialog-not-listed-button',
|
||||
can_focus: true,
|
||||
child: otherUserLabel,
|
||||
reactive: true,
|
||||
});
|
||||
this._otherUserButton.connect('clicked', this._otherUserClicked.bind(this));
|
||||
this._promptBox.add_child(this._otherUserButton);
|
||||
} else {
|
||||
this._otherUserButton = null;
|
||||
}
|
||||
|
||||
this._authPrompt.reset();
|
||||
this._updateSensitivity(true);
|
||||
}
|
||||
@ -632,17 +650,28 @@ var UnlockDialog = GObject.registerClass({
|
||||
_maybeDestroyAuthPrompt() {
|
||||
let focus = global.stage.key_focus;
|
||||
if (focus === null ||
|
||||
(this._authPrompt && this._authPrompt.contains(focus)))
|
||||
(this._authPrompt && this._authPrompt.contains(focus)) ||
|
||||
(this._otherUserButton && focus === this._otherUserButton))
|
||||
this.grab_key_focus();
|
||||
|
||||
if (this._authPrompt) {
|
||||
this._authPrompt.destroy();
|
||||
this._authPrompt = null;
|
||||
}
|
||||
|
||||
if (this._otherUserButton) {
|
||||
this._otherUserButton.destroy();
|
||||
this._otherUserButton = null;
|
||||
}
|
||||
}
|
||||
|
||||
_updateSensitivity(sensitive) {
|
||||
this._authPrompt.updateSensitivity(sensitive);
|
||||
|
||||
if (this._otherUserButton) {
|
||||
this._otherUserButton.reactive = sensitive;
|
||||
this._otherUserButton.can_focus = sensitive;
|
||||
}
|
||||
}
|
||||
|
||||
_showClock() {
|
||||
@ -749,6 +778,12 @@ var UnlockDialog = GObject.registerClass({
|
||||
});
|
||||
}
|
||||
|
||||
_otherUserClicked() {
|
||||
Gdm.goto_login_session_sync(null);
|
||||
|
||||
this._authPrompt.cancel();
|
||||
}
|
||||
|
||||
_onDestroy() {
|
||||
this.popModal();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user