Community
Participate
Working Groups
Build ID: M20080911-1700 Steps To Reproduce: 1. Create a ViewPart with a org.eclipse.swt.widgets.Text widget: public class View extends ViewPart implements VerifyListener{ public static final String ID = "testinsert.view"; private Text viewer; public void createPartControl(Composite parent) { viewer = new Text(parent, SWT.MULTI); viewer.addVerifyListener(this); } public void verifyText(VerifyEvent e) { System.err.println("e=->"+e.text+"<-"); if (!e.text.contains("new text")){ //System.err.println("appending new text"); //viewer.setSelection(0); //viewer.insert("inserting new text\n"); System.err.println("appending new text"); viewer.append("new text\n"); } } public void setFocus() { viewer.setFocus(); } } 2. Start a RAP application showing this view. 3. Type "foo" slowly into the widget. Stderr prints the folling lines, but no text except for the typed character is appended to the text widget: e=->f<- appending new text e=->new text <- e=->fo<- appending new text e=->fnew text <- e=->foo<- appending new text e=->fonew text <- The same code can be tested in an RCP application and appends "new text" to the widget as expected. Same problems are observed if the viewer.append() is replaced with viewer.setSelection() and viewer.insert() (see comments in the example above). More information: RAP Version tested is 1.1.1.20080917-1637 This bug may be related to https://bugs.eclipse.org/bugs/show_bug.cgi?id=244008 but different VerifyEvent field meanings don't explain why Text.append() and Text.insert() don't work as expected.
I can confirm this. As a workaround you can append the text to e.text instead of Text widget.