diff options
author | Tor Norbye <tnorbye@google.com> | 2012-10-10 07:49:47 -0700 |
---|---|---|
committer | Tor Norbye <tnorbye@google.com> | 2012-10-10 07:52:06 -0700 |
commit | 1572d136fff518a0efd095748a73cabc2e7d4573 (patch) | |
tree | 6284d3bf47b67cf1d5f874b4cc3c58c166ff0894 /lint | |
parent | b3d655f5f6d372c9066c2b89274266eb123a0ef1 (diff) | |
download | sdk-1572d136fff518a0efd095748a73cabc2e7d4573.zip sdk-1572d136fff518a0efd095748a73cabc2e7d4573.tar.gz sdk-1572d136fff518a0efd095748a73cabc2e7d4573.tar.bz2 |
38325: onClick XML attribute with @string resource not recognised
Don't flag onClick handlers as missing when they are using resource
name indirections.
Also make the Go To Declaration hyperlink work for tools:context links
to activities.
Change-Id: Ie26cefd2cebef32e955e3031da707654f3dc7e06
Diffstat (limited to 'lint')
-rw-r--r-- | lint/libs/lint_checks/src/com/android/tools/lint/checks/OnClickDetector.java | 3 | ||||
-rw-r--r-- | lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/layout/onclick.xml | 6 |
2 files changed, 8 insertions, 1 deletions
diff --git a/lint/libs/lint_checks/src/com/android/tools/lint/checks/OnClickDetector.java b/lint/libs/lint_checks/src/com/android/tools/lint/checks/OnClickDetector.java index 04fdd9d..24dcf02 100644 --- a/lint/libs/lint_checks/src/com/android/tools/lint/checks/OnClickDetector.java +++ b/lint/libs/lint_checks/src/com/android/tools/lint/checks/OnClickDetector.java @@ -17,6 +17,7 @@ package com.android.tools.lint.checks; import static com.android.SdkConstants.ATTR_ON_CLICK; +import static com.android.SdkConstants.PREFIX_RESOURCE_REF; import com.android.annotations.NonNull; import com.android.tools.lint.client.api.LintDriver; @@ -132,7 +133,7 @@ public class OnClickDetector extends LayoutDetector implements ClassScanner { } else if (!value.equals(value.trim())) { context.report(ISSUE, attribute, context.getLocation(attribute), "There should be no whitespace around attribute values", null); - } else { + } else if (!value.startsWith(PREFIX_RESOURCE_REF)) { // Not resolved if (mNames == null) { mNames = new HashMap<String, Location.Handle>(); } diff --git a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/layout/onclick.xml b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/layout/onclick.xml index d534027..882c035 100644 --- a/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/layout/onclick.xml +++ b/lint/libs/lint_checks/tests/src/com/android/tools/lint/checks/data/res/layout/onclick.xml @@ -70,4 +70,10 @@ android:onClick="wrong7" android:text="Button" /> + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:onClick="@string/ok" + android:text="Button" /> + </LinearLayout> |