From c32ed859f4abd1591c882f4f2a6ee16b1ec275e2 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Tue, 12 May 2026 14:03:27 +0000
Subject: [PATCH] =A little form recovery magic

---
 assets/js/concise/TaxonomySelector.js |   19 +++++++++++--------
 1 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/assets/js/concise/TaxonomySelector.js b/assets/js/concise/TaxonomySelector.js
index 4502169..e61835f 100644
--- a/assets/js/concise/TaxonomySelector.js
+++ b/assets/js/concise/TaxonomySelector.js
@@ -246,6 +246,15 @@
 			}
 		}
 
+		const removeButton = window.targetCheck(e, '.remove-term');
+		if (removeButton) {
+			const termId = removeButton.closest('[data-id]').dataset.id??false;
+			if (fieldId && termId) {
+				this.removeSelected(parseInt(termId), fieldId);
+			}
+			return;
+		}
+
 		const autocomplete = window.targetCheck(e, '.item.autocomplete');
 
 		if (autocomplete) {
@@ -266,14 +275,6 @@
 			return;
 		}
 
-		const removeButton = window.targetCheck(e, '.remove-term');
-		if (removeButton) {
-			const termId = removeButton.closest('[data-id]').dataset.id??false;
-			if (fieldId && termId) {
-				this.removeSelected(parseInt(termId), fieldId);
-			}
-			return;
-		}
 
 		if (e.target.matches('.modal-close')) {
 			this.updateFieldValue(fieldId);
@@ -433,6 +434,8 @@
 		const field = this.fields.get(fieldId);
 		if (!field) return;
 		if (!field.hasAutocomplete || this.container.open) return;
+		if (e.target.closest('.remove-item')) return;
+
 		if (e.relatedTarget && field.ui.dropdown.wrapper?.contains(e.relatedTarget)) return;
 
 		this.scheduleHideDropdown(fieldId);

--
Gitblit v1.10.0