You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have modified the script to switch between languages by using simple hotkeys like Ctrl+1, Ctrl+2 etc.
en := DllCall("LoadKeyboardLayout", "Str", "00000409", "Int", 1)
ru := DllCall("LoadKeyboardLayout", "Str", "00000419", "Int", 1)
ua := DllCall("LoadKeyboardLayout", "Str", "00000422", "Int", 1)
SetLayout(language){
ControlGetFocus, control, A
;SplashTextOn,,, % "" . language
PostMessage 0x50, 0, %language%, %control%, A ; WM_INPUTLANGCHANGEREQUEST
}
^1::
SetLayout(en)
Return
^2::
SetLayout(ru)
Return
^3::
SetLayout(ua)
Return
It works fine but it reveals the additional version of English.
I have noticed that the script reveals the additional English (International) when I am launching it.
The original version does the same.
The text was updated successfully, but these errors were encountered:
If you want to avoid this, you need to use a correct keyboard layout identifiers, instead of values from Locale Mapping Table.
; Get a current keyboard layout identifier
GetLANGID() {
w := DllCall("GetForegroundWindow")
pid := DllCall("GetWindowThreadProcessId", "UInt", w, "Ptr", 0)
r := DllCall("GetKeyboardLayout", "UInt", pid)
return r
}
I have modified the script to switch between languages by using simple hotkeys like Ctrl+1, Ctrl+2 etc.
It works fine but it reveals the additional version of English.
![Screenshot 2021-01-01 211939](https://user-images.githubusercontent.com/593064/103444964-13169b80-4c77-11eb-9ec0-a8833be3de89.png)
I have noticed that the script reveals the additional English (International) when I am launching it.
The original version does the same.
The text was updated successfully, but these errors were encountered: