Skip to content

Commit 4ee7bef

Browse files
authored
Merge pull request #1420 from ZalithLauncher/fix/control_layout
fix: 过滤有效事件时意外打乱了原有顺序
2 parents 5db42d4 + 6797b0b commit 4ee7bef

1 file changed

Lines changed: 12 additions & 5 deletions

File tree

  • LayerController/src/main/java/com/movtery/layer_controller/data

LayerController/src/main/java/com/movtery/layer_controller/data/NormalData.kt

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -91,12 +91,19 @@ data class NormalData(
9191
* 过滤出有效的点击事件
9292
*/
9393
internal fun List<ClickEvent>.filterValidEvent(): List<ClickEvent> {
94-
val (sendTextEvents, otherEvents) = partition { event ->
95-
event.type == ClickEvent.Type.SendText
94+
var foundValidSendText = false
95+
return filter { event ->
96+
if (event.type == ClickEvent.Type.SendText) {
97+
if (!foundValidSendText && event.key.isNotEmpty()) {
98+
foundValidSendText = true
99+
true
100+
} else {
101+
false
102+
}
103+
} else {
104+
true
105+
}
96106
}
97-
// 仅保留一个有效的发送文本的事件
98-
val validSendText = sendTextEvents.firstOrNull { it.key.isNotEmpty() }
99-
return otherEvents + listOfNotNull(validSendText)
100107
}
101108

102109
/**

0 commit comments

Comments
 (0)