diff options
author | Tor Norbye <tnorbye@google.com> | 2012-10-19 14:31:16 -0700 |
---|---|---|
committer | Tor Norbye <tnorbye@google.com> | 2012-10-19 14:31:46 -0700 |
commit | 2e851a6fcfda90bdf3b9e3059ff52b97a2be3522 (patch) | |
tree | b2a11aebf0070b4c3f0a67ebf28ba27a90f26d58 /lint | |
parent | 7a359895f07d5e6e508bb8b8502f5fd52d69e979 (diff) | |
download | sdk-2e851a6fcfda90bdf3b9e3059ff52b97a2be3522.zip sdk-2e851a6fcfda90bdf3b9e3059ff52b97a2be3522.tar.gz sdk-2e851a6fcfda90bdf3b9e3059ff52b97a2be3522.tar.bz2 |
38700: wrong reporting of <requestFocus /> as missing size
Change-Id: I93154fbe3c0d86b6767ef2283ecbc5038163c604
Diffstat (limited to 'lint')
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" + )); + } } |