Skip to content

Commit 6f8d18f

Browse files
committed
Auto merge of #8839 - Serial-ATA:copy-lint-name, r=xFrednet
Add copy lint name button changelog: Documentation: Add a *copy lint name*-button to Clippy's lint list closes #7959
2 parents b6ad6fc + e05da56 commit 6f8d18f

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

util/gh-pages/index.html

+3
Original file line numberDiff line numberDiff line change
@@ -490,6 +490,9 @@ <h2 class="panel-title">
490490
<div class="panel-title-name">
491491
<span>{{lint.id}}</span>
492492
<a href="#{{lint.id}}" class="anchor label label-default" ng-click="open[lint.id] = true; $event.stopPropagation()">&para;</a>
493+
<a href="" id="clipboard-{{lint.id}}" class="anchor label label-default" ng-click="copyToClipboard(lint); $event.stopPropagation()">
494+
&#128203;
495+
</a>
493496
</div>
494497

495498
<div class="panel-title-addons">

util/gh-pages/script.js

+21
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,27 @@
258258
return true;
259259
}
260260

261+
$scope.copyToClipboard = function (lint) {
262+
const clipboard = document.getElementById("clipboard-" + lint.id);
263+
if (clipboard) {
264+
let resetClipboardTimeout = null;
265+
let resetClipboardIcon = clipboard.innerHTML;
266+
267+
function resetClipboard() {
268+
resetClipboardTimeout = null;
269+
clipboard.innerHTML = resetClipboardIcon;
270+
}
271+
272+
navigator.clipboard.writeText("clippy::" + lint.id);
273+
274+
clipboard.innerHTML = "&#10003;";
275+
if (resetClipboardTimeout !== null) {
276+
clearTimeout(resetClipboardTimeout);
277+
}
278+
resetClipboardTimeout = setTimeout(resetClipboard, 1000);
279+
}
280+
}
281+
261282
// Get data
262283
$scope.open = {};
263284
$scope.loading = true;

0 commit comments

Comments
 (0)