Skip to content

Commit d5d46ad

Browse files
committed
Fixes tests and text field in dark theme
Change-Id: I4a740be9740b47c6094dc34a85ec59738943367d
1 parent a541a2d commit d5d46ad

File tree

6 files changed

+68
-62
lines changed

6 files changed

+68
-62
lines changed

Jetchat/app/build.gradle

+5
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,11 @@ android {
8181
kotlinCompilerExtensionVersion Libs.AndroidX.Compose.version
8282
}
8383

84+
packagingOptions {
85+
exclude "META-INF/licenses/**"
86+
exclude "META-INF/AL2.0"
87+
exclude "META-INF/LGPL2.1"
88+
}
8489
}
8590

8691
dependencies {

Jetchat/app/src/androidTest/java/com/example/compose/jetchat/ConversationTest.kt

+9-9
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,16 @@ import androidx.activity.ComponentActivity
2020
import androidx.compose.runtime.Providers
2121
import androidx.compose.runtime.collectAsState
2222
import androidx.compose.ui.geometry.Offset
23+
import androidx.compose.ui.test.assertIsDisplayed
24+
import androidx.compose.ui.test.center
25+
import androidx.compose.ui.test.junit4.createAndroidComposeRule
26+
import androidx.compose.ui.test.onNodeWithLabel
27+
import androidx.compose.ui.test.onNodeWithTag
28+
import androidx.compose.ui.test.onNodeWithText
29+
import androidx.compose.ui.test.performClick
30+
import androidx.compose.ui.test.performGesture
31+
import androidx.compose.ui.test.swipe
2332
import androidx.compose.ui.unit.milliseconds
24-
import androidx.ui.test.assertIsDisplayed
25-
import androidx.ui.test.center
26-
import androidx.ui.test.createAndroidComposeRule
27-
import androidx.ui.test.onNodeWithLabel
28-
import androidx.ui.test.onNodeWithTag
29-
import androidx.ui.test.onNodeWithText
30-
import androidx.ui.test.performClick
31-
import androidx.ui.test.performGesture
32-
import androidx.ui.test.swipe
3333
import com.example.compose.jetchat.conversation.BackPressedDispatcherAmbient
3434
import com.example.compose.jetchat.conversation.ConversationContent
3535
import com.example.compose.jetchat.conversation.ConversationTestTag

Jetchat/app/src/androidTest/java/com/example/compose/jetchat/NavigationTest.kt

+3-3
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@ package com.example.compose.jetchat
1919
import android.view.View
2020
import androidx.activity.ComponentActivity
2121
import androidx.compose.runtime.Providers
22+
import androidx.compose.ui.test.assertIsDisplayed
23+
import androidx.compose.ui.test.junit4.createAndroidComposeRule
24+
import androidx.compose.ui.test.onNodeWithText
2225
import androidx.navigation.NavController
2326
import androidx.navigation.Navigation
2427
import androidx.test.espresso.Espresso
25-
import androidx.ui.test.assertIsDisplayed
26-
import androidx.ui.test.createAndroidComposeRule
27-
import androidx.ui.test.onNodeWithText
2828
import com.example.compose.jetchat.conversation.BackPressedDispatcherAmbient
2929
import com.example.compose.jetchat.conversation.ConversationContent
3030
import com.example.compose.jetchat.data.exampleUiState

Jetchat/app/src/androidTest/java/com/example/compose/jetchat/UserInputTest.kt

+13-13
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,20 @@ package com.example.compose.jetchat
1818

1919
import androidx.activity.ComponentActivity
2020
import androidx.compose.runtime.Providers
21+
import androidx.compose.ui.test.SemanticsMatcher
22+
import androidx.compose.ui.test.SemanticsNodeInteraction
23+
import androidx.compose.ui.test.assertIsDisplayed
24+
import androidx.compose.ui.test.assertIsEnabled
25+
import androidx.compose.ui.test.assertIsNotEnabled
26+
import androidx.compose.ui.test.hasAnyAncestor
27+
import androidx.compose.ui.test.hasInputMethodsSupport
28+
import androidx.compose.ui.test.hasLabel
29+
import androidx.compose.ui.test.junit4.createAndroidComposeRule
30+
import androidx.compose.ui.test.onNodeWithLabel
31+
import androidx.compose.ui.test.onNodeWithText
32+
import androidx.compose.ui.test.performClick
33+
import androidx.compose.ui.test.performTextInput
2134
import androidx.test.espresso.Espresso
22-
import androidx.ui.test.SemanticsMatcher
23-
import androidx.ui.test.SemanticsNodeInteraction
24-
import androidx.ui.test.assertIsDisplayed
25-
import androidx.ui.test.assertIsEnabled
26-
import androidx.ui.test.assertIsNotEnabled
27-
import androidx.ui.test.createAndroidComposeRule
28-
import androidx.ui.test.hasAnyAncestor
29-
import androidx.ui.test.hasInputMethodsSupport
30-
import androidx.ui.test.hasLabel
31-
import androidx.ui.test.onNodeWithLabel
32-
import androidx.ui.test.onNodeWithText
33-
import androidx.ui.test.performClick
34-
import androidx.ui.test.performTextInput
3535
import com.example.compose.jetchat.conversation.BackPressedDispatcherAmbient
3636
import com.example.compose.jetchat.conversation.ConversationContent
3737
import com.example.compose.jetchat.conversation.KeyboardShownKey

Jetchat/app/src/androidTest/java/com/example/compose/jetchat/Utils.kt

+3-5
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,12 @@
1616

1717
package com.example.compose.jetchat
1818

19-
import androidx.ui.test.ComposeTestRule
20-
import androidx.ui.test.onRoot
21-
import androidx.ui.test.printToLog
19+
import androidx.compose.ui.test.junit4.ComposeTestRule
20+
import androidx.compose.ui.test.onRoot
21+
import androidx.compose.ui.test.printToLog
2222

2323
/**
2424
* Used to debug the semantic tree.
25-
*
26-
* TODO: Replace with aosp/1355659
2725
*/
2826
fun ComposeTestRule.dumpSemanticNodes() {
2927
this.onRoot().printToLog(tag = "JetchatLog")

Jetchat/app/src/main/java/com/example/compose/jetchat/conversation/UserInput.kt

+35-32
Original file line numberDiff line numberDiff line change
@@ -397,41 +397,44 @@ private fun UserInputText(
397397
},
398398
horizontalArrangement = Arrangement.End
399399
) {
400-
Box(
401-
modifier = Modifier.preferredHeight(48.dp).weight(1f).align(Alignment.Bottom)
402-
) {
403-
var lastFocusState by remember { mutableStateOf(FocusState.Inactive) }
404-
BasicTextField(
405-
value = textFieldValue,
406-
onValueChange = { onTextChanged(textFieldValue) },
407-
modifier = Modifier
408-
.fillMaxWidth()
409-
.padding(start = 16.dp)
410-
.align(Alignment.CenterStart)
411-
.focusObserver { state ->
412-
if (lastFocusState != state) {
413-
onTextFieldFocused(state == FocusState.Active)
414-
}
415-
lastFocusState = state
416-
},
417-
keyboardOptions = KeyboardOptions(
418-
keyboardType = keyboardType,
419-
imeAction = ImeAction.Send
420-
),
421-
maxLines = 1,
422-
cursorColor = AmbientContentColor.current
423-
)
424-
425-
val disableContentColor =
426-
MaterialTheme.colors.onSurface.copy(alpha = ContentAlpha.disabled)
427-
if (textFieldValue.text.isEmpty() && !focusState) {
428-
Text(
400+
Surface {
401+
Box(
402+
modifier = Modifier.preferredHeight(48.dp).weight(1f).align(Alignment.Bottom)
403+
) {
404+
var lastFocusState by remember { mutableStateOf(FocusState.Inactive) }
405+
BasicTextField(
406+
value = textFieldValue,
407+
onValueChange = { onTextChanged(it) },
429408
modifier = Modifier
409+
.fillMaxWidth()
410+
.padding(start = 16.dp)
430411
.align(Alignment.CenterStart)
431-
.padding(start = 16.dp),
432-
text = stringResource(id = R.string.textfield_hint),
433-
style = MaterialTheme.typography.body1.copy(color = disableContentColor)
412+
.focusObserver { state ->
413+
if (lastFocusState != state) {
414+
onTextFieldFocused(state == FocusState.Active)
415+
}
416+
lastFocusState = state
417+
},
418+
keyboardOptions = KeyboardOptions(
419+
keyboardType = keyboardType,
420+
imeAction = ImeAction.Send
421+
),
422+
maxLines = 1,
423+
cursorColor = AmbientContentColor.current,
424+
textStyle = AmbientTextStyle.current.copy(color = AmbientContentColor.current)
434425
)
426+
427+
val disableContentColor =
428+
MaterialTheme.colors.onSurface.copy(alpha = ContentAlpha.disabled)
429+
if (textFieldValue.text.isEmpty() && !focusState) {
430+
Text(
431+
modifier = Modifier
432+
.align(Alignment.CenterStart)
433+
.padding(start = 16.dp),
434+
text = stringResource(id = R.string.textfield_hint),
435+
style = MaterialTheme.typography.body1.copy(color = disableContentColor)
436+
)
437+
}
435438
}
436439
}
437440
}

0 commit comments

Comments
 (0)