Skip to content

Warn before closing page if edits are not saved#11

Merged
inducer merged 2 commits into
mainfrom
copilot/warn-before-closing-page
Apr 9, 2026
Merged

Warn before closing page if edits are not saved#11
inducer merged 2 commits into
mainfrom
copilot/warn-before-closing-page

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 8, 2026

Users could accidentally lose unsaved calendar edits by closing the tab or navigating away — no confirmation was shown.

Changes

  • isDirty flag — module-level boolean, set to true on any edit, reset to false on submit
  • Edit sources that mark dirty:
    • eventClick — slot availability toggle or span shift-click/maybe-toggle
    • calSelect — new span drawn
    • eventDrop / eventResize (new FullCalendar callbacks) — span dragged or resized
    • Response textarea input event
  • beforeunload listener — triggers browser's native "Leave site?" dialog when isDirty:
    window.addEventListener('beforeunload', (e) => {
      if (isDirty) {
        e.preventDefault();
        e.returnValue = ''; // required for cross-browser support
      }
    });
  • onSubmit resets isDirty = false before form submission so the dialog doesn't fire on a clean submit

Copilot AI changed the title [WIP] Add warning before closing page if edits are not saved Warn before closing page if edits are not saved Apr 8, 2026
Copilot AI requested a review from inducer April 8, 2026 20:03
@inducer inducer marked this pull request as ready for review April 9, 2026 19:14
@inducer inducer merged commit 7aa43dd into main Apr 9, 2026
2 checks passed
@inducer inducer deleted the copilot/warn-before-closing-page branch April 9, 2026 19:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Should warn before closing page if edits are not saved

2 participants