diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js index 15cc65ffc..35885477c 100644 --- a/js/ui/screenShield.js +++ b/js/ui/screenShield.js @@ -764,19 +764,6 @@ const ScreenShield = new Lang.Class({ } } - if (!this._becomeModal()) { - // We could not become modal, so we can't activate the - // screenshield. The user is probably very upset at this - // point, but any application using global grabs is broken - // Just tell him to stop using this app - // - // XXX: another option is to kick the user into the gdm login - // screen, where we're not affected by grabs - Main.notifyError(_("Unable to lock"), - _("Lock was blocked by an application")); - return; - } - if (this._lightbox.actor.visible || this._isActive) { // We're either shown and active, or in the process of @@ -790,6 +777,19 @@ const ScreenShield = new Lang.Class({ return; } + if (!this._becomeModal()) { + // We could not become modal, so we can't activate the + // screenshield. The user is probably very upset at this + // point, but any application using global grabs is broken + // Just tell him to stop using this app + // + // XXX: another option is to kick the user into the gdm login + // screen, where we're not affected by grabs + Main.notifyError(_("Unable to lock"), + _("Lock was blocked by an application")); + return; + } + this._lightbox.show(); if (this._activationTime == 0)