/** @see org.eclipse.gef.tools.DirectEditManager#commit() */ protected void commit() { Shell activeShell = Display.getCurrent().getActiveShell(); if (activeShell != null && getCellEditor().getControl().getShell().equals(activeShell.getParent())) { Control[] children = activeShell.getChildren(); if (children.length == 1 && children[0] instanceof Table) { /* * CONTENT ASSIST: focus is lost to the content assist pop up - * stay in focus */ getCellEditor().getControl().setVisible(true); ((XtextStyledTextCellEditorEx) getCellEditor()).setDeactivationLock(true); return; } } // content assist hacks if (committed) { bringDown(); return; } committed = true; super.commit(); }