Fix suppression related issues with Compose lint checks

We were previously using the wrong scope, so suppress annotations would not work when applied directly to the element.

Fixes: b/257293458
Fixes: b/257293766
Test: ComposableLambdaParameterDetectorTest, ModifierParameterDetectorTest
Change-Id: I35e80844d5fb87799c9d5c06e2691d99e15cbdb4
diff --git a/compose/runtime/runtime-lint/src/main/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetector.kt b/compose/runtime/runtime-lint/src/main/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetector.kt
index cd738fe..1ed4cd9 100644
--- a/compose/runtime/runtime-lint/src/main/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetector.kt
+++ b/compose/runtime/runtime-lint/src/main/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetector.kt
@@ -107,7 +107,7 @@
             if (name != "content" && parameterInfo.functionType.parameters.isEmpty()) {
                 context.report(
                     ComposableLambdaParameterNaming,
-                    node,
+                    uElement,
                     context.getNameLocation(uElement),
                     "Composable lambda parameter should be named `content`",
                     LintFix.create()
@@ -123,7 +123,7 @@
             if (parameter !== node.uastParameters.last()) {
                 context.report(
                     ComposableLambdaParameterPosition,
-                    node,
+                    uElement,
                     context.getNameLocation(uElement),
                     "Composable lambda parameter should be the last parameter so it can be used " +
                         "as a trailing lambda"
diff --git a/compose/runtime/runtime-lint/src/test/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetectorTest.kt b/compose/runtime/runtime-lint/src/test/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetectorTest.kt
index 4ace0ae..463830d 100644
--- a/compose/runtime/runtime-lint/src/test/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetectorTest.kt
+++ b/compose/runtime/runtime-lint/src/test/java/androidx/compose/runtime/lint/ComposableLambdaParameterDetectorTest.kt
@@ -59,7 +59,6 @@
             Stubs.Composable
         )
             .skipTestModes(TestMode.TYPE_ALIAS)
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293458
             .run()
             .expect(
                 """
@@ -97,7 +96,6 @@
             Stubs.Composable
         )
             .skipTestModes(TestMode.TYPE_ALIAS)
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293458
             .run()
             .expect(
                 """
@@ -127,7 +125,6 @@
             Stubs.Composable
         )
             .skipTestModes(TestMode.TYPE_ALIAS)
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293458
             .run()
             .expect(
                 """
@@ -169,7 +166,6 @@
             ),
             Stubs.Composable
         )
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293458
             .run()
             .expect(
                 """
@@ -235,7 +231,6 @@
             Stubs.Composable
         )
             .skipTestModes(TestMode.TYPE_ALIAS)
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293458
             .run()
             .expect(
                 """
diff --git a/compose/ui/ui-lint/src/main/java/androidx/compose/ui/lint/ModifierParameterDetector.kt b/compose/ui/ui-lint/src/main/java/androidx/compose/ui/lint/ModifierParameterDetector.kt
index d786c2f..bcc5884 100644
--- a/compose/ui/ui-lint/src/main/java/androidx/compose/ui/lint/ModifierParameterDetector.kt
+++ b/compose/ui/ui-lint/src/main/java/androidx/compose/ui/lint/ModifierParameterDetector.kt
@@ -75,7 +75,7 @@
             if (modifierParameter.name != ModifierParameterName) {
                 context.report(
                     ModifierParameter,
-                    node,
+                    modifierParameterElement,
                     context.getNameLocation(modifierParameterElement),
                     "$modifierName parameter should be named $ModifierParameterName",
                     LintFix.create()
@@ -91,7 +91,7 @@
             if (modifierParameter.type.canonicalText != Names.Ui.Modifier.javaFqn) {
                 context.report(
                     ModifierParameter,
-                    node,
+                    modifierParameterElement,
                     context.getNameLocation(modifierParameterElement),
                     "$modifierName parameter should have a type of $modifierName",
                     LintFix.create()
@@ -113,7 +113,7 @@
                 if (referenceExpression?.getReferencedName() != modifierName) {
                     context.report(
                         ModifierParameter,
-                        node,
+                        modifierParameterElement,
                         context.getNameLocation(modifierParameterElement),
                         "Optional $modifierName parameter should have a default value " +
                             "of `$modifierName`",
@@ -134,7 +134,7 @@
                 if (index != optionalParameterIndex) {
                     context.report(
                         ModifierParameter,
-                        node,
+                        modifierParameterElement,
                         context.getNameLocation(modifierParameterElement),
                         "$modifierName parameter should be the first optional parameter",
                         // Hard to make a lint fix for this and keep parameter formatting, so
diff --git a/compose/ui/ui-lint/src/test/java/androidx/compose/ui/lint/ModifierParameterDetectorTest.kt b/compose/ui/ui-lint/src/test/java/androidx/compose/ui/lint/ModifierParameterDetectorTest.kt
index 0c5b55e..f3aba8d 100644
--- a/compose/ui/ui-lint/src/test/java/androidx/compose/ui/lint/ModifierParameterDetectorTest.kt
+++ b/compose/ui/ui-lint/src/test/java/androidx/compose/ui/lint/ModifierParameterDetectorTest.kt
@@ -20,7 +20,6 @@
 
 import androidx.compose.lint.test.Stubs
 import com.android.tools.lint.checks.infrastructure.LintDetectorTest
-import com.android.tools.lint.checks.infrastructure.TestMode
 import com.android.tools.lint.detector.api.Detector
 import com.android.tools.lint.detector.api.Issue
 import org.junit.Test
@@ -63,7 +62,6 @@
             Stubs.Composable,
             Stubs.Modifier
         )
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293766
             .run()
             .expect(
                 """
@@ -105,7 +103,6 @@
             Stubs.Composable,
             Stubs.Modifier
         )
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293766
             .run()
             .expect(
                 """
@@ -149,7 +146,6 @@
             Stubs.Composable,
             Stubs.Modifier
         )
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293766
             .run()
             .expect(
                 """
@@ -191,7 +187,6 @@
             Stubs.Composable,
             Stubs.Modifier
         )
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293766
             .run()
             .expect(
                 """
@@ -227,7 +222,6 @@
             Stubs.Composable,
             Stubs.Modifier
         )
-            .skipTestModes(TestMode.SUPPRESSIBLE) // b/257293766
             .run()
             .expect(
                 """