diff options
author | Siva Velusamy <vsiva@google.com> | 2014-08-05 17:46:09 -0700 |
---|---|---|
committer | Siva Velusamy <vsiva@google.com> | 2014-08-05 17:56:24 -0700 |
commit | 261b2fe692c401e9b79619a7b89a4d688f6b92ed (patch) | |
tree | b8ba797f49f81560825e75a858dd3d1f0d874d24 /android/testData/sdk1.5 | |
parent | 87d28ed8e3100d8e2287069c6544a67a0379dc3c (diff) | |
download | idea-261b2fe692c401e9b79619a7b89a4d688f6b92ed.tar.gz |
navigator: Handle overlapping source sets
Gradle projects, especially those migrated from Eclipse contain
overlapping source sets for different source types. e.g.:
java.srcDirs = ['src']
aidl.srcDirs = ['src']
resources.srcDirs = ['src', 'resources']
Currently, this will show up as separate nodes (java, aidl and resources),
with all of them showing the sources within their source folders. This
is not only odd, but causes issues where the navigator would expand multiple
nodes seemingly randomly when expanding a particular node. This happens
because we have a single folder present in multiple locations inside
the tree.
This CL improves this scenario by:
- If the source roots for a particular source type is a subset of
a previously shown source type's roots, then we just don't show
this source type. e.g. in the above case, we don't show aidl at
all since it is completely present inside java.
- If the set of source roots is an improper subset, we only show
those folders that have not already been shown. In the above example,
for resources, we only show the contents of the 'resources' folder
and not the 'src' folder.
Fixes https://code.google.com/p/android/issues/detail?id=74243 and
https://code.google.com/p/android/issues/detail?id=73928
Change-Id: I4a9c056e96096d6bf29239e5da41fca1746eb70e
Diffstat (limited to 'android/testData/sdk1.5')
0 files changed, 0 insertions, 0 deletions