diff --git a/plugins/android/src/META-INF/plugin.xml b/plugins/android/src/META-INF/plugin.xml
index 3e202563f1a4..2c61bedaa8a5 100644
--- a/plugins/android/src/META-INF/plugin.xml
+++ b/plugins/android/src/META-INF/plugin.xml
@@ -147,9 +147,6 @@
-
-
org.jetbrains.android.intentions.AndroidAddStringResourceAction
diff --git a/plugins/android/src/org/jetbrains/android/AndroidResourcesLineMarkerProvider.java b/plugins/android/src/org/jetbrains/android/AndroidResourcesLineMarkerProvider.java
deleted file mode 100644
index 021fd3e43888..000000000000
--- a/plugins/android/src/org/jetbrains/android/AndroidResourcesLineMarkerProvider.java
+++ /dev/null
@@ -1,372 +0,0 @@
-/*
- * Copyright 2000-2010 JetBrains s.r.o.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jetbrains.android;
-
-import com.android.resources.ResourceType;
-import com.intellij.codeHighlighting.Pass;
-import com.intellij.codeInsight.daemon.GutterIconNavigationHandler;
-import com.intellij.codeInsight.daemon.LineMarkerInfo;
-import com.intellij.codeInsight.daemon.LineMarkerProvider;
-import com.intellij.openapi.application.ApplicationManager;
-import com.intellij.openapi.project.Project;
-import com.intellij.openapi.util.Computable;
-import com.intellij.openapi.util.IconLoader;
-import com.intellij.openapi.util.Pair;
-import com.intellij.openapi.vfs.VirtualFile;
-import com.intellij.psi.*;
-import com.intellij.psi.util.PsiTreeUtil;
-import com.intellij.psi.util.PsiUtilCore;
-import com.intellij.psi.xml.XmlAttribute;
-import com.intellij.psi.xml.XmlAttributeValue;
-import com.intellij.psi.xml.XmlTag;
-import com.intellij.ui.awt.RelativePoint;
-import com.intellij.util.ConstantFunction;
-import com.intellij.util.containers.HashMap;
-import com.intellij.util.xml.GenericAttributeValue;
-import org.jetbrains.android.dom.resources.Attr;
-import org.jetbrains.android.dom.resources.DeclareStyleable;
-import org.jetbrains.android.dom.resources.ResourceElement;
-import org.jetbrains.android.dom.resources.Resources;
-import org.jetbrains.android.facet.AndroidFacet;
-import org.jetbrains.android.resourceManagers.LocalResourceManager;
-import org.jetbrains.android.util.AndroidCommonUtils;
-import org.jetbrains.android.util.AndroidResourceUtil;
-import org.jetbrains.android.util.AndroidUtils;
-import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-
-import javax.swing.*;
-import java.awt.event.MouseEvent;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-
-/**
- * @author coyote
- */
-public class AndroidResourcesLineMarkerProvider implements LineMarkerProvider {
- private static final Icon ICON = IconLoader.getIcon("/icons/navigate.png");
-
- public LineMarkerInfo getLineMarkerInfo(@NotNull PsiElement psiElement) {
- return null;
- }
-
- public void collectSlowLineMarkers(@NotNull List psiElements, @NotNull Collection lineMarkerInfos) {
- //noinspection ForLoopReplaceableByForEach
- for (int i = 0; i < psiElements.size(); i++) {
- PsiElement element = psiElements.get(i);
- addMarkerInfo(element, lineMarkerInfos);
- }
- }
-
- @NotNull
- private static String getToolTip(@NotNull PsiElement element) {
- String s = "Go to ";
- if (element instanceof PsiField) {
- PsiField field = (PsiField)element;
- PsiClass resClass = field.getContainingClass();
- assert resClass != null;
- PsiClass rClass = resClass.getContainingClass();
- assert rClass != null;
- return s + rClass.getName() + '.' + resClass.getName() + '.' + field.getName();
- }
- else {
- final PsiFile file = AndroidUtils.getContainingFile(element);
- if (file == null) {
- return s;
- }
- final PsiFile originalFile = file.getOriginalFile();
- String name = originalFile.getName();
- PsiDirectory dir = originalFile.getContainingDirectory();
- if (dir == null) return s + name;
- return s + dir.getName() + '/' + name;
- }
- }
-
- private static LineMarkerInfo createLineMarkerInfo(@NotNull PsiElement element, @NotNull PsiElement... targets) {
- final String toolTip = targets.length == 1 ? getToolTip(targets[0]) : "Resource not found";
- return new LineMarkerInfo(element,
- element.getTextOffset(),
- ICON,
- Pass.UPDATE_OVERRIDEN_MARKERS,
- new ConstantFunction(toolTip),
- new MyNavigationHandler(targets));
- }
-
- private static LineMarkerInfo createLazyLineMarkerInfo(@NotNull PsiElement element,
- @NotNull final Computable targetProvider) {
- return new LineMarkerInfo(element,
- element.getTextOffset(),
- ICON,
- Pass.UPDATE_OVERRIDEN_MARKERS,
- new ConstantFunction("Go to resource"),
- new MyLazyNavigationHandler(targetProvider));
- }
-
- private static void annotateXmlAttributeValue(@NotNull XmlAttributeValue attrValue, @NotNull Collection result) {
- final AndroidFacet facet = AndroidFacet.getInstance(attrValue);
- if (facet != null) {
- PsiElement parent = attrValue.getParent();
- if (!(parent instanceof XmlAttribute)) return;
- final XmlAttribute attr = (XmlAttribute)parent;
- if (attr.getLocalName().equals("name")) {
- final XmlTag tag = PsiTreeUtil.getParentOfType(attr, XmlTag.class);
- if (tag != null) {
- String fileResType = facet.getLocalResourceManager().getFileResourceType(tag.getContainingFile());
- final String resType = "values".equals(fileResType) ? AndroidResourceUtil.getResourceTypeByValueResourceTag(tag) : null;
- if (resType != null) {
- result.add(createLazyLineMarkerInfo(tag, new Computable() {
- @Override
- public PsiElement[] compute() {
- String name = tag.getAttributeValue("name");
- return name != null ? AndroidResourceUtil.findResourceFields(facet, resType, name, false) : PsiElement.EMPTY_ARRAY;
- }
- }));
- }
- }
- }
- else if (AndroidResourceUtil.isIdDeclaration(attrValue)) {
- result.add(createLazyLineMarkerInfo(attrValue, new Computable() {
- @Override
- public PsiElement[] compute() {
- return AndroidResourceUtil.findIdFields(attr);
- }
- }));
- }
- }
- }
-
- private static void addMarkerInfo(@NotNull final PsiElement element, @NotNull Collection result) {
- if (element instanceof PsiFile) {
- PsiField[] fields = AndroidResourceUtil.findResourceFieldsForFileResource((PsiFile)element, false);
- if (fields.length > 0) result.add(createLineMarkerInfo(element, fields));
- }
- else if (element instanceof PsiClass) {
- PsiClass c = (PsiClass)element;
- if (AndroidUtils.R_CLASS_NAME.equals(c.getName())) {
- PsiFile containingFile = element.getContainingFile();
- AndroidFacet facet = AndroidFacet.getInstance(containingFile);
- if (facet != null && AndroidResourceUtil.isRJavaFile(facet, containingFile)) {
- LocalResourceManager manager = facet.getLocalResourceManager();
- annotateRClass((PsiClass)element, result, manager);
- }
- }
- }
- else if (element instanceof XmlAttributeValue) {
- annotateXmlAttributeValue((XmlAttributeValue)element, result);
- }
- }
-
- @NotNull
- private static Map> buildLocalResourceMap(@NotNull Project project,
- @NotNull final LocalResourceManager resManager) {
- final Map> result = new HashMap>();
- List> resourceFiles = resManager.getResourceElements();
- for (Pair pair : resourceFiles) {
- final Resources res = pair.getFirst();
- for (ResourceType valueResourceType : AndroidResourceUtil.VALUE_RESOURCE_TYPES) {
- for (ResourceElement valueResource : AndroidResourceUtil.getValueResourcesFromElement(valueResourceType.getName(), res)) {
- addResource(valueResourceType.getName(), valueResource, result);
- }
- }
- for (Attr attr : res.getAttrs()) {
- addResource("attr", attr, result);
- }
- for (DeclareStyleable styleable : res.getDeclareStyleables()) {
- addResource("styleable", styleable, result);
- for (Attr attr : styleable.getAttrs()) {
- addResource("attr", attr, result);
- }
- }
- }
- collectFileResources(project, resManager, result);
- return result;
- }
-
- private static void collectFileResources(Project project,
- final LocalResourceManager resManager,
- final Map> result) {
- final PsiManager psiManager = PsiManager.getInstance(project);
- ApplicationManager.getApplication().runReadAction(new Runnable() {
- public void run() {
- List resourceSubdirs = resManager.getResourceSubdirs(null);
- for (VirtualFile dir : resourceSubdirs) {
- String resType = AndroidCommonUtils.getResourceTypeByDirName(dir.getName());
- if (resType != null) {
- for (VirtualFile resourceFile : dir.getChildren()) {
- if (!resourceFile.isDirectory()) {
- PsiFile resourcePsiFile = psiManager.findFile(resourceFile);
- if (resourcePsiFile != null) {
- String resName = AndroidCommonUtils.getResourceName(resType, resourceFile.getName());
- MyResourceEntry key = new MyResourceEntry(resName, resType);
- List list = result.get(key);
- if (list == null) {
- list = new ArrayList();
- result.put(key, list);
- }
- list.add(resourcePsiFile);
- }
- }
- }
- }
- }
- }
- });
- }
-
- private static void addResource(String resType, ResourceElement resElement, Map> result) {
- GenericAttributeValue nameValue = resElement.getName();
- if (nameValue != null) {
- String name = nameValue.getValue();
- if (name != null) {
- MyResourceEntry key = new MyResourceEntry(name, resType);
- List list = result.get(key);
- if (list == null) {
- list = new ArrayList();
- result.put(key, list);
- }
- list.add(nameValue.getXmlAttributeValue());
- }
- }
- }
-
- private static void annotateRClass(@NotNull PsiClass rClass,
- @NotNull Collection result,
- @NotNull LocalResourceManager manager) {
- Map> resourceMap = buildLocalResourceMap(rClass.getProject(), manager);
- for (PsiClass c : rClass.getInnerClasses()) {
- for (PsiField field : c.getFields()) {
- annotateElementNavToResource(field, field, manager, result, resourceMap, false);
- }
- }
- }
-
- private static void annotateElementNavToResource(PsiElement element,
- final PsiField resField,
- final LocalResourceManager manager,
- Collection result,
- @Nullable final Map> resourceMap,
- boolean lazy) {
- final String fieldName = resField.getName();
- if (fieldName != null) {
- final String resType = AndroidResourceUtil.getResourceClassName(resField);
- if (resType != null) {
- Computable targetProvider = new Computable() {
- @Override
- public PsiElement[] compute() {
- final List targets;
- if (resourceMap != null) {
- targets = new ArrayList();
- if (resType.equals("id")) {
- targets.addAll(manager.findIdDeclarations(fieldName));
- }
- List resources = resourceMap.get(new MyResourceEntry(fieldName, resType));
- if (resources != null) {
- targets.addAll(resources);
- }
- }
- else {
- targets = manager.findResourcesByField(resField);
- }
- return PsiUtilCore.toPsiElementArray(targets);
- }
- };
- if (lazy) {
- result.add(createLazyLineMarkerInfo(element, targetProvider));
- }
- else {
- PsiElement[] targets = targetProvider.compute();
- if (targets != null && targets.length > 0) {
- result.add(createLineMarkerInfo(element, targets));
- }
- }
- }
- }
- }
-
- static class MyResourceEntry {
- final String myName;
- final String myType;
-
- private MyResourceEntry(@NotNull String name, @NotNull String type) {
- myName = name;
- myType = type;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
-
- MyResourceEntry that = (MyResourceEntry)o;
-
- if (!AndroidUtils.equal(myName, that.myName, false)) return false;
- if (!myType.equals(that.myType)) return false;
-
- return true;
- }
-
- @Override
- public int hashCode() {
- int result = 0;
- for (int i = 0; i < myName.length(); i++) {
- char c = myName.charAt(i);
- if (Character.isLetterOrDigit(c)) {
- result = 31 * result + (int)c;
- }
- }
- result = 31 * result + myType.hashCode();
- return result;
- }
- }
-
- public static class MyNavigationHandler implements GutterIconNavigationHandler {
- private final PsiElement[] myTargets;
-
- private MyNavigationHandler(@NotNull PsiElement[] targets) {
- myTargets = targets;
- }
-
- public void navigate(MouseEvent event, PsiElement psiElement) {
- AndroidUtils.navigateTo(myTargets, event != null ? new RelativePoint(event) : null);
- }
-
- public PsiElement[] getTargets() {
- return myTargets;
- }
- }
-
- public static class MyLazyNavigationHandler implements GutterIconNavigationHandler {
- private final Computable myTargetProvider;
-
- private MyLazyNavigationHandler(Computable targetProvider) {
- myTargetProvider = targetProvider;
- }
-
- @Override
- public void navigate(MouseEvent event, PsiElement psiElement) {
- PsiElement[] targets = myTargetProvider.compute();
- if (targets != null && targets.length > 0) {
- AndroidUtils.navigateTo(targets, event != null ? new RelativePoint(event) : null);
- }
- }
-
- public Computable getTargetProvider() {
- return myTargetProvider;
- }
- }
-}
diff --git a/plugins/android/testData/addStringRes/R.java b/plugins/android/testData/R.java
similarity index 100%
rename from plugins/android/testData/addStringRes/R.java
rename to plugins/android/testData/R.java
diff --git a/plugins/android/testData/dom/R.java b/plugins/android/testData/dom/R.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/dom/R.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/findUsages/R.java b/plugins/android/testData/findUsages/R.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/findUsages/R.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/libModule/FindUsagesR.java b/plugins/android/testData/libModule/FindUsagesR.java
deleted file mode 100644
index 4195e3dfbb70..000000000000
--- a/plugins/android/testData/libModule/FindUsagesR.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
\ No newline at end of file
diff --git a/plugins/android/testData/libModule/FindUsagesR1.java b/plugins/android/testData/libModule/LibR.java
similarity index 100%
rename from plugins/android/testData/libModule/FindUsagesR1.java
rename to plugins/android/testData/libModule/LibR.java
diff --git a/plugins/android/testData/libModule/RJavaFileMarkers.java b/plugins/android/testData/libModule/RJavaFileMarkers.java
deleted file mode 100644
index d7a42e355017..000000000000
--- a/plugins/android/testData/libModule/RJavaFileMarkers.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package p1.p2;
-
-public final class R {
- public static final class layout {
- public static final int main = 0x7f040000;
- }
-
- public static final class string {
- public static final int myLibResource = 0x7f040001;
- }
-
- public static final class id {
- public static final int myButton = 0x7f090002;
- }
-}
\ No newline at end of file
diff --git a/plugins/android/testData/libModule/RJavaFileMarkers1.java b/plugins/android/testData/libModule/RJavaFileMarkers1.java
deleted file mode 100644
index d7a42e355017..000000000000
--- a/plugins/android/testData/libModule/RJavaFileMarkers1.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package p1.p2;
-
-public final class R {
- public static final class layout {
- public static final int main = 0x7f040000;
- }
-
- public static final class string {
- public static final int myLibResource = 0x7f040001;
- }
-
- public static final class id {
- public static final int myButton = 0x7f090002;
- }
-}
\ No newline at end of file
diff --git a/plugins/android/testData/rename/R.java b/plugins/android/testData/rename/R.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R1.java b/plugins/android/testData/rename/R1.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R1.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R2.java b/plugins/android/testData/rename/R2.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R2.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R5.java b/plugins/android/testData/rename/R5.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R5.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R6.java b/plugins/android/testData/rename/R6.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R6.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R8_after.java b/plugins/android/testData/rename/R8_after.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R8_after.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R9.java b/plugins/android/testData/rename/R9.java
deleted file mode 100644
index 7d382dd4b4de..000000000000
--- a/plugins/android/testData/rename/R9.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package p1.p2;
-
-public final class R {
- public static final class attr {
- public static final int attr = 0x7f040002;
- }
-}
diff --git a/plugins/android/testData/rename/R9_after.java b/plugins/android/testData/rename/R9_after.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R9_after.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R_file_after.java b/plugins/android/testData/rename/R_file_after.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R_file_after.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R_id_after.java b/plugins/android/testData/rename/R_id_after.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R_id_after.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/rename/R_value_after.java b/plugins/android/testData/rename/R_value_after.java
deleted file mode 100644
index 8dd79eb2cd09..000000000000
--- a/plugins/android/testData/rename/R_value_after.java
+++ /dev/null
@@ -1,4 +0,0 @@
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/resNavigation/ValueResourcesNavigation.xml b/plugins/android/testData/resNavigation/ValueResourcesNavigation.xml
deleted file mode 100644
index a51190c1db80..000000000000
--- a/plugins/android/testData/resNavigation/ValueResourcesNavigation.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
- some text
- some text
-
-
diff --git a/plugins/android/testData/resNavigation/src/p1/p2/R.java b/plugins/android/testData/resNavigation/src/p1/p2/R.java
deleted file mode 100644
index f47f19860335..000000000000
--- a/plugins/android/testData/resNavigation/src/p1/p2/R.java
+++ /dev/null
@@ -1,11 +0,0 @@
-/* AUTO-GENERATED FILE. DO NOT MODIFY.
- *
- * This class was automatically generated by the
- * aapt tool from the resource data it found. It
- * should not be modified by hand.
- */
-
-package p1.p2;
-
-public final class R {
-}
diff --git a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation1.java b/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation1.java
deleted file mode 100644
index 41474efff801..000000000000
--- a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation1.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/* AUTO-GENERATED FILE. DO NOT MODIFY.
- *
- * This class was automatically generated by the
- * aapt tool from the resource data it found. It
- * should not be modified by hand.
- */
-
-package p1.p2;
-
-public final class R {
- public static final class array {
- public static final int colors=0x7f070000;
- public static final int planets=0x7f070001;
- }
-}
diff --git a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation2.java b/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation2.java
deleted file mode 100644
index 2cc2361059a5..000000000000
--- a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation2.java
+++ /dev/null
@@ -1,14 +0,0 @@
-/* AUTO-GENERATED FILE. DO NOT MODIFY.
- *
- * This class was automatically generated by the
- * aapt tool from the resource data it found. It
- * should not be modified by hand.
- */
-
-package p1.p2;
-
-public final class R {
- public static final class drawable {
- public static final int png=0x7f020000;
- }
-}
diff --git a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation3.java b/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation3.java
deleted file mode 100644
index 217bb4cffd43..000000000000
--- a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation3.java
+++ /dev/null
@@ -1,14 +0,0 @@
-/* AUTO-GENERATED FILE. DO NOT MODIFY.
- *
- * This class was automatically generated by the
- * aapt tool from the resource data it found. It
- * should not be modified by hand.
- */
-
-package p1.p2;
-
-public final class R {
- public static final class id {
- public static final int myId1=0x7f090006;
- }
-}
diff --git a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation4.java b/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation4.java
deleted file mode 100644
index 6419a712dfa2..000000000000
--- a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation4.java
+++ /dev/null
@@ -1,14 +0,0 @@
-/* AUTO-GENERATED FILE. DO NOT MODIFY.
- *
- * This class was automatically generated by the
- * aapt tool from the resource data it found. It
- * should not be modified by hand.
- */
-
-package p1.p2;
-
-public final class R {
- public static final class id {
- public static final int lunch=0x7f090006;
- }
-}
diff --git a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation5.java b/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation5.java
deleted file mode 100644
index a1582eaee0d0..000000000000
--- a/plugins/android/testData/resNavigation/src/p1/p2/RJavaFileNavigation5.java
+++ /dev/null
@@ -1,14 +0,0 @@
-/* AUTO-GENERATED FILE. DO NOT MODIFY.
- *
- * This class was automatically generated by the
- * aapt tool from the resource data it found. It
- * should not be modified by hand.
- */
-
-package p1.p2;
-
-public final class R {
- public static final class id {
- public static final int lunccccch=0x7f090006;
- }
-}
diff --git a/plugins/android/testSrc/org/jetbrains/android/AndroidFindUsagesTest.java b/plugins/android/testSrc/org/jetbrains/android/AndroidFindUsagesTest.java
index 6dd6f4b58898..aeeefd92516e 100644
--- a/plugins/android/testSrc/org/jetbrains/android/AndroidFindUsagesTest.java
+++ b/plugins/android/testSrc/org/jetbrains/android/AndroidFindUsagesTest.java
@@ -42,7 +42,7 @@ public class AndroidFindUsagesTest extends AndroidTestCase {
public void setUp() throws Exception {
super.setUp();
myFixture.copyFileToProject(BASE_PATH + "picture3.gif", "res/drawable/picture3.gif");
- myFixture.copyFileToProject(BASE_PATH + "R.java", "gen/p1/p2/R.java");
+ myFixture.copyFileToProject("R.java", "gen/p1/p2/R.java");
}
public List findCodeUsages(String path, String pathInProject) throws Throwable {
diff --git a/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java b/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java
index 77c2c0b168ec..9ecfa303c689 100644
--- a/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java
+++ b/plugins/android/testSrc/org/jetbrains/android/AndroidRenameTest.java
@@ -62,10 +62,10 @@ public class AndroidRenameTest extends AndroidTestCase {
myFixture.configureFromExistingVirtualFile(file);
myFixture.copyFileToProject(BASE_PATH + "pic.png", "res/drawable/pic.png");
myFixture.copyFileToProject(BASE_PATH + "styles.xml", "res/values/styles.xml");
- myFixture.copyFileToProject(BASE_PATH + "R1.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
renameElementWithTextOccurences("pic1.png");
myFixture.checkResultByFile(BASE_PATH + "layout_file_after.xml");
- myFixture.checkResultByFile(R_JAVA_PATH, BASE_PATH + "R_file_after.java", true);
+ myFixture.checkResultByFile(R_JAVA_PATH, "R.java", true);
myFixture.checkResultByFile("res/values/styles.xml", BASE_PATH + "styles_after.xml", true);
assertNotNull(myFixture.findFileInTempDir("res/drawable/pic1.png"));
}
@@ -76,10 +76,10 @@ public class AndroidRenameTest extends AndroidTestCase {
myFixture.configureFromExistingVirtualFile(file);
myFixture.copyFileToProject(BASE_PATH + "pic.png", "res/drawable/pic.9.png");
myFixture.copyFileToProject(BASE_PATH + "styles.xml", "res/values/styles.xml");
- myFixture.copyFileToProject(BASE_PATH + "R1.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
renameElementWithTextOccurences("pic1.9.png");
myFixture.checkResultByFile(BASE_PATH + "layout_file_after.xml");
- myFixture.checkResultByFile(R_JAVA_PATH, BASE_PATH + "R_file_after.java", true);
+ myFixture.checkResultByFile(R_JAVA_PATH, "R.java", true);
myFixture.checkResultByFile("res/values/styles.xml", BASE_PATH + "styles_after.xml", true);
assertNotNull(myFixture.findFileInTempDir("res/drawable/pic1.9.png"));
}
@@ -129,10 +129,10 @@ public class AndroidRenameTest extends AndroidTestCase {
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "layout2.xml", "res/layout/layout2.xml");
myFixture.configureFromExistingVirtualFile(file);
myFixture.copyFileToProject(BASE_PATH + "strings.xml", "res/values/strings.xml");
- myFixture.copyFileToProject(BASE_PATH + "R2.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.renameElementAtCaret("str1");
myFixture.checkResultByFile(BASE_PATH + "layout_value_after.xml");
- myFixture.checkResultByFile(R_JAVA_PATH, BASE_PATH + "R_value_after.java", true);
+ myFixture.checkResultByFile(R_JAVA_PATH, "R.java", true);
myFixture.checkResultByFile("res/values/strings.xml", BASE_PATH + "strings_after.xml", true);
}
@@ -158,12 +158,12 @@ public class AndroidRenameTest extends AndroidTestCase {
myFixture.configureFromExistingVirtualFile(file);
myFixture.copyFileToProject(BASE_PATH + "layoutStrUsage.xml", "res/layout/layoutStrUsage.xml");
- myFixture.copyFileToProject(BASE_PATH + "R2.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
findHandlerAndDoRename();
myFixture.checkResultByFile(BASE_PATH + "strings_after.xml");
- myFixture.checkResultByFile(R_JAVA_PATH, BASE_PATH + "R_value_after.java", true);
+ myFixture.checkResultByFile(R_JAVA_PATH, "R.java", true);
myFixture.checkResultByFile("res/layout/layoutStrUsage.xml", BASE_PATH + "layoutStrUsage_after.xml", true);
}
@@ -187,7 +187,7 @@ public class AndroidRenameTest extends AndroidTestCase {
createManifest();
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "RefR3.java", "src/p1/p2/RefR3.java");
myFixture.configureFromExistingVirtualFile(file);
- myFixture.copyFileToProject(BASE_PATH + "R.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.copyFileToProject(BASE_PATH + "layout3.xml", "res/layout/layout3.xml");
myFixture.copyFileToProject(BASE_PATH + "pic.png", "res/drawable/pic.png");
myFixture.renameElementAtCaret("pic1");
@@ -200,7 +200,7 @@ public class AndroidRenameTest extends AndroidTestCase {
createManifest();
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "RefR4.java", "src/p1/p2/RefR4.java");
myFixture.configureFromExistingVirtualFile(file);
- myFixture.copyFileToProject(BASE_PATH + "R.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.copyFileToProject(BASE_PATH + "layout4.xml", "res/layout/layout4.xml");
myFixture.copyFileToProject(BASE_PATH + "strings.xml", "res/values/strings.xml");
myFixture.renameElementAtCaret("str1");
@@ -213,26 +213,26 @@ public class AndroidRenameTest extends AndroidTestCase {
createManifest();
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "layout5.xml", "res/layout/layout5.xml");
myFixture.configureFromExistingVirtualFile(file);
- myFixture.copyFileToProject(BASE_PATH + "R5.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.renameElementAtCaret("@+id/anchor1");
myFixture.checkResultByFile(BASE_PATH + "layout_id_after.xml");
- myFixture.checkResultByFile(R_JAVA_PATH, BASE_PATH + "R_id_after.java", true);
+ myFixture.checkResultByFile(R_JAVA_PATH, "R.java", true);
}
public void testIdDeclaration() throws Throwable {
createManifest();
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "layout6.xml", "res/layout/layout6.xml");
myFixture.configureFromExistingVirtualFile(file);
- myFixture.copyFileToProject(BASE_PATH + "R6.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.renameElementAtCaret("@+id/anchor1");
myFixture.checkResultByFile(BASE_PATH + "layout_id_after.xml");
- myFixture.checkResultByFile(R_JAVA_PATH, BASE_PATH + "R_id_after.java", true);
+ myFixture.checkResultByFile(R_JAVA_PATH, "R.java", true);
}
public void testJavaReferenceToId() throws Throwable {
createManifest();
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "RefR7.java", "src/p1/p2/RefR7.java");
- myFixture.copyFileToProject(BASE_PATH + "R.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.configureFromExistingVirtualFile(file);
myFixture.copyFileToProject(BASE_PATH + "layout7.xml", "res/layout/layout7.xml");
myFixture.renameElementAtCaret("anchor1");
@@ -243,7 +243,7 @@ public class AndroidRenameTest extends AndroidTestCase {
public void testStyleable() throws Throwable {
createManifest();
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "RefR8.java", "src/p1/p2/RefR8.java");
- myFixture.copyFileToProject(BASE_PATH + "R.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.configureFromExistingVirtualFile(file);
myFixture.copyFileToProject(BASE_PATH + "attrs8.xml", "res/values/attrs8.xml");
myFixture.renameElementAtCaret("LabelView1");
@@ -254,7 +254,7 @@ public class AndroidRenameTest extends AndroidTestCase {
public void testAttr() throws Throwable {
createManifest();
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + "RefR9.java", "src/p1/p2/RefR9.java");
- myFixture.copyFileToProject(BASE_PATH + "R.java", R_JAVA_PATH);
+ myFixture.copyFileToProject("R.java", R_JAVA_PATH);
myFixture.configureFromExistingVirtualFile(file);
myFixture.copyFileToProject(BASE_PATH + "attrs9.xml", "res/values/attrs9.xml");
myFixture.renameElementAtCaret("attr1");
diff --git a/plugins/android/testSrc/org/jetbrains/android/AndroidResourcesLineMarkerTest.java b/plugins/android/testSrc/org/jetbrains/android/AndroidResourcesLineMarkerTest.java
index d88bc50189c4..10c5a336de88 100644
--- a/plugins/android/testSrc/org/jetbrains/android/AndroidResourcesLineMarkerTest.java
+++ b/plugins/android/testSrc/org/jetbrains/android/AndroidResourcesLineMarkerTest.java
@@ -25,83 +25,6 @@ public class AndroidResourcesLineMarkerTest extends AndroidTestCase {
myFixture.copyDirectoryToProject(BASE_PATH + "res", "res");
}
- /*public void testRJavaFile() throws Exception {
- List markers = collectMarkers("src/p1/p2/R.java");
- assertEquals(26, markers.size());
- for (LineMarkerInfo marker : markers) {
- PsiField field = (PsiField)marker.getElement();
- GutterIconNavigationHandler handler = marker.getNavigationHandler();
- assertInstanceOf(handler, AndroidResourcesLineMarkerProvider.MyNavigationHandler.class);
- PsiElement[] targets = ((AndroidResourcesLineMarkerProvider.MyNavigationHandler)handler).getTargets();
- checkTargets(field, targets);
- }
- }
-
- public void testValueResourcesFile() throws Exception {
- copyRJava();
- List markers = collectMarkers("res/values/ids.xml");
- assertEquals(3, markers.size());
- for (LineMarkerInfo marker : markers) {
- GutterIconNavigationHandler handler = marker.getNavigationHandler();
- assertInstanceOf(handler, AndroidResourcesLineMarkerProvider.MyLazyNavigationHandler.class);
- Computable targetProvider = ((AndroidResourcesLineMarkerProvider.MyLazyNavigationHandler)handler).getTargetProvider();
- PsiElement[] targets = targetProvider.compute();
- assertNotNull(targets);
- assertEquals(1, targets.length);
- for (PsiElement target : targets) {
- assertInstanceOf(target, PsiField.class);
- }
- }
- }
-
- public void testLayoutFile() throws Exception {
- copyRJava();
- List markers = collectMarkers("res/layout/layout1.xml");
- assertEquals(5, markers.size());
-
- boolean fileMarker = false;
-
- for (LineMarkerInfo marker : markers) {
- GutterIconNavigationHandler handler = marker.getNavigationHandler();
- PsiElement[] targets;
- if (marker.getElement() instanceof XmlFile) {
- fileMarker = true;
- assertInstanceOf(handler, AndroidResourcesLineMarkerProvider.MyNavigationHandler.class);
- targets = ((AndroidResourcesLineMarkerProvider.MyNavigationHandler)handler).getTargets();
- }
- else {
- assertInstanceOf(handler, AndroidResourcesLineMarkerProvider.MyLazyNavigationHandler.class);
- Computable targetProvider = ((AndroidResourcesLineMarkerProvider.MyLazyNavigationHandler)handler).getTargetProvider();
- targets = targetProvider.compute();
- }
- assertNotNull(targets);
- assertEquals(1, targets.length);
- for (PsiElement target : targets) {
- assertInstanceOf(target, PsiField.class);
- }
- }
-
- assertTrue("LineMarker for file not found", fileMarker);
- }
-
- public void testJavaFileMarkers() throws Exception {
- copyRJava();
- List markers = collectMarkers("src/p1/p2/Java.java");
-
- // do not draw line markers on usages of a resource: AndroidGotoDeclarationHandler provides navigation instead
- assertEquals(0, markers.size());
-
- for (LineMarkerInfo marker : markers) {
- PsiReferenceExpression expression = (PsiReferenceExpression)marker.getElement();
- PsiField field = (PsiField)expression.resolve();
- GutterIconNavigationHandler handler = marker.getNavigationHandler();
- assertInstanceOf(handler, AndroidResourcesLineMarkerProvider.MyLazyNavigationHandler.class);
- Computable targetProvider = ((AndroidResourcesLineMarkerProvider.MyLazyNavigationHandler)handler).getTargetProvider();
- PsiElement[] targets = targetProvider.compute();
- checkTargets(field, targets);
- }
- }*/
-
public void testJavaFileNavigation1() throws Exception {
doJavaFileNavigationTest(1, true);
}
@@ -130,42 +53,12 @@ public class AndroidResourcesLineMarkerTest extends AndroidTestCase {
doJavaFileNavigationTest(1, true);
}
- /*public void testRJavaFileNavigation1() throws Exception {
- doRJavaFileNavigationTest(1);
- }
-
- public void testRJavaFileNavigation2() throws Exception {
- doRJavaFileNavigationTest(2);
- }
-
- public void testRJavaFileNavigation3() throws Exception {
- doRJavaFileNavigationTest(3);
- }
-
- public void testRJavaFileNavigation4() throws Exception {
- doRJavaFileNavigationTest(1);
- }
-
- public void testRJavaFileNavigation5() throws Exception {
- doRJavaFileNavigationTest(0);
- }*/
-
- /*public void testValueResourcesNavigation() throws Exception {
- copyRJava();
- String fileName = getTestName(false) + ".xml";
- doJavaFileNavigationTest(fileName, "res/values/" + fileName, 1, true, false);
- }*/
-
private void doJavaFileNavigationTest(int expectedTargets, boolean expectedEnabled) throws IOException {
copyRJava();
String path = "src/p1/p2/" + getTestName(false) + ".java";
doJavaFileNavigationTest(path, path, expectedTargets, expectedEnabled, true);
}
- /*private void doRJavaFileNavigationTest(int expectedTargets) throws IOException {
- doJavaFileNavigationTest("src/p1/p2/" + getTestName(false) + ".java", "src/p1/p2/R.java", expectedTargets, true, false);
- }*/
-
private void doJavaFileNavigationTest(String srcPath, String destPath, int expectedTargets, boolean expectedEnabled,
boolean testGotoDeclaration) throws IOException {
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + srcPath, destPath);
@@ -177,51 +70,9 @@ public class AndroidResourcesLineMarkerTest extends AndroidTestCase {
assertNotNull(targets);
assertEquals(expectedTargets, targets.length);
}
-
- // test Ctrl+Alt+Shift+R
- /*GotoResourceAction action = new GotoResourceAction();
- DataContext dataContext = DataManager.getInstance().getDataContextFromFocus().getResult();
- AnActionEvent event = new AnActionEvent(null, dataContext, "", action.getTemplatePresentation(), ActionManager.getInstance(), 0);
- action.update(event);
- assertEquals(expectedEnabled, event.getPresentation().isEnabled());
- PsiElement[] targets = GotoResourceAction.findTargets(dataContext);
- assertEquals(expectedTargets, targets.length);*/
}
- /*private List collectMarkers(String filePath) throws IOException {
- return collectMarkers(myFixture, BASE_PATH + filePath, filePath);
- }
-
- public static List collectMarkers(JavaCodeInsightTestFixture fixture, String fromPath, String filePath) {
- VirtualFile file = fixture.copyFileToProject(fromPath, filePath);
- fixture.configureFromExistingVirtualFile(file);
- fixture.doHighlighting();
- List markers = DaemonCodeAnalyzerImpl.getLineMarkers(fixture.getEditor().getDocument(), fixture.getProject());
- assertNotNull(markers);
- return markers;
- }
-
- private static void checkTargets(PsiField field, PsiElement[] targets) {
- assertNotNull(targets);
- assertTrue(targets.length > 0);
- int expectedTargetCount = getExpectedTargetCount(field.getName());
- assertEquals(field.getName(), expectedTargetCount, targets.length);
- }
-
- private static int getExpectedTargetCount(String fieldName) {
- if ("png".equals(fieldName)) {
- return 2;
- }
- if ("str2".equals(fieldName)) {
- return 3;
- }
- if ("myId1".equals(fieldName)) {
- return 3;
- }
- return 1;
- }*/
-
private void copyRJava() throws IOException {
- myFixture.copyFileToProject(BASE_PATH + "src/p1/p2/R.java", "src/p1/p2/R.java");
+ myFixture.copyFileToProject("R.java", "src/p1/p2/R.java");
}
}
diff --git a/plugins/android/testSrc/org/jetbrains/android/dom/AndroidDomTest.java b/plugins/android/testSrc/org/jetbrains/android/dom/AndroidDomTest.java
index ac05b5376693..8282071d0961 100644
--- a/plugins/android/testSrc/org/jetbrains/android/dom/AndroidDomTest.java
+++ b/plugins/android/testSrc/org/jetbrains/android/dom/AndroidDomTest.java
@@ -28,7 +28,7 @@ abstract class AndroidDomTest extends AndroidTestCase {
@Override
public void setUp() throws Exception {
super.setUp();
- myFixture.copyFileToProject("dom/R.java", "gen/p1/p2/R.java");
+ myFixture.copyFileToProject("R.java", "gen/p1/p2/R.java");
myFixture.enableInspections(AndroidDomInspection.class,
AndroidUnknownAttributeInspection.class,
AndroidElementNotAllowedInspection.class);
diff --git a/plugins/android/testSrc/org/jetbrains/android/dom/AndroidLibraryProjectTest.java b/plugins/android/testSrc/org/jetbrains/android/dom/AndroidLibraryProjectTest.java
index b8bffa5c8bb7..95081c8af533 100644
--- a/plugins/android/testSrc/org/jetbrains/android/dom/AndroidLibraryProjectTest.java
+++ b/plugins/android/testSrc/org/jetbrains/android/dom/AndroidLibraryProjectTest.java
@@ -145,7 +145,7 @@ public class AndroidLibraryProjectTest extends UsefulTestCase {
public void testJavaHighlighting() {
createInitialStructure();
- myFixture.copyFileToProject(BASE_PATH + "FindUsagesR1.java", "lib/src/p1/p2/lib/R.java");
+ myFixture.copyFileToProject(BASE_PATH + "LibR.java", "lib/src/p1/p2/lib/R.java");
String to = "lib/src/p1/p2/lib" + getTestName(true) + ".java";
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + getTestName(false) + ".java", to);
myFixture.configureFromExistingVirtualFile(file);
@@ -186,7 +186,7 @@ public class AndroidLibraryProjectTest extends UsefulTestCase {
public void testJavaNavigation() throws Exception {
createInitialStructure();
- myFixture.copyFileToProject(BASE_PATH + "RJavaFileMarkers.java", "app/src/p1/p2/R.java");
+ myFixture.copyFileToProject("R.java", "app/src/p1/p2/R.java");
VirtualFile file = myFixture.copyFileToProject(BASE_PATH + getTestName(false) + ".java", "/app/src/p1/p2/Java.java");
myFixture.configureFromExistingVirtualFile(file);
@@ -242,9 +242,9 @@ public class AndroidLibraryProjectTest extends UsefulTestCase {
myFixture.copyFileToProject(BASE_PATH + "FindUsagesStyles.xml", "app/res/values/styles.xml");
myFixture.copyFileToProject(BASE_PATH + "FindUsagesStyles.xml", "lib/res/values/styles.xml");
myFixture.copyFileToProject(BASE_PATH + "picture1.png", "lib/res/drawable/picture1.png");
- myFixture.copyFileToProject(BASE_PATH + "FindUsagesR.java", "app/src/p1/p2/R.java");
- myFixture.copyFileToProject(BASE_PATH + "FindUsagesR1.java", "app/src/p1/p2/lib/R.java");
- myFixture.copyFileToProject(BASE_PATH + "FindUsagesR1.java", "lib/src/p1/p2/lib/R.java");
+ myFixture.copyFileToProject("R.java", "app/src/p1/p2/R.java");
+ myFixture.copyFileToProject(BASE_PATH + "LibR.java", "app/src/p1/p2/lib/R.java");
+ myFixture.copyFileToProject(BASE_PATH + "LibR.java", "lib/src/p1/p2/lib/R.java");
Collection references = findCodeUsages(getTestName(false) + "." + extension, dir);
assertEquals(6, references.size());
}
diff --git a/plugins/android/testSrc/org/jetbrains/android/intentions/AndroidAddStringResourceActionTest.java b/plugins/android/testSrc/org/jetbrains/android/intentions/AndroidAddStringResourceActionTest.java
index c2970ace69c0..64528f23d692 100644
--- a/plugins/android/testSrc/org/jetbrains/android/intentions/AndroidAddStringResourceActionTest.java
+++ b/plugins/android/testSrc/org/jetbrains/android/intentions/AndroidAddStringResourceActionTest.java
@@ -190,7 +190,7 @@ public class AndroidAddStringResourceActionTest extends AndroidTestCase {
if (stringsXml != null) {
myFixture.copyFileToProject(BASE_PATH + stringsXml, "res/values/strings.xml");
}
- myFixture.copyFileToProject(BASE_PATH + "R.java", "src/p1/p2/R.java");
+ myFixture.copyFileToProject("R.java", "src/p1/p2/R.java");
myFixture.configureFromExistingVirtualFile(javaFile);
final PsiFile javaPsiFile = myFixture.getFile();
assertTrue(new AndroidAddStringResourceAction().isAvailable(myFixture.getProject(), myFixture.getEditor(), javaPsiFile));