Bug 148357 [Field Assist] - API - provide access for closing the proposal popup
I think that the field assist API needs more hooks to be customizable. For example : 1) There is no way to manually close/open the popup. Most of the times, this is the easier thing for a user to ask to implement his custom behaviour. 2) There is no way to intercept keystrokes/events directed to the field. 3) There is no way to control focus.
bundles/org.eclipse.jface/src/org/eclipse/jface/fieldassist/ContentProposalAdapter.java
if (insertionPos != -1) {
				controlContentAdapter.setCursorPosition(control, insertionPos);
			}
			controlContentAdapter.insertControlContents(control, text,
					cursorPosition);
		}
	}
	/*
	 * Check that the control and content adapter are valid.
	 */
	private boolean isValid() {
		return control != null && !control.isDisposed()
				&& controlContentAdapter != null;
	}
	/*
	 * Record the control's cursor position.
	 */
	private void recordCursorPosition() {
		if (isValid()) {
			insertionPos = getControlContentAdapter()
					.getCursorPosition(control);
		}
	}
	
	/*
	 * Get the proposals from the proposal provider. 
	 * Gets all of the proposals without doing any filtering.
	 */
	private IContentProposal[] getProposals() {