From 60225ef86d070a7999bd6cded43837ca87d3f24f Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Wed, 26 Jun 2013 14:47:33 +0100 Subject: [PATCH] screenShield: fix empty screen shield If the drag action ends after something else has put the screen shield into a different state we can end up in an inconsistent screen shield state where the whole thing is empty. https://bugzilla.gnome.org/show_bug.cgi?id=703126 --- js/ui/screenShield.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js index fe9cd31dc..4264f01b7 100644 --- a/js/ui/screenShield.js +++ b/js/ui/screenShield.js @@ -709,6 +709,8 @@ const ScreenShield = new Lang.Class({ }, _onDragEnd: function(action, actor, eventX, eventY, modifiers) { + if (this._lockScreenState != MessageTray.State.HIDING) + return; if (this._lockScreenGroup.y < -(ARROW_DRAG_THRESHOLD * global.stage.height)) { // Complete motion automatically let [velocity, velocityX, velocityY] = this._dragAction.get_velocity(0);