Commit graph

123 commits

Author SHA1 Message Date
Katayama Hirofumi MZ df6fff78bb
[IMM32] Rewrite ImmAssociateContextEx (#3961)
- Rewrite ImmAssociateContextEx function.
- Modify NtUserAssociateInputContext prototype.
CORE-11700
2021-09-16 19:29:49 +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 233c74e25a [IMM32] Undefine IMS_... constants
CORE-11700
2021-09-14 09:47:51 +09:00
Katayama Hirofumi MZ dc9c5826be
[IMM32] Rewrite ImmConfigureIMEA/W (#3956)
- Rewrite ImmConfigureIMEA and ImmConfigureIMEW functions.
- Add IMS_... macros for WM_IME_SYSTEM message, into <undocuser.h>.
- Delete useless strdupAtoW and strdupWtoA inline functions.
CORE-11700
2021-09-13 12:47:15 +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
Hermès Bélusca-Maïto 0233bb72b3
[IMM32] ValidateHwndNoErr(): Apply ReactOS-specific handle table array fixup. (#3937)
CORE-17741

This function (which should belong to the user32 helpers) depends on the
internal format of the USER handles table, that is ReactOS-specific. Its
pointer value is stored in the win32k/user32 shared info section, and
thus cannot be converted to user-space and stored back into that section.
Therefore it needs to be retrieved and manually converted when the function
is called.
2021-09-09 16:15:13 +02:00
Katayama Hirofumi MZ a8d2cd4b9d
[IMM32] Rewrite ImmGetContext (#3923)
- Add ValidateHwndNoErr and Imm32GetContextEx helper functions.
- Rewrite ImmGetContext function by using the helper functions.
CORE-11700
2021-08-24 06:50:39 +09:00
Katayama Hirofumi MZ 2ab858c125
[USER32][IMM32] Improve User32InitializeImmEntryTable (#3918)
- Improve User32InitializeImmEntryTable function and related.
- Complete win32ss/user/user32/include/immtable.h table.
- Delete a hack in user32.DllMain and apply my magical tricks. This will fix some access violations in IMM32.
- Add some stubs into IMM32.
CORE-11700
2021-08-23 16:25:21 +09:00
Katayama Hirofumi MZ d78e9fbb45
[IMM32] Implement ImmWINNLSGetIMEHotkey (#3919)
- Implement ImmWINNLSGetIMEHotkey function.
- Modify imm32.spec.
CORE-11700
2021-08-21 07:24:12 +09:00
Katayama Hirofumi MZ 1d0587fc27
[IMM32] Rewrite ImmProcessKey (#3917)
- Rewrite ImmProcessKey function.
- Modify win32ss/include/imetable.h.
- Modify ImmProcessKey prototype.
CORE-1170
2021-08-21 07:22:43 +09:00
Katayama Hirofumi MZ c59c185d1c
[INCLUDE] Move WM_IME_SYSTEM from ntuser.h to undocuser.h (#3920)
CORE-11700
2021-08-19 08:18:20 +09:00
Katayama Hirofumi MZ 9a8049cb39 [IMM32] s/0x400/_WIN32_WINNT_NT4/
Don't use magic numbers. CORE-11700
2021-08-18 19:53:14 +09:00
Katayama Hirofumi MZ f4bc74edc3
[IMM32] ImmGenerateMessage and ImmTranslateMessage (#3914)
- Rewrite `ImmGenerateMessage` and `ImmTranslateMessage` functions.
- Rename `INPUTCONTEXTDX.bHasVKey` as `bNeedsTrans`.
- Move `TRANSMSG` structure into `ntuser.h`.
- Add `TRANSMSGLIST` structure into `ntuser.h`.
- Add `UNDETERMINESTRUCT` structure to `ddk/imm.h`.
- Modify `NtUserGetAppImeLevel` prototype.
CORE-11700
2021-08-18 08:42:12 +09:00
Katayama Hirofumi MZ db8dd3b35e [IMM32] Refactor Part 2
Simplify the IMM32 code by deleting middle functions.
CORE-11700
2021-08-16 15:45:11 +09:00
Katayama Hirofumi MZ 77911014f3
[IMM32] Rewrite ImmIsUIMessageA/W (#3907)
- Rewrite ImmIsUIMessageA and ImmIsUIMessageW functions.
- Modify HIMC and HIMCC handle types for strictness. Add typecasts.
- Add WM_IME_SYSTEM macro.
- Modify imm32.spec.
CORE-11700
2021-08-16 15:33:51 +09:00
Katayama Hirofumi MZ cc097ec485
[IMM32] Rewrite ImmEnumRegisterWordA/W (#3906)
- Rewrite ImmEnumRegisterWordA and ImmEnumRegisterWordW functions.
- Modify win32ss/include/imetable.h.
CORE-11700
2021-08-16 15:31:39 +09:00
Katayama Hirofumi MZ 911fc3cf5b
[IMM32] Delete Wine-specific functions (#3902)
We don't need Wine-specific functions for Japanese input.
- Delete __wine_get_ui_window, __wine_register_window and __wine_unregister_window functions.
- Modify imm32.spec.
CORE-11700
2021-08-14 10:42:02 +09:00
Katayama Hirofumi MZ 19d24143e9
[IMM32] Rewrite ImmGetRegisterWordStyleA/W (#3901)
- Rewrite ImmGetRegisterWordStyleA and ImmGetRegisterWordStyleW functions.
- Modify win32ss/include/imetable.h.
CORE-11700
2021-08-14 10:39:20 +09:00
Katayama Hirofumi MZ 1da5d7a305
[IMM32] Refactor and simplify code (#3900)
- Add Imm32WideFromAnsi, Imm32AnsiFromWide and Imm32IsCrossThreadAccess helper functions.
- Simplify the IMM32 code by using the helper functions.
CORE-11700
2021-08-14 10:38:06 +09:00
Katayama Hirofumi MZ 719823179d
[IMM32] Rewrite ImmGetProperty (#3896)
Implementing Japanese input... CORE-11700
2021-08-12 12:33:12 +09:00
Katayama Hirofumi MZ ee22951c1a
[IMM32] Rewrite ImmGetConversionListA/W (#3895)
- Rewrite ImmGetConversionListA and ImmGetConversionListW functions.
- Delete useless convert_candidatelist_AtoW and convert_candidatelist_WtoA functions.
CORE-11700
2021-08-12 12:32:02 +09:00
Katayama Hirofumi MZ 9b7288df78
[IMM32] Rewrite ImmUnregisterWordW (#3894)
Implementing Japanese input... CORE-11700
2021-08-12 12:31:06 +09:00
Katayama Hirofumi MZ 1ead16de95
[IMM32] Rewrite ImmUnregisterWordA (#3893)
Implementing Japanese input... CORE-11700
2021-08-12 12:30:13 +09:00
Katayama Hirofumi MZ 94285dce4d
[IMM32] Rewrite ImmRegisterWordW (#3892)
Implementing Japanese input... CORE-11700
2021-08-12 12:29:02 +09:00
Katayama Hirofumi MZ 1e62771c78
[IMM32] Rewrite ImmRegisterWordA (#3881)
- Rewrite ImmRegisterWordA function.
- Modify imetable.h.
CORE-11700
2021-08-10 08:08:23 +09:00
Katayama Hirofumi MZ 6b24e73d41
[IMM32] Rewrite ImmGetVirtualKey (#3889)
Implementing Japanese input. CORE-11700
2021-08-10 08:03:32 +09:00
Katayama Hirofumi MZ f486f87796 [IMM32] Delete useless ImmInternalSendIMENotify function
CORE-11700
2021-08-08 17:46:02 +09:00
Katayama Hirofumi MZ 7342ed1861
[IMM32] Rewrite ImmSetCompositionFontA/W (#3886)
- Rewrite ImmSetCompositionFontA and ImmSetCompositionFontW functions.
- Add INPUTCONTEXTDX structure as an extension of INPUTCONTEXT.
CORE-11700
2021-08-08 17:35:34 +09:00
Katayama Hirofumi MZ 0af58654a3
[IMM32] Rewrite ImmSetCandidateWindow (#3884)
Implementing Japanese input... CORE-11700
2021-08-08 08:34:47 +09:00
Katayama Hirofumi MZ c0c9b1445d
[IMM32] Rewrite ImmSetConversionStatus (#3879)
CORE-11700
2021-08-06 07:15:19 +09:00
Katayama Hirofumi MZ 29b09d8935
[IMM32] Implement ImmGetGuideLineA/W (#3877)
Implement ImmGetGuideLineA and ImmGetGuideLineW functions. CORE-11700
2021-08-05 21:43:21 +09:00
Katayama Hirofumi MZ 1d9542d239 [IMM32] Remove function names from TRACEs
CORE-11700
2021-08-04 09:49:41 +09:00
Katayama Hirofumi MZ 692a30a84a
[IMM32] ImmCreateContext, ImmDestroyContext, DllMain etc. (#3867)
- Rewrite ImmCreateContext, ImmDestroyContext, and DllMain functions.
- Add g_hImm32Inst, g_bClientRegd, and g_SharedInfo global variables. Delete g_dwImm32Flags (that was g_psi->dwSRVIFlags).
- Implement ImmLoadIME and ImmRegisterClient functions.
- Modify CLIENTIMC and IMEDPI structures. Move CLIENTIMC definition into ntuser.h.
- Add file win32ss/include/imetable.h.
- Rename SRVINFO_METRICS macro as SRVINFO_CICERO_ENABLED.
CORE-11700
2021-08-04 09:41:59 +09:00
Katayama Hirofumi MZ 7507a8f192
[IMM32] Rewrite ImmInstallIMEA (#3873)
Implementing Japanese input... CORE-11700
2021-08-04 07:32:13 +09:00
Katayama Hirofumi MZ d7f13aa696
[IMM32] Improve ImmSimulateHotKey (#3858)
- Improve ImmSimulateHotKey function.
- Modify IMEDPI structure.
CORE-11700
2021-07-31 15:56:11 +09:00
Katayama Hirofumi MZ 89cb8a38b3
[IMM32] Rewrite ImmEnumInputContext (#3859)
- Rewrite ImmEnumInputContext function.
- Modify NtUserBuildHimcList.
CORE-11700
2021-07-31 15:45:07 +09:00
Katayama Hirofumi MZ e996662afb [IMM32] s/idThread/dwThreadId/
- Rename idThread variable as dwThreadId.
- Rename idImeThread variable as dwImeThreadId.
CORE-11700
2021-07-29 08:21:33 +09:00
Katayama Hirofumi MZ f972a9fbd5
[IMM32] Rewrite ImmSetCompositionWindow (#3855)
Implementing Japanese input... CORE-11700
2021-07-28 23:26:02 +09:00
Katayama Hirofumi MZ 8e1dea0c8c
[IMM32] Implement ImmLoadLayout (#3854)
Implementing Japanese input... CORE-11700
2021-07-28 23:25:10 +09:00
Katayama Hirofumi MZ fb2aef9e4e
[IMM32] Rewrite ImmNotifyIME (#3853)
Implementing Japanese input... CORE-11700
2021-07-28 23:24:09 +09:00
Katayama Hirofumi MZ a71de262d3
[IMM32] Rewrite ImmSetStatusWindowPos (#3852)
Implementing Japanese input... CORE-11700
2021-07-28 23:23:09 +09:00
Katayama Hirofumi MZ ecb0c0963d
[IMM32] Imm(Lock|Unlock)ImeDpi and ImmSetOpenStatus (#3830)
- Add IMEDPI structure to ntuser.h.
- Implement ImmLockImeDpi/ImmUnlockImeDpi functions.
- Rewrite ImmSetOpenStatus function.
- Modify some NTUSER function prototypes.
- Modify imm32.spec.
CORE-11700
2021-07-25 11:57:57 +09:00
Katayama Hirofumi MZ 97847f2078
[IMM32] Improve ImmGetImeInfoEx (#3833)
- Rewrite ImmGetImeInfoEx function.
- Implement CtfImmIsTextFrameServiceDisabled function.
- Modify imm32.spec.
CORE-11700
2021-07-25 11:56:17 +09:00
Katayama Hirofumi MZ 5afc324359
[IMM32] Improve ImmUnlockClientImc and Imm32HeapAlloc (#3834)
- Fix Imm32HeapAlloc function.
- Fix ImmUnlockClientImc function.
CORE-11700
2021-07-25 11:55:03 +09:00
Katayama Hirofumi MZ 3965c93732
[IMM32] Rewrite ImmGetStatusWindowPos (#3824)
Rewrite ImmGetStatusWindowPos function. CORE-11700
2021-07-16 07:30:55 +09:00
Katayama Hirofumi MZ 0966e32146
[IMM32] Rewrite ImmGetCandidateWindow (#3823)
Rewrite ImmGetCandidateWindow function. CORE-11700
2021-07-16 03:04:00 +09:00
Katayama Hirofumi MZ b06b628f30
[IMM32] Rewrite ImmGetIMEFileNameA/W (#3822)
- Rewrite ImmGetIMEFileNameA and ImmGetIMEFileNameW functions. CORE-11700
2021-07-15 23:01:50 +09:00
Katayama Hirofumi MZ 3714ee269b
[IMM32] Rewrite ImmGetDefaultIMEWnd (#3821)
- Rewrite ImmGetDefaultIMEWnd function.
- Add g_dwImm32Flags global variable.
- Add Imm32QueryWindow helper function.
- Implement CtfImmIsCiceroEnabled function.
- Modify imm32.spec.
CORE-11700
2021-07-15 21:59:53 +09:00
Katayama Hirofumi MZ 192981a1fe
[IMM32] Rewrite ImmGetCompositionWindow (#3820)
Rewrite ImmGetCompositionWindow function. CORE-11700
2021-07-13 21:13:39 +09:00
Katayama Hirofumi MZ 1558e6d0b3
[IMM32] Rewrite ImmGetCompositionFontA/W (#3813)
- Rewrite ImmGetCompositionFontA and ImmGetCompositionFontW functions.
- Add INIT_* macro definitions in <ddk/imm.h>.
CORE-11700
2021-07-13 20:51:28 +09:00
Katayama Hirofumi MZ ee3b5b44c1
[IMM32] Rewrite ImmGetCandidateListCountA/W (#3812)
Implement ImmGetCandidateListCountA and ImmGetCandidateListCountW functions by using newly defined ImmGetCandidateListCountAW function. CORE-11700
2021-07-13 20:17:17 +09:00
Katayama Hirofumi MZ 92393a7517
[IMM32] Add some candidate handlings (#3799)
- Implement ImmGetCandidateListA and ImmGetCandidateListW, by using newly added ImmGetCandidateListAW function.
- Implement ImmLockClientImc and ImmUnlockClientImc functions.
- Modify imm32.spec.
- Remove #ifdef's.
CORE-11700
2021-07-11 09:48:15 +09:00
Katayama Hirofumi MZ 5c624d40e7
[IMM32] Rewrite ImmGetOpenStatus (#3804)
- Rewrite ImmGetOpenStatus function. CORE-11700
2021-07-08 14:24:27 +09:00
Katayama Hirofumi MZ 211de1257e
[IMM32] Rewrite ImmIsIME (Retry) (#3803)
- Rewrite ImmIsIME function.
- Fix enum IMEINFOEXCLASS.
CORE-11700
2021-07-08 14:23:25 +09:00
Katayama Hirofumi MZ 6eeea92530
[IMM32] Rewrite IMCC handling functions (#3788)
Rewrite ImmCreateIMCC, ImmDestroyIMCC, ImmReSizeIMCC, ImmGetIMCCLockCount, ImmUnlockIMCC, ImmLockIMCC, and ImmGetIMCCSize functions. CORE-11700
2021-07-07 10:04:30 +09:00
Katayama Hirofumi MZ c238b554b1
[IMM32] Rewrite ImmGetConversionStatus (#3790)
Implementing Japanese input... CORE-11700
2021-07-05 21:20:20 +09:00
Katayama Hirofumi MZ 89f5f5bb95
[IMM32] Rewrite ImmGetDescriptionA/W (#3780)
CORE-11700
2021-07-04 08:18:15 +09:00
Katayama Hirofumi MZ 650cd77234
[IMM32] ImmDisableIME calls NtUserDisableThreadIme (#3776)
- Just call NtUserDisableThreadIme in ImmDisableIME directly. CORE-11700
2021-07-01 18:03:42 +09:00
Katayama Hirofumi MZ ab115e30fe
[IMM32][INCLUDE] Add immtable.h and modify imm32.spec (#3207)
- Add immtable.h header into win32ss/user/user32/misc/.
- Modify imm32.spec file.
CORE-11700
2020-09-19 22:47:40 +09:00
Katayama Hirofumi MZ 526c23bde6
[IMM32] Improve imm32.spec (#3036)
CORE-11700
2020-08-12 06:04:28 +09:00
Katayama Hirofumi MZ 4b038ec8b7
[IMM32][NTUSER] Add ImmGetImeInfoEx (#3035)
- Add the definition of imm32!ImmGetImeInfoEx function.
- Add IMEINFOEXCLASS and IS_IME_HKL into "ntuser.h".
- Modify NtUserGetImeInfoEx function prototype.
CORE-11700
2020-08-12 06:03:29 +09:00
Oleg Dubinskiy 8d682f9b05
[IMM32] Stub ImmRegisterClient CORE-16479 (#3009)
Add a stub for ImmRegisterClient function in imm32.dll. CORE-16479
2020-08-09 22:49:00 +09:00
Katayama Hirofumi MZ 2705abfb07
[IMM32] Add ImmShowSoftKeyboard and ImmDestroySoftKeyboard (#3027)
CORE-11700
2020-08-09 22:42:17 +09:00
Katayama Hirofumi MZ ec9d277d59
[IMM32][NTUSER] Implement ImmGetHotKey (#3025)
CORE-11700
- Implement imm32!ImmGetHotKey function.
- Modify NtUserGetImeHotKey function.
- Add LPHKL typedef into <imm.h> header.
2020-08-09 22:41:11 +09:00
Katayama Hirofumi MZ f7865b8bfa
[IMM32] Add ImmSetActiveContext stub (#3026)
CORE-11700
Add imm32!ImmSetActiveContext and ImmSetActiveContextConsoleIME function stubs.
2020-08-08 09:46:13 +09:00
Amine Khaldi 9ece2deded [IMM32] Sync with Wine Staging 4.18. CORE-16441 2019-11-02 18:34:15 +01:00
Jérôme Gardou 23373acbb9 [CMAKE] Use modules instead of shared libraries
There is no need to compile our DLLs as shared libraries since we are
managing symbols exports and imports through spec files.

On my system, this reduces the configure-time by a factor of two.
2019-04-06 17:43:38 +02:00
Amine Khaldi c0deab6d9d [IMM32] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:10:01 +01:00
Amine Khaldi 789fa9c819 [IMM32] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:53:21 +01:00
Amine Khaldi 1656f44ad3 [IMM32] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:36:30 +01:00
Amine Khaldi 2472f9162e [IMM32] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:31:05 +01:00
James Tabor c45a6e15bf [User32|IMM32] Fix a recursion crash in IMM. See CORE-14041.
Required a sync port from wine. This is a hack fix with Win32SS until
proper IMM support is added to Win32SS.
2017-12-07 21:14:21 -06:00
Colin Finck c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00