1
0
mirror of https://github.com/S2-/pwgen.git synced 2025-08-02 17:00:03 +02:00

copy pass to clipboard notification

This commit is contained in:
s2
2017-11-22 09:25:44 +01:00
parent 3a64948533
commit 93c4955d1d
3 changed files with 35 additions and 3 deletions

View File

@@ -21,6 +21,18 @@ input[type="number"] {
font-size: inherit; font-size: inherit;
padding: 5px 10px; padding: 5px 10px;
} }
input[type="checkbox"] { input[type="checkbox"] {
margin-bottom: -7px; margin-bottom: -7px;
} }
#copied {
/*height: 100%;*/
width: 100%;
background-color: #FFF8DC;
position: absolute;
margin: -25px;
margin-top: -5px;
padding: 5px;
text-align: center;
}

View File

@@ -10,6 +10,8 @@
</head> </head>
<body> <body>
<div id="copied" style="display: none;">password copied to clipboard</div>
<form> <form>
<div> <div>

View File

@@ -34,14 +34,29 @@ function saveOptions(options) {
return browser.storage.local.set(options); return browser.storage.local.set(options);
} }
function copypasstoclippboard() { function copypasstoclippboard(cb) {
setTimeout(function() { setTimeout(function() {
var copyText = document.getElementById('pw'); var copyText = document.getElementById('pw');
copyText.select(); copyText.select();
document.execCommand('copy'); document.execCommand('copy');
if (typeof(cb) === 'function') {
cb();
}
}, 200); }, 200);
} }
function fade(element) {
var op = 1; // initial opacity
var timer = setInterval(function () {
if (op <= 0.1) {
clearInterval(timer);
element.style.display = 'none';
}
element.style.opacity = op;
op -= op * 0.1;
}, 50);
}
document.addEventListener('DOMContentLoaded', function() { document.addEventListener('DOMContentLoaded', function() {
document.getElementById('new').addEventListener('click', (ev) => { document.getElementById('new').addEventListener('click', (ev) => {
@@ -69,9 +84,12 @@ document.addEventListener('DOMContentLoaded', function() {
document.getElementById('pw').value = randPassword(getParams().length, getParams().special); document.getElementById('pw').value = randPassword(getParams().length, getParams().special);
if (options.directcopy) { if (options.directcopy) {
copypasstoclippboard(); copypasstoclippboard(() => {
let copied = document.getElementById('copied');
copied.style.display = 'block';
fade(copied)
});
} }
}); });
}); });