Skip to content

Commit 2ea67da

Browse files
fix: fix arxiv-to-novel
1 parent 4b3324d commit 2ea67da

File tree

2 files changed

+19
-4
lines changed

2 files changed

+19
-4
lines changed

apps/arxiv-to-novel/app.js

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -418,6 +418,8 @@ function renderGenrePicker() {
418418

419419

420420
// ── Settings Modal ───────────────────────────────────
421+
let settingsModalTimer = null;
422+
421423
function loadSettingsUI() {
422424
const s = loadSettings();
423425
document.getElementById("apiKey").value = s.apiKey || "";
@@ -426,12 +428,25 @@ function loadSettingsUI() {
426428
}
427429

428430
function showSettingsModal() {
431+
if (settingsModalTimer) {
432+
clearTimeout(settingsModalTimer);
433+
settingsModalTimer = null;
434+
}
429435
loadSettingsUI();
430-
document.getElementById("settingsModal").style.display = "flex";
436+
const modal = document.getElementById("settingsModal");
437+
modal.style.display = "flex";
438+
// Force reflow to enable transition
439+
modal.offsetHeight;
440+
modal.classList.add("visible");
431441
}
432442

433443
function hideSettingsModal() {
434-
document.getElementById("settingsModal").style.display = "none";
444+
const modal = document.getElementById("settingsModal");
445+
modal.classList.remove("visible");
446+
settingsModalTimer = setTimeout(() => {
447+
modal.style.display = "none";
448+
settingsModalTimer = null;
449+
}, 300);
435450
}
436451

437452
function doSaveSettings() {

apps/arxiv-to-novel/style.css

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1052,7 +1052,7 @@ h2 {
10521052
transition: opacity 0.3s ease;
10531053
}
10541054

1055-
.modal-overlay[style*="display: block"] {
1055+
.modal-overlay.visible {
10561056
opacity: 1;
10571057
pointer-events: auto;
10581058
}
@@ -1068,7 +1068,7 @@ h2 {
10681068
transition: transform 0.3s ease;
10691069
}
10701070

1071-
.modal-overlay[style*="display: block"] .modal-card {
1071+
.modal-overlay.visible .modal-card {
10721072
transform: translateY(0);
10731073
}
10741074

0 commit comments

Comments
 (0)