Bug 43488 [typing] BadPositionCategoryException in LinkedPositionManager
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/link/contentassist/ContentAssistant2.java
/**
	 * A generic closer class used to monitor various 
	 * interface events in order to determine whether
	 * content-assist should be terminated and all
	 * associated windows closed.
	 */
	class Closer implements ControlListener, MouseListener, FocusListener, DisposeListener, IViewportListener {
		/**
		 * Installs this closer on it's viewer's text widget.
		 */
		protected void install() {
			Control w= fViewer.getTextWidget();
			if (Helper2.okToUse(w)) {
				
				Control shell= w.getShell();
				shell.addControlListener(this);
					
				w.addMouseListener(this);
				w.addFocusListener(this);