private void completionActivated(T sel) {
		if (focus == null) {
			// shouldn't happen; likely some off focus issue
			return;
		}

		AutocompletionEvent<T> ev = new AutocompletionEvent<>(sel, focus);
		if (!fireCompletionActivated(ev)) {
			return;
		}
		try {
			focus.getDocument()
					.insertString(focus.getCaretPosition(), getCompletionText(sel), null);
		}
		catch (BadLocationException e) {
			throw new AssertionError("INTERNAL: Should not be here", e);
		}
	}
Fire the registered autocompletion listeners on the given event.

<p>
Each registered listener is invoked in order of registration. If any listener consumes the
event, then later-registered listeners will not be notified of the event. If any listener
cancels the event, then the suggested text will not be inserted.

@param ev the event
@return true, if no listener cancelled the event
Ghidra/Framework/Docking/src/main/java/docking/widgets/autocomplete/TextFieldAutocompleter.java