Source:
<code>protected Control createDialogArea(Composite parent) { getShell().setText(UIText.AddConfigEntryDialog_AddConfigTitle); setTitle(UIText.AddConfigEntryDialog_AddConfigTitle); setMessage(UIText.AddConfigEntryDialog_DialogMessage); Composite titleParent = (Composite) super.createDialogArea(parent); Composite main = new Composite(titleParent, SWT.NONE); main.setLayout(new GridLayout(2, false)); GridDataFactory.fillDefaults().grab(true, true).applyTo(main); Label keyLabel = new Label(main, SWT.NONE); keyLabel.setText(UIText.AddConfigEntryDialog_KeyLabel); keyLabel.setToolTipText(UIText.AddConfigEntryDialog_ConfigKeyTooltip); keyText = new Text(main, SWT.BORDER); if (suggestedKey != null) { keyText.setText(trimKey(suggestedKey)); keyText.selectAll(); } keyText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { check(); } }); keyText.addFocusListener(new FocusAdapter() { @Override public void focusLost(FocusEvent e) { <START> addValueContentProposal(valueText, keyText.getText()); <END> } }); GridDataFactory.fillDefaults().grab(true, false).applyTo(keyText); new Label(main, SWT.NONE) .setText(UIText.AddConfigEntryDialog_ValueLabel); valueText = new Text(main, SWT.BORDER); valueText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { check(); } }); GridDataFactory.fillDefaults().grab(true, false).applyTo(valueText); applyDialogFont(main); addKeyContentProposal(keyText); return main; }</code><technical_language>This adds more more content proposal providers text field, confusing behavior. Open dialog, type "core." in key field, choose "autocrlf". TAB field, type Ctrl-Space : offer "true" "input". Good. key field. (We realize chosen wrong key.) Delete "autocrlf, type "longpaths" (or choose content assist). TAB field again. Invoke content assist: propose "true". Hit ESC. Type "in": content assist previously added opens proposes "input", is wrong</technical_language>

Target:
protected Control createDialogArea(Composite parent) { getShell().setText(UIText.AddConfigEntryDialog_AddConfigTitle); setTitle(UIText.AddConfigEntryDialog_AddConfigTitle); setMessage(UIText.AddConfigEntryDialog_DialogMessage); Composite titleParent = (Composite) super.createDialogArea(parent); Composite main = new Composite(titleParent, SWT.NONE); main.setLayout(new GridLayout(2, false)); GridDataFactory.fillDefaults().grab(true, true).applyTo(main); Label keyLabel = new Label(main, SWT.NONE); keyLabel.setText(UIText.AddConfigEntryDialog_KeyLabel); keyLabel.setToolTipText(UIText.AddConfigEntryDialog_ConfigKeyTooltip); keyText = new Text(main, SWT.BORDER); if (suggestedKey != null) { keyText.setText(trimKey(suggestedKey)); keyText.selectAll(); } keyText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { check(); } }); GridDataFactory.fillDefaults().grab(true, false).applyTo(keyText); new Label(main, SWT.NONE) .setText(UIText.AddConfigEntryDialog_ValueLabel); valueText = new Text(main, SWT.BORDER); valueText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { check(); } }); GridDataFactory.fillDefaults().grab(true, false).applyTo(valueText); applyDialogFont(main); addKeyContentProposal(); addValueContentProposal(); return main; }