opt deleting styles

This commit is contained in:
qcrao
2024-07-25 12:22:47 +08:00
parent 57d498dcb8
commit 3887788b9d
2 changed files with 44 additions and 8 deletions

View File

@@ -345,12 +345,12 @@ button#bulk-archive {
text-shadow: 0 0 4px rgba(255, 255, 255, 0.5); /* 增强悬停时的光晕效果 */ text-shadow: 0 0 4px rgba(255, 255, 255, 0.5); /* 增强悬停时的光晕效果 */
} }
/* Existing styles for the bulk delete button */
button#bulk-delete { button#bulk-delete {
background-color: #e74c3c; background-color: #e74c3c;
color: white; color: white;
position: relative; position: relative;
overflow: hidden; overflow: hidden;
transition: background-color 0.3s ease;
} }
/* New styles for progress bar */ /* New styles for progress bar */
@@ -361,15 +361,44 @@ button#bulk-delete::before {
left: 0; left: 0;
right: 0; right: 0;
bottom: 0; bottom: 0;
background-color: rgba(255, 255, 255, 0.3); background-color: #2ecc71; /* Bright green color for progress */
transform: translateX(-100%); transform: translateX(-100%);
transition: transform 0.3s ease-out; transition: transform 0.3s ease-out;
} }
button#bulk-delete::after {
content: attr(data-progress) "%";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: white;
font-weight: bold;
z-index: 1;
}
button#bulk-delete.progress { button#bulk-delete.progress {
cursor: not-allowed; cursor: not-allowed;
background-color: #34495e; /* Darker background when in progress */
} }
button#bulk-delete.progress::before { button#bulk-delete.progress::before {
transform: translateX(var(--progress, -100%)); transform: translateX(var(--progress, -100%));
} }
/* Add a pulsing animation to the progress bar */
@keyframes pulse {
0% {
opacity: 1;
}
50% {
opacity: 0.7;
}
100% {
opacity: 1;
}
}
button#bulk-delete.progress::before {
animation: pulse 2s infinite;
}

View File

@@ -37,18 +37,25 @@ function addButtonListener(buttonId, scriptName) {
function updateProgressBar(progress) { function updateProgressBar(progress) {
console.log("Updating progress bar:", progress); console.log("Updating progress bar:", progress);
const bulkDeleteButton = document.getElementById("bulk-delete"); const bulkDeleteButton = document.getElementById("bulk-delete");
bulkDeleteButton.style.setProperty("--progress", `${progress}%`); bulkDeleteButton.style.setProperty('--progress', `${progress}%`);
bulkDeleteButton.setAttribute('data-progress', progress);
if (progress === 100 || progress === 0) {
bulkDeleteButton.disabled = false;
bulkDeleteButton.classList.remove("progress");
bulkDeleteButton.textContent = "Bulk Delete"; // Reset button text
} else {
bulkDeleteButton.textContent = "Deleting..."; // Change button text during deletion
}
} }
// 在消息监听器中也添加文本重置
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) { chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
console.log("Received message:", request); console.log("Received message:", request);
if (request.action === "updateProgress") { if (request.action === "updateProgress") {
updateProgressBar(request.progress); updateProgressBar(request.progress);
} else if (request.action === "deleteComplete") { } else if (request.action === "deleteComplete") {
const bulkDeleteButton = document.getElementById("bulk-delete"); updateProgressBar(0); // This will reset the button text
bulkDeleteButton.disabled = false;
bulkDeleteButton.classList.remove("progress");
updateProgressBar(0);
} }
}); });