public ComboNavigable(Combo combo) { fCombo = combo; // workaround for bug 103630: fLastSelection = getSelection(); fCaretPosition = fLastSelection.y; fCombo.addKeyListener( new KeyAdapter() { public void keyReleased(KeyEvent e) { selectionChanged(); } }); fCombo.addMouseListener( new MouseAdapter() { public void mouseUp(MouseEvent e) { selectionChanged(); } }); }