Alexandre Julliard
1b937cac74
imm32: Make imm.dll into a stand-alone 16-bit module.
2009-03-23 20:32:19 +01:00
Rob Shearman
e926c62c43
imm32: Lazily allocated thread-local data.
2009-02-24 16:57:31 +01:00
Rob Shearman
f970db947a
imm32: Fix crash in DllMain when FreeLibrary is called from a thread which existed before the DLL was loaded.
...
The code in IMM_FreeThreadData shouldn't assume that thread data will
always have been created, so check for NULL data.
Make loading the DLL more robust against errors.
2009-02-24 16:57:31 +01:00
Francois Gouget
ca8a2da6c1
imm32/tests: Use win_skip() to skip over unimplemented functionality.
2009-02-24 16:57:26 +01:00
Michael Stefaniuc
7d2b787783
imm32: Make space for a 64bit pointer in the IMM window.
2009-02-12 11:52:31 +01:00
Aric Stewart
e9b3209369
imm: Send WM_IME_SELECT messages when IME is selected and deselected.
2009-01-20 12:23:38 +01:00
Alexandre Julliard
55d243d415
imm32: Avoid pointer casts in traces.
2009-01-08 13:12:55 +01:00
Michael Stefaniuc
2b69813222
imm32: Remove superfluous casts.
2009-01-07 12:22:19 +01:00
Paul Vriens
3a9a08cb3c
imm32/tests: We check for failure not success.
2008-12-18 13:39:09 +01:00
Aric Stewart
a4d4c07c2f
imm32: Implement W/A handling in ImmEscape.
2008-12-09 12:52:38 +01:00
Aric Stewart
5c3aa81473
imm32: Implement ImmAssociateContextEx.
2008-12-08 12:00:37 +01:00
Alexandre Julliard
7801b692cb
imm32/tests: Don't use a pointer in an ok test.
2008-12-04 12:13:21 +01:00
Andrew Riedi
acac1a5b10
imm32: Add some really basic tests for ImmSetCompositionString().
2008-12-03 09:50:18 +01:00
Andrew Riedi
625dca9d62
imm32: No need for tests to return 0.
2008-12-03 09:50:13 +01:00
Michael Stefaniuc
d5b1874b6c
imm32: Remove some superfluous casts.
2008-12-02 14:04:48 +01:00
Aric Stewart
6c551744ef
imm32: Implement ImmInstallIME(W/A).
2008-11-20 12:16:31 +01:00
Andrew Talbot
5b598f2ec4
imm32: Sign-compare warnings fix.
2008-10-14 11:25:54 +02:00
Aric Stewart
d63eccc602
imm32: ImmConfigureIME should return 0 when the type is IME_CONFIG_REGISTERWORD and the data is NULL.
2008-10-01 13:46:08 -05:00
Paul Vriens
e46e095c22
imm32/tests: Skip tests when IME support is not implemented.
2008-09-22 12:19:35 +02:00
Aric Stewart
16d2a46bc5
imm32: Include a basic ImmGetCompositionString test checking ATTR lengths.
2008-09-16 13:19:17 +02:00
Aric Stewart
b17aa7813f
imm32: Update CopyCompOffsetIMEtoClient to handle A->W and W->A conversions.
2008-09-16 13:19:10 +02:00
Aric Stewart
d8c91f58e2
imm32: Update CopyCompClauseIMEtoClient to handle A->W and W->A conversions.
2008-09-16 13:19:03 +02:00
Aric Stewart
b2d9edd8a0
imm32: Correct CopyCompAttrIMEtoClient to handle A->W and W->A conversions.
2008-09-16 13:18:55 +02:00
Aric Stewart
0739200c75
imm32: Implement helper functions for copying CompositionString data out of the IME. Standardize ImmGetCompositionStringA/W to use a common T function.
2008-09-16 13:17:39 +02:00
ByeongSik Jeon
33a5ab522f
imm32: Add the all GCS_* value check.
2008-05-12 20:16:09 +02:00
ByeongSik Jeon
6e74a865e3
imm32: Add the missing is_himc_ime_unicode() check.
2008-05-12 20:16:06 +02:00
Kusanagi Kouichi
fb35a5754c
imm32: Avoid false FIXMEs.
2008-05-09 11:21:24 +02:00
ByeongSik Jeon
cedfd3f763
imm32: Implementation of the ImmRequestMessage{A|W}.
2008-05-02 11:41:49 +02:00
ByeongSik Jeon
37901a6592
imm32: Updated implementation of the ImmGetConversionList{A|W}.
2008-05-02 11:41:48 +02:00
ByeongSik Jeon
a45a07e474
imm32: Updated implementation of the ImmGetCandidateListCount{A|W}.
2008-05-02 11:41:48 +02:00
ByeongSik Jeon
826b50f5ed
imm32: Updated implementation of the ImmGetCandidateList{A|W}.
2008-05-02 11:41:48 +02:00
ByeongSik Jeon
e552a10c7c
imm32: Updated implementation of the ImmEnumRegisterWord{A|W}.
2008-05-02 11:41:48 +02:00
ByeongSik Jeon
4ce9b42c80
imm32: Updated implementation of the Imm{Get|Set}CompositionFont{A|W}.
2008-04-28 14:30:46 +02:00
ByeongSik Jeon
b322bc682e
imm32: Implementation of the Imm{Get|Set}StatusWindowPos.
2008-04-28 14:30:10 +02:00
ByeongSik Jeon
5d49b3db8d
imm32: Implementation of the Imm{Get|Set}CandidateWindow.
2008-04-28 14:30:02 +02:00
ByeongSik Jeon
63d81263e2
imm32: Add the updated ImmTranslateMessage declaration.
2008-04-28 14:29:43 +02:00
Kusanagi Kouichi
9b560b5de8
imm32: Fix typos.
2008-04-25 15:00:11 +02:00
ByeongSik Jeon
86b0d5ecc9
imm32: Fix a typo.
2008-04-25 14:36:08 +02:00
ByeongSik Jeon
fab832df68
imm32: ImmGetVirtualKey return orignal virtual key value.
2008-04-25 14:36:02 +02:00
ByeongSik Jeon
7e341002d2
imm32: Reconstruct the ImmProcessKey, ImmTranslateMessage for the VK_PROCESSKEY.
2008-04-25 14:34:34 +02:00
Kusanagi Kouichi
83ae4a92e5
imm32: Fix a meaningless test.
...
ImmSetCompositionString generates WM_IME_COMPOSITION. Therefore test always
fails if messages are not flushed.
2008-04-24 13:13:34 +02:00
ByeongSik Jeon
a720292bac
imm32: More implementation of the ImmGetConversionStatus().
...
Match the ImmSetConversionStatus() function.
2008-04-23 13:28:16 +02:00
ByeongSik Jeon
4c5a21c60e
imm32: Pass the old conversion status value to the IME.
2008-04-23 13:28:06 +02:00
ByeongSik Jeon
9a89e4d68c
imm32: Examine whether the fOpen value differs with its old value.
2008-04-23 13:27:53 +02:00
ByeongSik Jeon
a6ff00c4da
imm32: Add stub and header of Imm{Create|Show|Destroy}SoftKeyboard.
2008-04-23 13:26:48 +02:00
ByeongSik Jeon
f9316b1877
imm32: Add stub and header of ImmRequestMessage.
2008-04-23 13:26:45 +02:00
James Hawkins
8422c98df7
imm32: Fix a test that fails on all systems.
2008-04-21 13:36:18 +02:00
Aric Stewart
1eece6eee6
imm32: Create the IME UI window with the IME instance so the registered class can be found.
2008-04-17 11:39:33 +02:00
ByeongSik Jeon
511753196f
imm32: Implement ImmSetConversionStatus.
2008-04-17 11:39:27 +02:00
Aric Stewart
43dc41168d
imm32: Implement ImmProcessKey and ImmTranslateMessage.
2008-04-14 12:42:06 +02:00
Aric Stewart
3dde049f31
imm32: All HIMCC in the InputContext should be initialized at creation.
2008-04-14 12:41:53 +02:00
Aric Stewart
63d2d041d9
imm32: Remember to unset the hwnd for a context when that hwnd is associated with a different context.
2008-04-14 12:04:58 +02:00
Aric Stewart
5ce9649f5a
imm32: Implement ImmUnregisterWord using loaded IME.
2008-04-09 19:57:57 +02:00
Aric Stewart
25cb21de44
imm32: Implement ImmRegisterWord using loaded IME.
2008-04-09 19:57:43 +02:00
Aric Stewart
fb12a3ec7a
imm32: Implement ImmGetRegisterWordStyle using loaded IME.
2008-04-09 19:57:37 +02:00
Aric Stewart
f9414028ca
imm32: Semi-stub implement ImmGetConversionList using loaded IME.
2008-04-09 19:56:43 +02:00
Aric Stewart
35e148594e
imm32: Semi-stub implement ImmEscape using loaded IME.
2008-04-09 19:56:34 +02:00
Aric Stewart
5818a0e787
imm32: Semi-stub implement ImmEnumRegisterWord using loaded IME.
2008-04-09 19:56:29 +02:00
Aric Stewart
bb52d30111
imm32: ImmDestroyContext cannot destroy the default context.
2008-04-09 11:43:53 +02:00
Aric Stewart
e7c00ca727
imm32: Properly handle unicode and non unicode IMEs with SetCompositionString.
2008-04-07 20:53:23 +02:00
Aric Stewart
b72dcd114d
imm: Default context and hwnd are per thread so store that data in a thread local storage.
2008-04-07 20:53:05 +02:00
Aric Stewart
7fd05b01ae
imm32: Make use of of the loaded IME for all processing.
2008-04-07 20:49:02 +02:00
Aric Stewart
f4fd36e543
imm32: Implement ImmGetImeMenuItems using loaded IME.
2008-04-07 20:47:29 +02:00
Aric Stewart
2a8a18fc5b
imm32: Load a default IME if a specific one is not specified. This defaults to x11.
2008-04-07 20:47:08 +02:00
Aric Stewart
467ab8a065
imm32: Implement ImmConfigureIME using the loaded IME.
2008-04-07 20:45:35 +02:00
Aric Stewart
dd0c9300f9
imm32: Keep track of context associations between HWND and HIMC.
2008-04-02 20:06:31 +02:00
Aric Stewart
fd8829fb09
imm: Implement GetCompositionFont.
2008-04-01 23:38:28 +02:00
Alexandre Julliard
01d167be7c
imm32: Remove stray semicolon. Don't try to load an invalid file.
2008-04-01 23:17:21 +02:00
Aric Stewart
0a44a778f0
imm32: Begin to add basic framework for loading IMEs as dlls.
2008-04-01 13:39:36 +02:00
Aric Stewart
8be2adf398
imm32: Correct a typo accidently using data instead of root_context.
2008-04-01 13:25:48 +02:00
Aric Stewart
2ea559b8b2
imm32: Have both ImmInternalPostIMEMessage and ImmInternalSendIMENotify receive an InputContextData parameter instead of relaying on root_context.
2008-03-31 15:12:50 +02:00
Aric Stewart
5035a85533
imm: Implement ImmGetIMEFileNameW and ImmGetIMEFileNameA.
2008-03-26 13:31:30 +01:00
Aric Stewart
62f80d3326
imm32: IMEs do not expect the hMsgBuf to be NULL, so initialize it.
2008-03-21 11:25:16 +01:00
Rob Shearman
48000893f9
makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
...
Only specify the root to keep platform-specifics out of the individual
DLL makefiles.
2008-03-04 20:55:01 +01:00
Andrew Talbot
23dd9dc088
imm32: Assign to structs instead of using memcpy.
2008-02-29 12:35:31 +01:00
Aric Stewart
f9e5296c7d
imm32: Correct offset of text in default IME window when using not default window position.
2008-02-27 14:52:23 +01:00
Rob Shearman
076e3002ec
imm32: Destroy the data of the context passed into ImmDestroyContext, not the data in the root context.
2008-02-25 19:49:58 +01:00
Aric Stewart
fd67f32ee3
imm: Ensure hCompStr handle is not NULL and check for empty composition strings properly.
2008-02-16 16:04:31 +01:00
Aric Stewart
f096dae361
imm: Implement ImmGenerateMessage.
2008-02-11 21:02:47 +01:00
Aric Stewart
0e5d5b37ec
imm: More correctly handle the presence of the default IME input window on IME open and close.
2008-02-11 21:02:21 +01:00
Aric Stewart
6bc088b28c
imm32: ImmNotifyIMM with CPS_CANCEL fully clears the composition string. Also enable respective tests.
2008-01-07 12:34:01 +01:00
Andrew Talbot
a36e14d9c9
imm32: Remove unneeded cast.
2008-01-07 12:18:25 +01:00
Michael Jung
0a31ab7e2a
imm32: Added some unit test cases.
2008-01-03 12:34:05 +01:00
Aric Stewart
1b997a9986
imm32: When updating a NULL HIMCC with NULL just return NULL. Handle the NULL HIMCC for the compstr when doing a ImmNotifyIME for a reset.
2008-01-03 12:09:52 +01:00
Andrey Turkin
57a2a8629a
imm32: ImmDisableIme is an alias to ImmDisableIME.
2007-10-17 13:40:47 +02:00
Marcus Meissner
a84f9e6f69
imm32: Avoid spamming the debug output.
2007-10-12 11:07:39 +02:00
Aric Stewart
7f83b940b5
imm32: Further tweeks to CFS_POINT and CFS_RECT placement of the default ime window.
2007-09-10 15:29:47 +02:00
Aric Stewart
0c9c00cf2b
imm: Report GCS_DELTASTART to help behavior with advanced IME aware applications.
2007-08-29 12:01:47 +02:00
Aric Stewart
39aa755600
imm32: Update position of default IME window.
2007-08-27 19:32:37 +02:00
Aric Stewart
ede59b0c05
imm32: If composition string is reduced to 0 characters hide composition window.
2007-08-27 12:24:24 +02:00
Aric Stewart
5db70db76e
imm32: Use the COMPOSITIONSTRING in hCompStr.
...
Stop using our custom structure for the Composition string and instead
use the COMPOSITIONSTRING whose handle is in the IMC structure.
2007-07-11 12:42:25 +02:00
Aric Stewart
68b9f52bdb
imm32: Implement Locking/Unlocking IMC and IMCC functions.
2007-07-04 13:42:37 +02:00
Aric Stewart
6302b965fa
imm32: Implementation of GCS_CURSORPOS.
2007-07-02 13:17:22 +02:00
Dmitry Timoshkov
3c9e7a7f33
wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility.
2007-05-25 20:37:56 +02:00
Michael Stefaniuc
5f62da109e
janitorial: Pass HEAP_ZERO_MEMORY as flag to HeapAlloc() instead of zeroing out the allocated memory in a later call.
2007-04-25 12:26:07 +02:00
Dmitry Timoshkov
d57872567d
winebuild: Check if a given forward does exist in one of the imported dlls, fix a couple of problems detected.
2007-04-09 12:19:31 +02:00
Aric Stewart
7358913545
imm32: Change the default IME window to better reflect applications request.
...
First part of this change was proposed by Byeong-Sik Jeon.
Additionally respect parameters give to us by ImmSetCompositionWindow
for placement of the composition window.
2007-03-29 21:00:00 +02:00
Alexandre Julliard
9dd1f1e341
Added version information for a number of dlls.
2007-03-07 21:25:16 +01:00
Dmitry Timoshkov
f0e88c2aef
imm32: Simplify ImmInternalSendIMENotify.
2007-02-27 12:26:33 +01:00
Aric Stewart
99cb61ee8a
imm32: Properly send WM_IME_NOTIFY using SendMessage.
2007-02-26 14:40:05 +01:00