screenShield: Do not take an inhibitor when disabled by lockdown
Just as with the normal lock screen settings, we shouldn't request a logind inhibitor when locking is disabled via lockdown settings. https://bugzilla.gnome.org/show_bug.cgi?id=780212
This commit is contained in:
parent
199bc85bce
commit
a786f0bcd2
@ -545,6 +545,7 @@ const ScreenShield = new Lang.Class({
|
|||||||
this._settings.connect('changed::' + LOCK_ENABLED_KEY, Lang.bind(this, this._syncInhibitor));
|
this._settings.connect('changed::' + LOCK_ENABLED_KEY, Lang.bind(this, this._syncInhibitor));
|
||||||
|
|
||||||
this._lockSettings = new Gio.Settings({ schema_id: LOCKDOWN_SCHEMA });
|
this._lockSettings = new Gio.Settings({ schema_id: LOCKDOWN_SCHEMA });
|
||||||
|
this._lockSettings.connect('changed::' + DISABLE_LOCK_KEY, Lang.bind(this, this._syncInhibitor));
|
||||||
|
|
||||||
this._isModal = false;
|
this._isModal = false;
|
||||||
this._hasLockScreen = false;
|
this._hasLockScreen = false;
|
||||||
@ -706,8 +707,10 @@ const ScreenShield = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_syncInhibitor: function() {
|
_syncInhibitor: function() {
|
||||||
|
let lockEnabled = this._settings.get_boolean(LOCK_ENABLED_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 && this._settings.get_boolean(LOCK_ENABLED_KEY));
|
!this._isActive && lockEnabled && !lockLocked);
|
||||||
if (inhibit) {
|
if (inhibit) {
|
||||||
this._loginManager.inhibit(_("GNOME needs to lock the screen"),
|
this._loginManager.inhibit(_("GNOME needs to lock the screen"),
|
||||||
Lang.bind(this, function(inhibitor) {
|
Lang.bind(this, function(inhibitor) {
|
||||||
|
Loading…
Reference in New Issue
Block a user