Component (final JTable table, Object value, boolean isSelected, final int row, int column) { final EditorTextField textField = (EditorTextField)super.getTableCellEditorComponent(table, value, isSelected, row, column); textField.registerKeyboardAction(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { PsiType type = getRowType(table, row); if (type != null) { completeVariable(textField, type); } } }, KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, InputEvent.CTRL_MASK), JComponent.WHEN_IN_FOCUSED_WINDOW); textField.setBorder(new LineBorder(table.getSelectionBackground())); return textField; }