screenShield: Don't inhibit suspend during initial setup
Normally, we inhibit suspend while locking the screen. But in the session mode used for gnome-initial-setup locking is not supported, so in that case this inhibit call is pointless and should be avoided. Without this patch you get the following error when you suspend and resume during initial setup: JS ERROR: Error getting systemd inhibitor: Gio.IOErrorEnum: GDBus.Error:org.freedesktop.login1.OperationInProgress: The operation inhibition has been requested for is already running _promisify/proto[asyncFunc]/</<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:435:45 https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1213
This commit is contained in:
parent
527ce66cd4
commit
a60d57ea1f
@ -198,7 +198,7 @@ var ScreenShield = class {
|
|||||||
let lockEnabled = this._settings.get_boolean(LOCK_ENABLED_KEY);
|
let lockEnabled = this._settings.get_boolean(LOCK_ENABLED_KEY);
|
||||||
let lockLocked = this._lockSettings.get_boolean(DISABLE_LOCK_KEY);
|
let lockLocked = this._lockSettings.get_boolean(DISABLE_LOCK_KEY);
|
||||||
let inhibit = this._loginSession && this._loginSession.Active &&
|
let inhibit = this._loginSession && this._loginSession.Active &&
|
||||||
!this._isActive && lockEnabled && !lockLocked;
|
!this._isActive && lockEnabled && !lockLocked && Main.sessionMode.unlockDialog;
|
||||||
if (inhibit) {
|
if (inhibit) {
|
||||||
this._loginManager.inhibit(_("GNOME needs to lock the screen"),
|
this._loginManager.inhibit(_("GNOME needs to lock the screen"),
|
||||||
inhibitor => {
|
inhibitor => {
|
||||||
|
Loading…
Reference in New Issue
Block a user