|
|
580c05 |
From ba5eacc70a296d9753bfc2b8de14e08726212b69 Mon Sep 17 00:00:00 2001
|
|
|
580c05 |
From: Ray Strode <rstrode@redhat.com>
|
|
|
580c05 |
Date: Fri, 3 Jul 2015 13:54:36 -0400
|
|
|
580c05 |
Subject: [PATCH] screenShield: unblank when inserting smartcard
|
|
|
580c05 |
|
|
|
580c05 |
If a user inserts the smartcard when the screen is locked/blanked
|
|
|
580c05 |
we should ask them their pin right away.
|
|
|
580c05 |
|
|
|
580c05 |
At the moment they have to wiggle the mouse or do some other
|
|
|
580c05 |
action to get the screen to unblank.
|
|
|
580c05 |
---
|
|
|
580c05 |
js/ui/screenShield.js | 4 +++-
|
|
|
580c05 |
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
580c05 |
|
|
|
580c05 |
diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js
|
|
|
580c05 |
index 3a84468..ad7ce54 100644
|
|
|
580c05 |
--- a/js/ui/screenShield.js
|
|
|
580c05 |
+++ b/js/ui/screenShield.js
|
|
|
580c05 |
@@ -510,62 +510,64 @@ const ScreenShield = new Lang.Class({
|
|
|
580c05 |
this._dragAction.connect('gesture-progress', Lang.bind(this, this._onDragMotion));
|
|
|
580c05 |
this._dragAction.connect('gesture-end', Lang.bind(this, this._onDragEnd));
|
|
|
580c05 |
this._lockScreenGroup.add_action(this._dragAction);
|
|
|
580c05 |
|
|
|
580c05 |
this._lockDialogGroup = new St.Widget({ x_expand: true,
|
|
|
580c05 |
y_expand: true,
|
|
|
580c05 |
reactive: true,
|
|
|
580c05 |
pivot_point: new Clutter.Point({ x: 0.5, y: 0.5 }),
|
|
|
580c05 |
name: 'lockDialogGroup' });
|
|
|
580c05 |
|
|
|
580c05 |
this.actor.add_actor(this._lockDialogGroup);
|
|
|
580c05 |
this.actor.add_actor(this._lockScreenGroup);
|
|
|
580c05 |
|
|
|
580c05 |
this._presence = new GnomeSession.Presence(Lang.bind(this, function(proxy, error) {
|
|
|
580c05 |
if (error) {
|
|
|
580c05 |
logError(error, 'Error while reading gnome-session presence');
|
|
|
580c05 |
return;
|
|
|
580c05 |
}
|
|
|
580c05 |
|
|
|
580c05 |
this._onStatusChanged(proxy.status);
|
|
|
580c05 |
}));
|
|
|
580c05 |
this._presence.connectSignal('StatusChanged', Lang.bind(this, function(proxy, senderName, [status]) {
|
|
|
580c05 |
this._onStatusChanged(status);
|
|
|
580c05 |
}));
|
|
|
580c05 |
|
|
|
580c05 |
this._screenSaverDBus = new ShellDBus.ScreenSaverDBus(this);
|
|
|
580c05 |
|
|
|
580c05 |
this._smartcardManager = SmartcardManager.getSmartcardManager();
|
|
|
580c05 |
this._smartcardManager.connect('smartcard-inserted',
|
|
|
580c05 |
Lang.bind(this, function(manager, token) {
|
|
|
580c05 |
- if (this._isLocked && token.UsedToLogin)
|
|
|
580c05 |
+ if (this._isLocked && token.UsedToLogin) {
|
|
|
580c05 |
+ this._wakeUpScreen();
|
|
|
580c05 |
this._liftShield(true, 0);
|
|
|
580c05 |
+ }
|
|
|
580c05 |
}));
|
|
|
580c05 |
|
|
|
580c05 |
this._oVirtCredentialsManager = OVirt.getOVirtCredentialsManager();
|
|
|
580c05 |
this._oVirtCredentialsManager.connect('user-authenticated',
|
|
|
580c05 |
Lang.bind(this, function() {
|
|
|
580c05 |
if (this._isLocked)
|
|
|
580c05 |
this._liftShield(true, 0);
|
|
|
580c05 |
}));
|
|
|
580c05 |
|
|
|
580c05 |
this._inhibitor = null;
|
|
|
580c05 |
this._aboutToSuspend = false;
|
|
|
580c05 |
this._loginManager = LoginManager.getLoginManager();
|
|
|
580c05 |
this._loginManager.connect('prepare-for-sleep',
|
|
|
580c05 |
Lang.bind(this, this._prepareForSleep));
|
|
|
580c05 |
this._inhibitSuspend();
|
|
|
580c05 |
|
|
|
580c05 |
this._loginManager.getCurrentSessionProxy(Lang.bind(this,
|
|
|
580c05 |
function(sessionProxy) {
|
|
|
580c05 |
this._loginSession = sessionProxy;
|
|
|
580c05 |
this._loginSession.connectSignal('Lock', Lang.bind(this, function() { this.lock(false); }));
|
|
|
580c05 |
this._loginSession.connectSignal('Unlock', Lang.bind(this, function() { this.deactivate(false); }));
|
|
|
580c05 |
}));
|
|
|
580c05 |
|
|
|
580c05 |
this._settings = new Gio.Settings({ schema_id: SCREENSAVER_SCHEMA });
|
|
|
580c05 |
|
|
|
580c05 |
this._isModal = false;
|
|
|
580c05 |
this._hasLockScreen = false;
|
|
|
580c05 |
this._isGreeter = false;
|
|
|
580c05 |
this._isActive = false;
|
|
|
580c05 |
this._isLocked = false;
|
|
|
580c05 |
--
|
|
|
580c05 |
2.3.7
|
|
|
580c05 |
|