Hans Leidekker : wineandroid: Implement GetKeyboardLayout.

Alexandre Julliard julliard at winehq.org
Fri Jun 9 12:43:58 CDT 2017


Module: wine
Branch: master
Commit: e545a85351ad72f9c6c7f9abdfdfebe621b1509b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=e545a85351ad72f9c6c7f9abdfdfebe621b1509b

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Fri Jun  9 09:20:49 2017 +0200

wineandroid: Implement GetKeyboardLayout.

Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wineandroid.drv/keyboard.c           | 19 +++++++++++++++++++
 dlls/wineandroid.drv/wineandroid.drv.spec |  1 +
 2 files changed, 20 insertions(+)

diff --git a/dlls/wineandroid.drv/keyboard.c b/dlls/wineandroid.drv/keyboard.c
index fb70445..81af8e3 100644
--- a/dlls/wineandroid.drv/keyboard.c
+++ b/dlls/wineandroid.drv/keyboard.c
@@ -885,3 +885,22 @@ UINT CDECL ANDROID_MapVirtualKeyEx( UINT code, UINT maptype, HKL hkl )
     TRACE_(key)( "returning 0x%04x\n", ret );
     return ret;
 }
+
+
+/***********************************************************************
+ *           ANDROID_GetKeyboardLayout
+ */
+HKL CDECL ANDROID_GetKeyboardLayout( DWORD thread_id )
+{
+    ULONG_PTR layout = GetUserDefaultLCID();
+    LANGID langid;
+
+    langid = PRIMARYLANGID(LANGIDFROMLCID( layout ));
+    if (langid == LANG_CHINESE || langid == LANG_JAPANESE || langid == LANG_KOREAN)
+        layout = MAKELONG( layout, 0xe001 ); /* IME */
+    else
+        layout |= layout << 16;
+
+    FIXME( "returning %lx\n", layout );
+    return (HKL)layout;
+}
diff --git a/dlls/wineandroid.drv/wineandroid.drv.spec b/dlls/wineandroid.drv/wineandroid.drv.spec
index 89ec528..bd42cb1 100644
--- a/dlls/wineandroid.drv/wineandroid.drv.spec
+++ b/dlls/wineandroid.drv/wineandroid.drv.spec
@@ -5,6 +5,7 @@
 # USER driver
 
 @ cdecl GetKeyNameText(long ptr long) ANDROID_GetKeyNameText
+@ cdecl GetKeyboardLayout(long) ANDROID_GetKeyboardLayout
 @ cdecl MapVirtualKeyEx(long long long) ANDROID_MapVirtualKeyEx
 @ cdecl ToUnicodeEx(long long ptr ptr long long long) ANDROID_ToUnicodeEx
 @ cdecl EnumDisplayMonitors(long ptr ptr long) ANDROID_EnumDisplayMonitors




More information about the wine-cvs mailing list