mirror of
https://github.com/reactos/reactos.git
synced 2025-02-21 16:04:57 +00:00
[MSCTFIME] Implement CicBridge::EscapeKorean (#6585)
Supporting TIPs... JIRA issue: CORE-19360 - Add CicBridge::EscHanjaMode. - Add code to CicBridge::EscapeKorean.
This commit is contained in:
parent
299abf7c87
commit
1ee014525c
2 changed files with 35 additions and 1 deletions
|
@ -736,9 +736,41 @@ CicBridge::SetCompositionString(
|
|||
|
||||
/// @unimplemented
|
||||
LRESULT
|
||||
CicBridge::EscHanjaMode(TLS *pTLS, HIMC hIMC, LPVOID lpData)
|
||||
{
|
||||
CicIMCLock imcLock(hIMC);
|
||||
if (FAILED(imcLock.m_hr))
|
||||
return imcLock.m_hr;
|
||||
|
||||
CicIMCCLock<CTFIMECONTEXT> imeContext(imcLock.get().hCtfImeContext);
|
||||
if (FAILED(imeContext.m_hr))
|
||||
return imeContext.m_hr;
|
||||
|
||||
CicInputContext *pCicIC = imeContext.get().m_pCicIC;
|
||||
if (!pCicIC)
|
||||
return TRUE;
|
||||
|
||||
if (pCicIC->m_bCandidateOpen)
|
||||
return TRUE;
|
||||
|
||||
pCicIC->m_dwUnknown6_5[4] |= 0x1;
|
||||
|
||||
//FIXME
|
||||
|
||||
pCicIC->m_dwUnknown6_5[4] &= ~0x1;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/// @implemented
|
||||
LRESULT
|
||||
CicBridge::EscapeKorean(TLS *pTLS, HIMC hIMC, UINT uSubFunc, LPVOID lpData)
|
||||
{
|
||||
return 0; // FIXME
|
||||
if (uSubFunc == IME_ESC_QUERY_SUPPORT)
|
||||
return *(DWORD*)lpData == IME_ESC_HANJA_MODE;
|
||||
if (uSubFunc == IME_ESC_HANJA_MODE)
|
||||
return EscHanjaMode(pTLS, hIMC, lpData);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/// @implemented
|
||||
|
|
|
@ -28,6 +28,8 @@ protected:
|
|||
static BOOL CALLBACK EnumCreateInputContextCallback(HIMC hIMC, LPARAM lParam);
|
||||
static BOOL CALLBACK EnumDestroyInputContextCallback(HIMC hIMC, LPARAM lParam);
|
||||
|
||||
LRESULT EscHanjaMode(TLS *pTLS, HIMC hIMC, LPVOID lpData);
|
||||
|
||||
public:
|
||||
CicBridge();
|
||||
virtual ~CicBridge();
|
||||
|
|
Loading…
Reference in a new issue