[pass] [PATCH 2/2] restore last active window after password has been copied to clipboard
Steffen Vogel
post at steffenvogel.de
Fri Jun 19 13:27:55 CEST 2015
---
contrib/pass.applescript | 41 ++++++++++++++++++++++++++++-------------
1 file changed, 28 insertions(+), 13 deletions(-)
diff --git a/contrib/pass.applescript b/contrib/pass.applescript
index 1b9a16d..363ea7d 100644
--- a/contrib/pass.applescript
+++ b/contrib/pass.applescript
@@ -43,28 +43,43 @@ else -- if (lang = "en")
set nClear to "Forget"
end if
+-- Save active window
+tell application "System Events"
+ set activeProc to first application process whose frontmost is true
+ log activeProc
+end tell
+
try
set entity to the text returned of (display dialog nPrompt default answer defPass buttons {"OK"} with title nTitle default button 1)
set pw to do shell script "export PATH=" & shellPath & "; source ~/.gpg-agent-info; pass " & entity & " | head -n1"
set the clipboard to pw
-
- -- Wait until clipboard changed then close notification
- repeat with secsLeft from 0 to clearAfter
- if pw is equal to (the clipboard) then
- tell application "Notifications Scripting"
- set event handlers script path to (path to me)
- display notification nTitle id "pass" message "Password copied to clipboard (" & (clearAfter - secsLeft) & " secs left)" action button nClear with has action button
- end tell
- delay 1
- else
- exit repeat
- end if
- end repeat
on error errMsg
display dialog errMsg with title nTitle with icon stop
+ -- Restore active window
+ tell application activeApp
+ activate window activeWin
+ end tell
end try
+-- Restore last active App
+tell application "System Events"
+ set the frontmost of activeProc to true
+end tell
+
+-- Wait until clipboard changed then close notification
+repeat with secsLeft from 0 to clearAfter
+ if pw is equal to (the clipboard) then
+ tell application "Notifications Scripting"
+ set event handlers script path to (path to me)
+ display notification nTitle id "pass" message "Password copied to clipboard (" & (clearAfter - secsLeft) & " secs left)" action button nClear with has action button
+ end tell
+ delay 1
+ else
+ exit repeat
+ end if
+end repeat
+
-- Clear clipboard
set the clipboard to ""
closeNotifications()
--
2.3.0
More information about the Password-Store
mailing list