diff --git a/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java b/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java
index b766d8d..e81634d 100644
--- a/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java
+++ b/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java
@@ -471,11 +471,17 @@ public class GenericRelationEditor extends RelationEditor  {
         MoveUpAction moveUpAction = new MoveUpAction();
         memberTableModel.getSelectionModel().addListSelectionListener(moveUpAction);
         tb.add(moveUpAction);
+        memberTable.getActionMap().put("moveUp", moveUpAction);
+        memberTable.getInputMap(MemberTable.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT)
+                .put(KeyStroke.getKeyStroke(KeyEvent.VK_UP, KeyEvent.ALT_DOWN_MASK), "moveUp");
 
         // -- move down action
         MoveDownAction moveDownAction = new MoveDownAction();
         memberTableModel.getSelectionModel().addListSelectionListener(moveDownAction);
         tb.add(moveDownAction);
+        memberTable.getActionMap().put("moveDown", moveDownAction);
+        memberTable.getInputMap(MemberTable.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT)
+                .put(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, KeyEvent.ALT_DOWN_MASK), "moveDown");
 
         tb.addSeparator();
 
@@ -488,6 +494,9 @@ public class GenericRelationEditor extends RelationEditor  {
         RemoveAction removeSelectedAction = new RemoveAction();
         memberTable.getSelectionModel().addListSelectionListener(removeSelectedAction);
         tb.add(removeSelectedAction);
+        memberTable.getActionMap().put("removeSelected", removeSelectedAction);
+        memberTable.getInputMap(MemberTable.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT)
+                .put(KeyStroke.getKeyStroke((char) KeyEvent.VK_DELETE), "removeSelected");
 
         tb.addSeparator();
         // -- sort action
