From 0aa20f931df53a6a1563a54758b90eae40ab9b9e Mon Sep 17 00:00:00 2001 From: Weslly Date: Sat, 8 Apr 2017 02:13:12 -0300 Subject: [PATCH] Change windows clearfield key sequence to avoid keyboard layout errors --- src/autotype/windows/AutoTypeWindows.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/autotype/windows/AutoTypeWindows.cpp b/src/autotype/windows/AutoTypeWindows.cpp index 0b1474412d..81baeefac3 100644 --- a/src/autotype/windows/AutoTypeWindows.cpp +++ b/src/autotype/windows/AutoTypeWindows.cpp @@ -189,6 +189,8 @@ DWORD AutoTypePlatformWin::qtToNativeKeyCode(Qt::Key key) case Qt::Key_Enter: case Qt::Key_Return: return VK_RETURN; // 0x0D + case Qt::Key_Shift: + return VK_SHIFT; // 0x10 case Qt::Key_Control: return VK_CONTROL; // 0x11 case Qt::Key_Pause: @@ -534,9 +536,17 @@ void AutoTypeExecutorWin::execClearField(AutoTypeClearField* action = nullptr) Q_UNUSED(action); m_platform->sendKey(Qt::Key_Control, true); - m_platform->sendKey(Qt::Key_A, true); - m_platform->sendKey(Qt::Key_A, false); + m_platform->sendKey(Qt::Key_Home, true); + m_platform->sendKey(Qt::Key_Home, false); m_platform->sendKey(Qt::Key_Control, false); + ::Sleep(25); + m_platform->sendKey(Qt::Key_Control, true); + m_platform->sendKey(Qt::Key_Shift, true); + m_platform->sendKey(Qt::Key_End, true); + m_platform->sendKey(Qt::Key_End, false); + m_platform->sendKey(Qt::Key_Shift, false); + m_platform->sendKey(Qt::Key_Control, false); + ::Sleep(25); m_platform->sendKey(Qt::Key_Backspace, true); m_platform->sendKey(Qt::Key_Backspace, false);