diff --git a/public/icons/clipboard.svg b/public/icons/clipboard.svg
new file mode 100644
index 00000000..01dffe9f
--- /dev/null
+++ b/public/icons/clipboard.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/popup.ts b/src/popup.ts
index 347678f3..d13af4a0 100644
--- a/src/popup.ts
+++ b/src/popup.ts
@@ -425,9 +425,18 @@ async function runThePopup(messageListener?: MessageListener): Promise {
downvoteButton.src = chrome.extension.getURL("icons/thumbs_down.svg");
downvoteButton.addEventListener("click", () => vote(0, UUID));
- //add thumbs up and down buttons to the container
+ //uuid button
+
+ const uuidButton = document.createElement("img");
+ uuidButton.id = "sponsorTimesCopyUUIDButtonContainer" + UUID;
+ uuidButton.className = "voteButton";
+ uuidButton.src = chrome.extension.getURL("icons/clipboard.svg");
+ uuidButton.addEventListener("click", () => navigator.clipboard.writeText(UUID));
+
+ //add thumbs up, thumbs down and uuid copy buttons to the container
voteButtonsContainer.appendChild(upvoteButton);
voteButtonsContainer.appendChild(downvoteButton);
+ voteButtonsContainer.appendChild(uuidButton);
//add click listener to open up vote panel
sponsorTimeButton.addEventListener("click", function() {
@@ -576,13 +585,13 @@ async function runThePopup(messageListener?: MessageListener): Promise {
function vote(type, UUID) {
//add loading info
addVoteMessage(chrome.i18n.getMessage("Loading"), UUID);
-
+
//send the vote message to the tab
chrome.runtime.sendMessage({
message: "submitVote",
type: type,
UUID: UUID
- }, function(response) {
+ }, function (response) {
if (response != undefined) {
//see if it was a success or failure
if (response.successType == 1 || (response.successType == -1 && response.statusCode == 429)) {