[remote-driver] add SmoothRobot#doublePressKeyAndHold

GitOrigin-RevId: a3180391f699c9d2cd325ae8e731d957a9cb920b
This commit is contained in:
vladislav.shishov
2024-06-13 18:30:34 +03:00
committed by intellij-monorepo-bot
parent 54a00a6fe7
commit b5ecef22bd
3 changed files with 9 additions and 3 deletions

View File

@@ -42,9 +42,7 @@ class RemoteKeyboard(private val robot: Robot) {
fun doublePressing(key: Int, doWhilePress: RemoteKeyboard.() -> Unit) {
try {
robot.pressKey(key)
robot.releaseKey(key)
robot.pressKey(key)
robot.doublePressKeyAndHold(key)
this.doWhilePress()
} finally {
robot.releaseKey(key)

View File

@@ -26,6 +26,7 @@ interface Robot {
fun pressMouse(point: Point, mouseButton: RemoteMouseButton)
fun pressKey(p0: Int)
fun doubleKey(p0: Int)
fun doublePressKeyAndHold(key: Int)
fun releaseKey(p0: Int)
fun type(char: Char)
fun enterText(text: String)

View File

@@ -261,6 +261,13 @@ internal class SmoothRobot : Robot {
fastRobot.keyRelease(p0)
}
fun doublePressKeyAndHold(key: Int) {
fastRobot.keyPress(key)
fastRobot.keyRelease(key)
Thread.sleep(10)
fastRobot.keyPress(key)
}
override fun settings(): Settings = basicRobot.settings()
override fun enterText(text: String) {