Show a loading spinner on the Export/Preview buttons while exporting

The export dialog's Export and Preview buttons now disable and show a
spinner with status text while the corresponding async operation is
in flight, so the user knows the (sometimes slow) export is running
and the app isn't stuck.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
This commit is contained in:
2026-06-15 17:07:35 -05:00
co-authored by Claude Sonnet 4.6
parent 3de8ec978b
commit 5b54305b9f
3 changed files with 74 additions and 19 deletions
+19
View File
@@ -90,6 +90,25 @@ button.tool.active {
border-color: var(--accent);
color: var(--accent-fg);
}
button:disabled { opacity: 0.6; cursor: default; }
button.loading {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 7px;
}
.spinner {
display: inline-block;
width: 13px;
height: 13px;
border: 2px solid currentColor;
border-top-color: transparent;
border-radius: 50%;
opacity: 0.85;
animation: spin 0.7s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }
input, select, textarea {
font: inherit;