Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
Intellij Community
Commits
aa0e217b
Commit
aa0e217b
authored
11 years ago
by
Maxim.Mossienko
Browse files
Options
Download
Email Patches
Plain Diff
use more detailed path to file only when opened file name is not unique (IDEA-125958)
parent
fe729756
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/UniqueNameEditorTabTitleProvider.java
+1
-1
...api/fileEditor/impl/UniqueNameEditorTabTitleProvider.java
platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/UniqueVFilePathBuilderImpl.java
+14
-3
...j/openapi/fileEditor/impl/UniqueVFilePathBuilderImpl.java
platform/platform-api/src/com/intellij/openapi/fileEditor/UniqueVFilePathBuilder.java
+9
-0
...m/intellij/openapi/fileEditor/UniqueVFilePathBuilder.java
with
24 additions
and
4 deletions
+24
-4
platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/UniqueNameEditorTabTitleProvider.java
+
1
-
1
View file @
aa0e217b
...
...
@@ -30,7 +30,7 @@ public class UniqueNameEditorTabTitleProvider implements EditorTabTitleProvider
if
(!
UISettings
.
getInstance
().
SHOW_DIRECTORY_FOR_NON_UNIQUE_FILENAMES
||
DumbService
.
isDumb
(
project
))
{
return
null
;
}
final
String
uniqueName
=
UniqueVFilePathBuilder
.
getInstance
().
getUniqueVirtualFilePath
(
project
,
file
);
final
String
uniqueName
=
UniqueVFilePathBuilder
.
getInstance
().
getUniqueVirtualFilePath
WithinOpenedFileEditors
(
project
,
file
);
return
uniqueName
.
equals
(
file
.
getName
())
?
null
:
uniqueName
;
}
}
This diff is collapsed.
Click to expand it.
platform/lang-impl/src/com/intellij/openapi/fileEditor/impl/UniqueVFilePathBuilderImpl.java
+
14
-
3
View file @
aa0e217b
...
...
@@ -30,6 +30,7 @@ import org.jetbrains.annotations.NotNull;
import
java.io.File
;
import
java.util.Collection
;
import
java.util.Collections
;
/**
* @author yole
...
...
@@ -38,12 +39,22 @@ public class UniqueVFilePathBuilderImpl extends UniqueVFilePathBuilder {
@NotNull
@Override
public
String
getUniqueVirtualFilePath
(
Project
project
,
VirtualFile
file
)
{
return
getUniqueVirtualFilePath
(
project
,
file
,
false
);
}
@NotNull
@Override
public
String
getUniqueVirtualFilePathWithinOpenedFileEditors
(
Project
project
,
VirtualFile
vFile
)
{
return
getUniqueVirtualFilePath
(
project
,
vFile
,
true
);
}
private
String
getUniqueVirtualFilePath
(
Project
project
,
VirtualFile
file
,
boolean
skipNonOpenedFiles
)
{
String
fileName
=
file
.
getName
();
Collection
<
VirtualFile
>
filesWithSameName
=
FilenameIndex
.
getVirtualFilesByName
(
project
,
fileName
,
ProjectScope
.
getProjectScope
(
project
));
Collection
<
VirtualFile
>
filesWithSameName
=
skipNonOpenedFiles
?
Collections
.<
VirtualFile
>
emptySet
()
:
FilenameIndex
.
getVirtualFilesByName
(
project
,
fileName
,
ProjectScope
.
getProjectScope
(
project
));
THashSet
<
VirtualFile
>
setOfFilesWithTheSameName
=
new
THashSet
<
VirtualFile
>(
filesWithSameName
);
// add open files out of project scope
for
(
VirtualFile
openFile:
FileEditorManager
.
getInstance
(
project
).
getOpenFiles
())
{
for
(
VirtualFile
openFile:
FileEditorManager
.
getInstance
(
project
).
getOpenFiles
())
{
if
(
openFile
.
getName
().
equals
(
fileName
))
{
setOfFilesWithTheSameName
.
add
(
openFile
);
}
...
...
This diff is collapsed.
Click to expand it.
platform/platform-api/src/com/intellij/openapi/fileEditor/UniqueVFilePathBuilder.java
+
9
-
0
View file @
aa0e217b
...
...
@@ -30,6 +30,12 @@ public abstract class UniqueVFilePathBuilder {
public
String
getUniqueVirtualFilePath
(
Project
project
,
VirtualFile
vFile
)
{
return
vFile
.
getPresentableName
();
}
@NotNull
@Override
public
String
getUniqueVirtualFilePathWithinOpenedFileEditors
(
Project
project
,
VirtualFile
vFile
)
{
return
vFile
.
getPresentableName
();
}
};
public
static
UniqueVFilePathBuilder
getInstance
()
{
...
...
@@ -42,4 +48,7 @@ public abstract class UniqueVFilePathBuilder {
@NotNull
public
abstract
String
getUniqueVirtualFilePath
(
Project
project
,
VirtualFile
vFile
);
@NotNull
public
abstract
String
getUniqueVirtualFilePathWithinOpenedFileEditors
(
Project
project
,
VirtualFile
vFile
);
}
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment