diff --git a/ts3-client/swing/src/main/java/com/ts3client/ui/ServerTreePanel.java b/ts3-client/swing/src/main/java/com/ts3client/ui/ServerTreePanel.java index 469f7fa..ae48399 100644 --- a/ts3-client/swing/src/main/java/com/ts3client/ui/ServerTreePanel.java +++ b/ts3-client/swing/src/main/java/com/ts3client/ui/ServerTreePanel.java @@ -119,6 +119,10 @@ public final class ServerTreePanel extends JScrollPane { @Override public void valueForPathChanged(TreePath path, Object newValue) { String nickname = String.valueOf(newValue).trim(); + Object edited = ((DefaultMutableTreeNode) path.getLastPathComponent()).getUserObject(); + // The server answers a rename to the name already held with "nickname is + // already in use", so a field closed unchanged is simply left alone. + if (edited instanceof ClientEntry && nickname.equals(((ClientEntry) edited).nickname)) return; if (!nickname.isEmpty()) actions.renameSelf(nickname); } };