@Override public void verifyKey(VerifyEvent e) { // Only act on typed characters and ignore modifier-only events if (e.character == 0 && (e.keyCode & SWT.KEYCODE_BIT) == 0) return; if (e.character != 0 && (e.stateMask == SWT.ALT)) return; int showStyle; int pos= fViewer.getSelectedRange().x; char[] activation= getCompletionProposalAutoActivationCharacters(fViewer, pos); if (contains(activation, e.character) && !fProposalPopup.isActive()) showStyle= SHOW_PROPOSALS; else { activation= getContextInformationAutoActivationCharacters(fViewer, pos); if (contains(activation, e.character) && !fContextInfoPopup.isActive()) showStyle= SHOW_CONTEXT_INFO; else { if (fThread != null && fThread.isAlive()) stop(); return; } } if (fThread != null && fThread.isAlive()) reset(showStyle); else start(showStyle); }
@Override public void verifyKey(VerifyEvent e) { // Only act on typed characters and ignore modifier-only events if (e.character == 0 && (e.keyCode & SWT.KEYCODE_BIT) == 0) return; if (e.character != 0 && (e.stateMask == SWT.ALT)) return; int showStyle; int pos= fViewer.getSelectedRange().x; char[] activation= getCompletionProposalAutoActivationCharacters(fViewer, pos); if (contains(activation, e.character) && !fProposalPopup.isActive()) showStyle= SHOW_PROPOSALS; else { activation= getContextInformationAutoActivationCharacters(fViewer, pos); if (contains(activation, e.character) && !fContextInfoPopup.isActive()) showStyle= SHOW_CONTEXT_INFO; else { if (fThread != null && fThread.isAlive()) stop(); return; } } if (fThread != null && fThread.isAlive()) reset(showStyle); else start(showStyle); }