Katayama Hirofumi MZ
ec24b54731
[IMM32][NTUSER] Use HandleToUlong, UlongToHandle etc. macros ( #7180 )
...
Respect coding standard.
JIRA issue: N/A
- Use HandleToUlong, UlongToHandle,
UlongToPtr etc. macros for type
casting.
- Remove redundant casts.
2024-07-29 07:15:44 +09:00
Katayama Hirofumi MZ
817f89466d
[BOOTDATA][IMM32][NTUSER] Follow-up to #6961 ( #6962 )
...
JIRA issue: CORE-19320
- Delete "(brain-dead)".
- Fix "despite of" as "despite".
- Use "%S" instead of debugstr_w.
2024-05-29 01:14:52 +09:00
Katayama Hirofumi MZ
c8a3c919e5
[BOOTDATA][IMM32][NTUSER] Set "LoadIMM" to zero
...
We set "LoadIMM" to zero in order to disable Cicero.
The name of "LoadIMM" is a brain-dead name. This name
means Cicero despite of its name (brain-dead).
They use a human-confusing name intentionally.
JIRA issue: CORE-19320
- Set HKLM\SOFTWARE\Microsoft\Windows NT\
CurrentVersion\IMM:LoadIMM to 0.
- Add warning comments to the brain-dead name "LoadIMM".
2024-05-28 23:17:22 +09:00
Katayama Hirofumi MZ
fb642f727f
[IMM32] s/CopyMemory/RtlCopyMemory/
...
CORE-19268
2023-11-27 16:21:34 +09:00
Katayama Hirofumi MZ
e1df4f2d8f
[IMM32] Add reasoning for tracing ( #4807 )
...
Follow-up of c2a9436
(#4798 ).
Improve trace messages.
CORE-11700
2022-10-26 12:01:33 +09:00
Katayama Hirofumi MZ
c2a943653e
[IMM32] Improve debuggability at all ( #4798 )
...
- Strengthen tracing.
- Introduce IS_NULL_UNEXPECTEDLY, IS_ZERO_UNEXPECTEDLY etc. macros to manage tracing.
CORE-11700
2022-10-23 09:51:24 +09:00
Katayama Hirofumi MZ
6585803681
[IMM32] Add uCodePage parameter to Imm32WideFromAnsi/Imm32AnsiFromWide
...
This needs for multiple codepage support.
CORE-11700
2022-10-21 16:04:59 +09:00
Katayama Hirofumi MZ
e1d3a7d08c
[IMM32] Improve ImmGetCandidateWindow
...
CORE-11700
2022-10-21 15:22:06 +09:00
Katayama Hirofumi MZ
8f0e22ac23
[IMM32] Simplify Imm32WriteImeLayout
...
CORE-11700
2022-10-21 10:11:59 +09:00
Katayama Hirofumi MZ
72c56c2f1f
[IMM32] Improve ImmAssociateContext readability
...
CORE-11700
2022-10-20 12:32:45 +09:00
Katayama Hirofumi MZ
f9b2b1a6cd
[IMM32] Use UNICODE_NULL for null characters
...
CORE-11700
2022-10-20 12:29:29 +09:00
Katayama Hirofumi MZ
bbef618032
[KBSWITCH][IMM32][USER32] Consider keyboard layout corner cases
...
Considering invalid Keyboard Layout registry entries.
CORE-11700
2022-10-13 16:01:02 +09:00
Katayama Hirofumi MZ
f79e80c520
[USER32][IMM32] Use wcscspn instead of wcsspn
...
b4575ec
and db00a75
were my mistakes.
CORE-11700
2022-09-23 13:50:24 +09:00
Katayama Hirofumi MZ
787bbf0693
[IMM32] Follow-up of db00a75
...
Add more invalid characters. CORE-11700
2022-09-16 17:54:15 +09:00
Katayama Hirofumi MZ
db00a75227
[IMM32] Don't allow invalid 'IME File' values
...
Improve security. CORE-11700
2022-09-16 17:38:48 +09:00
Katayama Hirofumi MZ
85e292d58f
[NTUSER][USER32][IMM32] Initialize pKL->piiex by using ImmLoadLayout ( #4645 )
...
To recognize IME, we have to initialize pKL->piiex.
- Add co_ClientImmLoadLayout and User32CallImmLoadLayoutFromKernel functions to call imm32!ImmLoadLayout on user mode from kernel.
- Use co_ClientImmLoadLayout in NtUserLoadKeyboardLayoutEx.
- Improve Imm32LoadIME to sanitize the IME table.
CORE-11700
2022-09-05 08:34:00 +09:00
Katayama Hirofumi MZ
ffbdb7d39e
[IMM32][USER32] ImmPutImeMenuItemsIntoMappedFile ( #4588 )
...
Implement inter-process menu item retrieving.
CORE-11700
2022-07-23 05:58:17 +09:00
Katayama Hirofumi MZ
b0b925d2b0
[IMM32] Add ValidateHandle function ( #4467 )
...
Set the last error on failure of handle validation.
CORE-11700
2022-04-23 08:16:53 +09:00
Katayama Hirofumi MZ
f848343bff
[IMM32] Improve ImmLockClientImc ( #4450 )
...
CORE-11700
2022-04-14 14:10:19 +09:00
Katayama Hirofumi MZ
e5f637f93f
[IMM32] Add Win: comments more ( #4449 )
...
CORE-11700
2022-04-14 11:23:16 +09:00
Katayama Hirofumi MZ
bc8a4ac37b
[IMM32] Many renamings and 'Win:' info ( #4438 )
...
- Add many Win: comments.
- s/Imm32UnloadIME/Imm32FreeIME/
- s/Imm32LoadImeInfo/Imm32LoadIME/
- s/g_hImm32Inst/ghImm32Inst/
- s/Imm32AllocAndBuildHimcList/Imm32BuildHimcList/
- s/Imm32SelectLayout/Imm32SelectInputContext/
CORE-11700
2022-04-09 10:41:39 +09:00
Katayama Hirofumi MZ
4342b84c9a
[IMM32] Add ctf.c for Cicero ( #4430 )
...
Preparing of Cicero (modern input method) support.
- Add ctf.c and add some CTF functions.
- Modify the IMM table.
- Modify imm32.spec.
- Rename: s/Imm32FreeImeStates/Imm32DestroyImeModeSaver/.
- Improve Imm32DestroyInputContext.
CORE-11700
2022-04-07 22:55:33 +09:00
Katayama Hirofumi MZ
6541c423f4
[IMM32] Add more 'Win:' comments ( #4423 )
...
CORE-11700
2022-03-31 19:36:11 +09:00
Katayama Hirofumi MZ
166786061c
[IMM32] Renaming about IME layout ( #4419 )
...
CORE-11700
2022-03-31 13:52:16 +09:00
Katayama Hirofumi MZ
6dfe032152
[IMM32] Renaming: s/g_SharedInfo/gSharedInfo/ ( #4418 )
...
CORE-11700
2022-03-31 10:00:06 +09:00
Katayama Hirofumi MZ
ed765b7c3b
[IMM32] Renaming: s/pImmHeap/ghImmHeap/ ( #4416 )
...
CORE-11700
2022-03-31 09:11:13 +09:00
Oleg Dubinskiy
5d81de7d5b
[REACTOS] Update email in all my copyrights ( #4415 )
...
Change it to Gmail, because Yandex disabled ua domain, which was used in my previous email.
2022-03-31 01:53:30 +02:00
Katayama Hirofumi MZ
46518ad601
[IMM32] Renaming: s/Imm32HeapAlloc/ImmLocalAlloc/
...
s/Imm32HeapFree/ImmLocalFree/
CORE-11700
2022-03-29 18:02:25 +09:00
Katayama Hirofumi MZ
0d744afbc7
[IMM32] Renaming: s/g_hImm32Heap/pImmHeap/
...
CORE-11700
2022-03-29 17:59:23 +09:00
Katayama Hirofumi MZ
cfeb498e4f
[NTUSER][IMM32] Fix ValidateHandleNoErr ( #4377 )
...
- Add DesktopPtrToUser helper function.
- Fix imm32.ValidateHandleNoErr function.
- Use DesktopHeapAlloc to allocate the IMC, instead of ExAllocatePoolWithTag.
- Use DesktopHeapFree to free the IMC, instead of ExFreePoolWithTag.
CORE-11700, CORE-18049
2022-03-03 09:43:05 +09:00
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
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
9455defbd3
[IMM32] Remove old code of Imm32StrToUInt and Imm32UIntToStr
...
CORE-11700
2021-10-23 12:13:19 +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
b0d66e68c1
[IMM32] s/4/sizeof(DWORD)/
...
CORE-11700
2021-10-05 07:57:14 +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
f5bbd57d73
[IMM32] GetKeyboardLayout's parameter is a thread id
...
s/dwLayout/dwThreadId/
CORE-11700
2021-10-01 03:13:52 +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
b3382d8d24
[IMM32] Rewrite ImmLockIMC ( #3975 )
...
- Add Imm32InitContext and Imm32LockIMCEx helper functions.
- Re-implement ImmLockIMC function.
- Modify CLIENTIMC and INPUTCONTEXTDX structures.
CORE-11700
2021-09-27 09:32:24 +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
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
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