imm: Report GCS_DELTASTART to help behavior with advanced IME aware applications.

This commit is contained in:
Aric Stewart 2007-08-29 17:55:07 +09:00 committed by Alexandre Julliard
parent a47f47fe29
commit 0c9c00cf2b
1 changed files with 13 additions and 1 deletions

View File

@ -287,6 +287,7 @@ static HIMCC updateCompStr(HIMCC old, LPWSTR compstr, DWORD len)
&new_one->dwCompReadStrOffset, TRUE);
/* new CompAttr, CompClause, CompStr, dwCursorPos */
new_one->dwDeltaStart = 0;
current_offset = updateField(lpcs->dwResultReadClauseLen,
lpcs->dwResultReadClauseOffset,
@ -438,6 +439,7 @@ static HIMCC updateResultStr(HIMCC old, LPWSTR resultstr, DWORD len)
&new_one->dwCompStrOffset, TRUE);
new_one->dwCursorPos = lpcs->dwCursorPos;
new_one->dwDeltaStart = 0;
current_offset = updateField(lpcs->dwResultReadClauseLen,
lpcs->dwResultReadClauseOffset,
@ -861,6 +863,11 @@ LONG WINAPI ImmGetCompositionStringA(
TRACE("GSC_CURSORPOS\n");
rc = compstr->dwCursorPos;
}
else if (dwIndex == GCS_DELTASTART)
{
TRACE("GCS_DELTASTART\n");
rc = compstr->dwDeltaStart;
}
else
{
FIXME("Unhandled index 0x%x\n",dwIndex);
@ -955,6 +962,11 @@ LONG WINAPI ImmGetCompositionStringW(
TRACE("GSC_CURSORPOS\n");
rc = compstr->dwCursorPos;
}
else if (dwIndex == GCS_DELTASTART)
{
TRACE("GCS_DELTASTART\n");
rc = compstr->dwDeltaStart;
}
else
{
FIXME("Unhandled index 0x%x\n",dwIndex);
@ -1662,7 +1674,7 @@ BOOL WINAPI ImmSetCompositionStringW(
root_context->IMC.hCompStr = newCompStr;
wParam = ((const WCHAR*)lpComp)[0];
flags |= GCS_COMPCLAUSE | GCS_COMPATTR;
flags |= GCS_COMPCLAUSE | GCS_COMPATTR | GCS_DELTASTART;
}
else
{