aboutsummaryrefslogtreecommitdiffstats
path: root/lint
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2012-10-22 10:43:54 -0700
committerGerrit Code Review <noreply-gerritcodereview@google.com>2012-10-22 10:43:55 -0700
commit409b844dacb218522cd8f392d664bfe868867c5b (patch)
treeacc50129d63666ae9989567df0ca309c1a04909e /lint
parentfa5bbbc7297130d9cd4af45fa602a620d4da8f00 (diff)
parent2e851a6fcfda90bdf3b9e3059ff52b97a2be3522 (diff)
downloadsdk-409b844dacb218522cd8f392d664bfe868867c5b.zip
sdk-409b844dacb218522cd8f392d664bfe868867c5b.tar.gz
sdk-409b844dacb218522cd8f392d664bfe868867c5b.tar.bz2
Merge "38700: wrong reporting of <requestFocus /> as missing size"
Diffstat (limited to 'lint')
-rw-r--r--lint/libs/lint_checks/src/com/android/tools/lint/checks/RequiredAttributeDetector.java14
-rw-r--r--lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/RequiredAttributeDetectorTest.java9
2 files changed, 15 insertions, 8 deletions
diff --git a/lint/libs/lint_checks/src/com/android/tools/lint/checks/RequiredAttributeDetector.java b/lint/libs/lint_checks/src/com/android/tools/lint/checks/RequiredAttributeDetector.java
index a71f4b4..8cb2c42 100644
--- a/lint/libs/lint_checks/src/com/android/tools/lint/checks/RequiredAttributeDetector.java
+++ b/lint/libs/lint_checks/src/com/android/tools/lint/checks/RequiredAttributeDetector.java
@@ -30,6 +30,7 @@ import static com.android.SdkConstants.FN_RESOURCE_BASE;
import static com.android.SdkConstants.FQCN_GRID_LAYOUT_V7;
import static com.android.SdkConstants.GRID_LAYOUT;
import static com.android.SdkConstants.LAYOUT_RESOURCE_PREFIX;
+import static com.android.SdkConstants.REQUEST_FOCUS;
import static com.android.SdkConstants.STYLE_RESOURCE_PREFIX;
import static com.android.SdkConstants.TABLE_LAYOUT;
import static com.android.SdkConstants.TABLE_ROW;
@@ -311,12 +312,13 @@ public class RequiredAttributeDetector extends LayoutDetector implements Detecto
return;
}
- if (VIEW_MERGE.equals(element.getNodeName())) {
+ String tag = element.getTagName();
+ if (VIEW_MERGE.equals(tag)
+ || VIEW_INCLUDE.equals(tag)
+ || REQUEST_FOCUS.equals(tag)) {
return;
}
- boolean certain = true;
-
String parentTag = element.getParentNode() != null
? element.getParentNode().getNodeName() : "";
if (TABLE_LAYOUT.equals(parentTag)
@@ -326,11 +328,7 @@ public class RequiredAttributeDetector extends LayoutDetector implements Detecto
return;
}
- String tag = element.getTagName();
- if (tag.equals(VIEW_INCLUDE)) {
- return;
- }
-
+ boolean certain = true;
boolean isRoot = isRootElement(element);
if (isRoot || isRootElement(element.getParentNode())
&& VIEW_MERGE.equals(parentTag)) {
diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/RequiredAttributeDetectorTest.java b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/RequiredAttributeDetectorTest.java
index abf3e04..3bae4d7 100644
--- a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/RequiredAttributeDetectorTest.java
+++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/RequiredAttributeDetectorTest.java
@@ -82,4 +82,13 @@ public class RequiredAttributeDetectorTest extends AbstractCheckTest {
));
}
+ public void testRequestFocus() throws Exception {
+ // See http://code.google.com/p/android/issues/detail?id=38700
+ assertEquals(
+ "No warnings.",
+
+ lintProject(
+ "res/layout/edit_type.xml"
+ ));
+ }
}