Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/RelationEditor.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/RelationEditor.java	(revision 1293)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/RelationEditor.java	(revision 1294)
@@ -32,4 +32,6 @@
 import javax.swing.JTable;
 import javax.swing.ListSelectionModel;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
 import javax.swing.event.TableModelEvent;
 import javax.swing.event.TableModelListener;
@@ -291,4 +293,25 @@
             }
         });
+        ListSelectionModel lsm = memberTable.getSelectionModel();
+        lsm.addListSelectionListener(new ListSelectionListener() {
+            @Override public void valueChanged(ListSelectionEvent e) {
+                ArrayList<OsmPrimitive> sel;
+                int cnt = memberTable.getSelectedRowCount();
+                if(cnt > 0)
+                {
+                    sel = new ArrayList<OsmPrimitive>(cnt);
+                    for (int i : memberTable.getSelectedRows())
+                        sel.add((OsmPrimitive)memberTable.getValueAt(i, 1));
+                }
+                else
+                {
+                    cnt = memberTable.getRowCount();
+                    sel = new ArrayList<OsmPrimitive>(cnt);
+                    for (int i = 0; i < cnt; ++i)
+                        sel.add((OsmPrimitive)memberTable.getValueAt(i, 1));
+                }
+                Main.ds.setSelected(sel);
+            }
+        });
         memberTable.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);
 
@@ -353,5 +376,5 @@
         }));
 
-        buttonPanel.add(createButton(marktr("Select"),"select",
+        /*buttonPanel.add(createButton(marktr("Select"),"select",
         tr("Highlight the member from the current table row as JOSM's selection"), KeyEvent.VK_S, new ActionListener() {
             public void actionPerformed(ActionEvent e) {
@@ -373,5 +396,5 @@
                 Main.ds.setSelected(sel);
             }
-        }));
+        }));*/
         buttonPanel.add(createButton(marktr("Download Members"),"downloadincomplete",
         tr("Download all incomplete ways and nodes in relation"), KeyEvent.VK_L, new ActionListener() {
Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java	(revision 1293)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java	(revision 1294)
@@ -19,6 +19,8 @@
 import javax.swing.ListSelectionModel;
 import javax.swing.event.ListSelectionListener;
+import javax.swing.event.ListSelectionEvent;
 
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.actions.AutoScaleAction;
 import org.openstreetmap.josm.command.DeleteCommand;
 import org.openstreetmap.josm.data.osm.DataSet;
@@ -69,4 +71,14 @@
             }
         });
+        displaylist.addListSelectionListener(new ListSelectionListener(){
+            @Override public void valueChanged(ListSelectionEvent e) {
+                Relation toEdit = (Relation) displaylist.getSelectedValue();
+                if (toEdit != null) {
+                    Main.ds.setSelected(toEdit);
+                    AutoScaleAction asa = new AutoScaleAction("selection");
+                    asa.actionPerformed(null);
+                }
+            }
+        });
 
         add(new JScrollPane(displaylist), BorderLayout.CENTER);
@@ -81,10 +93,10 @@
         }), GBC.std());
 
-        buttonPanel.add(new SideButton(marktr("Select"), "select", "Selection", tr("Select this relation"), new ActionListener() {
+        /*buttonPanel.add(new SideButton(marktr("Select"), "select", "Selection", tr("Select this relation"), new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 // replace selection with the relation from the list
                 Main.ds.setSelected((Relation)displaylist.getSelectedValue());
             }
-        }), GBC.std());
+        }), GBC.std());*/
 
         buttonPanel.add(new SideButton(marktr("Edit"), "edit", "Selection", tr( "Open an editor for the selected relation"), new ActionListener() {
