Commit graph

19 commits

Author SHA1 Message Date
Katayama Hirofumi MZ 45a4e53fa4
[NTUSER][IMM32] Use Imm32CurrentPti and pool (#4356)
- Use newly-defined Imm32CurrentPti() instead of NtCurrentTeb()->Win32ThreadInfo.
- THREADSTATE_GETTHREADINFO is same as THREADSTATE_UNKNOWN18.
- Use the paged pool to allocate HIMC rather than heap.
- Fix and improve ImmDestroyContext function.
CORE-11700
2022-02-13 15:51:53 +09:00
Katayama Hirofumi MZ 8cdfc245b3 [IMM32] Implement ImmWINNLSGetEnableStatus
CORE-11700
2022-02-10 15:18:44 +09:00
Katayama Hirofumi MZ df8c74e78b
[INCLUDE] Rename <ddk/imm.h> as <ddk/immdev.h> (#4321)
- Rename <ddk/imm.h> as <ddk/immdev.h>.
- Delete sdk/include/reactos/wine/imm.h (this header is confusing and nonsense).
- Changes related to it.
CORE-11700
2022-01-30 09:38:04 +09:00
Katayama Hirofumi MZ 356babcaf3 [IMM32] s/Imm32IsImmMode/IS_IMM_MODE/
CORE-11700
2022-01-27 07:34:29 +09:00
Katayama Hirofumi MZ cdf3b5e85a
[NTUSER] Implement NtUserQueryInputContext (#4227)
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
- Modify NtUserQueryInputContext prototype.
- Implement NtUserQueryInputContext function.
- Add enum QUERY_INPUT_CONTEXT (QIC_*) to undocuser.h.
CORE-11700
2022-01-01 20:56:50 +09:00
Katayama Hirofumi MZ a37d9a4e14
[IMM32] Rewrite ImmInstallIMEW (#4044)
- Add Imm32StrToUInt and Imm32UIntToStr helper functions.
- Add Imm32LoadImeVerInfo, Imm32GetRegImes, Imm32WriteRegIme, Imm32GetNextHKL, Imm32CopyFile helper functions.
- Add REG_IME structure for registered IMEs.
- Rewrite ImmInstallIMEW function.
- Improve ImmLoadLayout and Imm32LoadImeInfo functions.
CORE-11700
2021-10-21 10:28:04 +09:00
Katayama Hirofumi MZ 04cb13bc57
[IMM32] Refactor about reconversion (#4031)
- Delete Imm32ReconvertSize and Imm32ConvertReconvert helper functions.
- Add Imm32ReconvertAnsiFromWide and Imm32ReconvertWideFromAnsi helper functions.
CORE-11700
2021-10-15 22:46:58 +09:00
Katayama Hirofumi MZ fec35dc893
[IMM32] Improve IchWideFromAnsi and IchAnsiFromWide (#4028)
- Use LONG instead of DWORD for indexing and counting the characters.
- Use the sign for the loop condition.
- Add NUL check.
CORE-11700
2021-10-15 10:31:08 +09:00
Katayama Hirofumi MZ 264a128f03
[IMM32] Rewrite ImmRequestMessageA/W (#4002)
- Re-implement ImmRequestMessageA and ImmRequestMessageW functions.
- Add IchWideFromAnsi, IchAnsiFromWide, Imm32RequestError, Imm32ReconvertSize, Imm32ConvertReconvert, and Imm32ProcessRequest helper functions.
CORE-11700
2021-10-09 07:40:56 +09:00
Katayama Hirofumi MZ 4f006ec74b
[IMM32] Add IMP stub functions (#3989)
- Add IMP (Input Method Profiler) stub functions (ImmIMPGetIMEA/W, ImmIMPQueryIMEA/W, ImmIMPSetIMEA/W).
- Add ImmSendIMEMessageExA/W stub functions.
- Rename nt3.c as win3.c.
The prototypes can be obtained from: https://doxygen.reactos.org/dc/d20/winnls32_8h.html .
The Japanese article of IMP is available: http://www7a.biglobe.ne.jp/~tsuneoka/win32tech/7.html
CORE-11700
2021-10-05 14:07:58 +09:00
Katayama Hirofumi MZ 66ef31494e
[IMM32] Implement ImmActivateLayout (#3987)
- Add IME_STATE and IME_SUBSTATE structures.
- Modify INPUTCONTEXTDX structure.
- Implement ImmActivateLayout function.
- Improve ImmDestroyContext function by using newly-defined Imm32FreeImeStates.
- Add Imm32FetchImeState, Imm32FetchImeSubState, Imm32LoadImeStateSentence, Imm32SaveImeStateSentence, and Imm32SelectLayout helper functions.
- Modify NtUserSetThreadLayoutHandles prototype.
CORE-11700
2021-10-04 07:33:15 +09:00
Katayama Hirofumi MZ e6a51b54c4 [IMM32] Move ImmFreeLayout from ime.c to imm.c
CORE-11700
2021-10-01 03:10:26 +09:00
Katayama Hirofumi MZ 33affbfecb
[IMM32] Rewrite ImmGetImeMenuItemsA/W (#3983)
- Rewrite ImmGetImeMenuItemsA and ImmGetImeMenuItemsW functions.
- Add Imm32GetImeMenuItemsAW, Imm32IsImcAnsi, Imm32ImeMenuAnsiToWide and Imm32ImeMenuWideToAnsi helper functions.
- Make IME module's ImeGetImeMenuItems function optional.
CORE-11700
2021-10-01 03:04:00 +09:00
Katayama Hirofumi MZ be9a788f8b
[IMM32] Improve Imm32CleanupContext and ImmLockClientImc (#3974)
- Improve Imm32CleanupContext and ImmLockClientImc functions.
- Add ValidateHandleNoErr and Imm32CheckImcProcess helper functions.
CORE-11700
2021-09-27 09:31:16 +09:00
Katayama Hirofumi MZ ca3fa7197d
[IMM32] Use Imm32IsImmMode and Imm32IsCiceroMode macros (#3971)
- Define Imm32IsImmMode, Imm32IsCiceroMode and Imm32Is16BitMode macros in "precomp.h".
- Improve Imm32InquireIme and Imm32CleanupContext functions.
- Add IME_SYSINFO_WINLOGON and IME_SYSINFO_WOW16 macros (from DDK) in psdk/imm.h.
- Modify CtfImeInquireExW and CtfImeSelectEx prototype.
CORE-11700
2021-09-24 22:06:29 +09:00
Katayama Hirofumi MZ e0da6437a1
[IMM32] Define ImeDpi_IsUnicode macro and use it (#3964)
- Define ImeDpi_IsUnicode macro in precomp.h.
- Use it.
CORE-11700
2021-09-21 12:20:10 +09:00
Katayama Hirofumi MZ 5b522667a6
[IMM32] Define Imm32HeapFree macro and use it (#3962)
- Define Imm32HeapFree macro in precomp.h and use it.
- Omit some NULL checks (for HeapFree).
CORE-11700
2021-09-19 01:52:05 +09:00
Katayama Hirofumi MZ afb6c8a129
[IMM32] Rewrite ImmEscapeA/W (#3959)
- Rewrite ImmEscapeA and ImmEscapeW functions.
- Delete useless legacy code.
CORE-11700
2021-09-16 19:27:43 +09:00
Katayama Hirofumi MZ b4557a60a9
[IMM32] Restructure! (Retry) (#3952)
The imm.c file became big and bloated, so we split the source file. CORE-11700
- Split the IMM32 code and do formatting.
2021-09-10 23:39:15 +09:00