From 8a96f088f1abfb2d548a106c710f5411c709c381 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Thu, 29 Oct 2015 16:03:49 +0100 Subject: [PATCH] preselect last path component in move files dialog (IDEA-146662) --- .../MoveFilesOrDirectoriesDialog.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesDialog.java b/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesDialog.java index 2877cb5e6fed..9936a627b3f9 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesDialog.java +++ b/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesDialog.java @@ -92,7 +92,7 @@ public class MoveFilesOrDirectoriesDialog extends DialogWrapper { @Override public JComponent getPreferredFocusedComponent() { - return myTargetDirectoryField.getChildComponent(); + return myTargetDirectoryField; } @Override @@ -169,8 +169,13 @@ public class MoveFilesOrDirectoriesDialog extends DialogWrapper { RefactoringBundle.message("move.specified.elements")); } - myTargetDirectoryField.getChildComponent() - .setText(initialTargetDirectory == null ? "" : initialTargetDirectory.getVirtualFile().getPresentableUrl()); + final String initialTargetPath = initialTargetDirectory == null ? "" : initialTargetDirectory.getVirtualFile().getPresentableUrl(); + myTargetDirectoryField.getChildComponent().setText(initialTargetPath); + final int lastDirectoryIdx = initialTargetPath.lastIndexOf(File.separator); + final int textLength = initialTargetPath.length(); + if (lastDirectoryIdx > 0 && lastDirectoryIdx + 1 < textLength) { + myTargetDirectoryField.getChildComponent().getTextEditor().select(lastDirectoryIdx + 1, textLength); + } validateOKButton(); myHelpID = helpID;