View | Details | Raw Unified | Return to bug 147944 | Differences between
and this patch

Collapse All | Expand All

(-)src/org/eclipse/gef/ui/parts/GraphicalViewerKeyHandler.java (-9 / +11 lines)
Lines 456-471 Link Here
456
 * of the EditPart that currently has focus.
456
 * of the EditPart that currently has focus.
457
 * @param event the key event received
457
 * @param event the key event received
458
 */
458
 */
459
protected void processSelect(KeyEvent event) {
459
    protected void processSelect(KeyEvent event) {
460
	EditPart part = getViewer().getFocusEditPart();
460
        EditPart part = getViewer().getFocusEditPart();
461
	if ((event.stateMask & SWT.CONTROL) != 0
461
        if (part != getViewer().getContents()) {
462
	  && part.getSelected() != EditPart.SELECTED_NONE)
462
            if ((event.stateMask & SWT.CONTROL) != 0
463
		getViewer().deselect(part);
463
                && part.getSelected() != EditPart.SELECTED_NONE)
464
	else
464
                getViewer().deselect(part);
465
		getViewer().appendSelection(part);
465
            else
466
                getViewer().appendSelection(part);
466
467
467
	getViewer().setFocus(part);
468
            getViewer().setFocus(part);
468
}
469
        }
470
    }
469
471
470
void scrollViewer(KeyEvent event) {
472
void scrollViewer(KeyEvent event) {
471
	if (!(getViewer().getControl() instanceof FigureCanvas))
473
	if (!(getViewer().getControl() instanceof FigureCanvas))

Return to bug 147944