Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
a7c2f4e5
Commit
a7c2f4e5
authored
Mar 11, 2023
by
Rémi Bernon
Committed by
Alexandre Julliard
Mar 23, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
imm32: Implement ImmEnumInputContext.
parent
44e1e943
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
22 additions
and
6 deletions
+22
-6
imm.c
dlls/imm32/imm.c
+18
-3
imm32.c
dlls/imm32/tests/imm32.c
+4
-3
No files found.
dlls/imm32/imm.c
View file @
a7c2f4e5
...
...
@@ -3033,10 +3033,25 @@ BOOL WINAPI ImmDisableTextFrameService(DWORD idThread)
* ImmEnumInputContext(IMM32.@)
*/
BOOL
WINAPI
ImmEnumInputContext
(
DWORD
idThread
,
IMCENUMPROC
lpfn
,
LPARAM
lParam
)
BOOL
WINAPI
ImmEnumInputContext
(
DWORD
thread
,
IMCENUMPROC
callback
,
LPARAM
lparam
)
{
FIXME
(
"Stub
\n
"
);
return
FALSE
;
HIMC
buffer
[
256
];
NTSTATUS
status
;
UINT
i
,
size
;
TRACE
(
"thread %lu, callback %p, lparam %#Ix
\n
"
,
thread
,
callback
,
lparam
);
if
((
status
=
NtUserBuildHimcList
(
thread
,
ARRAY_SIZE
(
buffer
),
buffer
,
&
size
)))
{
RtlSetLastWin32Error
(
RtlNtStatusToDosError
(
status
)
);
WARN
(
"NtUserBuildHimcList returned %#lx
\n
"
,
status
);
return
FALSE
;
}
if
(
size
==
ARRAY_SIZE
(
buffer
))
FIXME
(
"NtUserBuildHimcList returned %u handles
\n
"
,
size
);
for
(
i
=
0
;
i
<
size
;
i
++
)
if
(
!
callback
(
buffer
[
i
],
lparam
))
return
FALSE
;
return
TRUE
;
}
/***********************************************************************
...
...
dlls/imm32/tests/imm32.c
View file @
a7c2f4e5
...
...
@@ -2930,18 +2930,19 @@ static void test_ImmEnumInputContext(void)
{
HIMC
himc
;
todo_wine
ok_ret
(
1
,
ImmEnumInputContext
(
0
,
enum_get_context
,
(
LPARAM
)
&
default_himc
)
);
ok_ret
(
1
,
ImmEnumInputContext
(
-
1
,
enum_find_context
,
0
)
);
ok_ret
(
1
,
ImmEnumInputContext
(
GetCurrentThreadId
(),
enum_find_context
,
0
)
);
todo_wine
ok_ret
(
0
,
ImmEnumInputContext
(
1
,
enum_find_context
,
0
)
);
todo_wine
ok_ret
(
1
,
ImmEnumInputContext
(
GetCurrentThreadId
(),
enum_find_context
,
0
)
);
ok_ret
(
0
,
ImmEnumInputContext
(
GetCurrentProcessId
(),
enum_find_context
,
0
)
);
himc
=
ImmCreateContext
();
ok_ne
(
NULL
,
himc
,
HIMC
,
"%p"
);
ok_ret
(
0
,
ImmEnumInputContext
(
GetCurrentThreadId
(),
enum_find_context
,
(
LPARAM
)
himc
)
);
ok_ret
(
1
,
ImmDestroyContext
(
himc
)
);
todo_wine
ok_ret
(
1
,
ImmEnumInputContext
(
GetCurrentThreadId
(),
enum_find_context
,
(
LPARAM
)
himc
)
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment