show warning on navigation if currently editing comment or title (#32920)

This PR fixes the issue https://github.com/go-gitea/gitea/issues/32223

Make the browser to show the confirm popup, as it does with other forms.

---------

Co-authored-by: Tim Wundenberg <tim@wundenbergs.de>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
Tim 2024-12-20 16:39:19 +01:00 committed by GitHub
parent 52b319bc00
commit 7580bd98c1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 27 additions and 16 deletions

View file

@ -532,7 +532,7 @@ export function initRepoIssueWipToggle() {
export function initRepoIssueTitleEdit() {
const issueTitleDisplay = document.querySelector('#issue-title-display');
const issueTitleEditor = document.querySelector('#issue-title-editor');
const issueTitleEditor = document.querySelector<HTMLFormElement>('#issue-title-editor');
if (!issueTitleEditor) return;
const issueTitleInput = issueTitleEditor.querySelector('input');
@ -558,7 +558,8 @@ export function initRepoIssueTitleEdit() {
const prTargetUpdateUrl = pullDescEditor?.getAttribute('data-target-update-url');
const editSaveButton = issueTitleEditor.querySelector('.ui.primary.button');
editSaveButton.addEventListener('click', async () => {
issueTitleEditor.addEventListener('submit', async (e) => {
e.preventDefault();
const newTitle = issueTitleInput.value.trim();
try {
if (newTitle && newTitle !== oldTitle) {
@ -577,6 +578,7 @@ export function initRepoIssueTitleEdit() {
}
}
}
issueTitleEditor.classList.remove('dirty');
window.location.reload();
} catch (error) {
console.error(error);