[gnome-shell] ScreenShield: separate notifications for active and locked



commit ae0accb5a4cc4e6f3a2d2b82b2162c1f1079817b
Author: Giovanni Campagna <gcampagna src gnome org>
Date:   Sat Feb 2 17:10:45 2013 +0100

    ScreenShield: separate notifications for active and locked
    
    Now that we have an explicit active-but-not-locked state, we should
    use different signals to notify changes. lock-status-changed is
    renamed to active-changed, and a new locked-changed is introduced.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=693007

 js/ui/screenShield.js |   14 +++++++++-----
 js/ui/shellDBus.js    |    2 +-
 2 files changed, 10 insertions(+), 6 deletions(-)
---
diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js
index b972eaa..8db0f4d 100644
--- a/js/ui/screenShield.js
+++ b/js/ui/screenShield.js
@@ -536,6 +536,7 @@ const ScreenShield = new Lang.Class({
         this._hasLockScreen = false;
         this._isGreeter = false;
         this._isActive = false;
+        this._isLocked = false;
         this._inUnlockAnimation = false;
         this._activationTime = 0;
         this._becameActiveId = 0;
@@ -956,7 +957,7 @@ const ScreenShield = new Lang.Class({
         this._isActive = true;
 
         if (prevIsActive != this._isActive)
-            this.emit('lock-status-changed');
+            this.emit('active-changed');
 
         this.emit('lock-screen-shown');
     },
@@ -1067,7 +1068,8 @@ const ScreenShield = new Lang.Class({
         this._activationTime = 0;
         this._isActive = false;
         this._isLocked = false;
-        this.emit('lock-status-changed');
+        this.emit('active-changed');
+        this.emit('locked-changed');
     },
 
     activate: function(animate) {
@@ -1085,7 +1087,7 @@ const ScreenShield = new Lang.Class({
 
         this._resetLockScreen(animate, animate);
 
-        // We used to set isActive and emit lock-status-changed here,
+        // We used to set isActive and emit active-changed here,
         // but now we do that from lockScreenShown, which means
         // there is a 0.3 seconds window during which the lock
         // screen is effectively visible and the screen is locked, but
@@ -1105,6 +1107,8 @@ const ScreenShield = new Lang.Class({
 
         this._isLocked = true;
         this.activate(animate);
+
+        this.emit('locked-changed');
     },
 });
 Signals.addSignalMethods(ScreenShield.prototype);
@@ -1138,13 +1142,13 @@ const ScreenShieldFallback = new Lang.Class({
         else
             this._locked = false;
 
-        this.emit('lock-status-changed', this._locked);
+        this.emit('active-changed', this._locked);
     },
 
     _onSignal: function(proxy, senderName, signalName, params) {
         if (signalName == 'ActiveChanged') {
             [this._locked] = params.deep_unpack();
-            this.emit('lock-status-changed', this._locked);
+            this.emit('active-changed', this._locked);
         }
     },
 
diff --git a/js/ui/shellDBus.js b/js/ui/shellDBus.js
index 44ddf74..a396758 100644
--- a/js/ui/shellDBus.js
+++ b/js/ui/shellDBus.js
@@ -247,7 +247,7 @@ const ScreenSaverDBus = new Lang.Class({
         this.parent();
 
         this._screenShield = screenShield;
-        screenShield.connect('lock-status-changed', Lang.bind(this, function(shield) {
+        screenShield.connect('active-changed', Lang.bind(this, function(shield) {
             this._dbusImpl.emit_signal('ActiveChanged', GLib.Variant.new('(b)', [shield.active]));
         }));
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]