ninput: Add SetInteractionConfigurationInteractionContext() stub.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Józef Kucia 2018-06-21 16:19:45 +02:00 committed by Alexandre Julliard
parent ca8b8664a2
commit b86e7dfccd
3 changed files with 54 additions and 1 deletions

View File

@ -131,6 +131,23 @@ HRESULT WINAPI SetPropertyInteractionContext(HINTERACTIONCONTEXT handle,
}
}
HRESULT WINAPI SetInteractionConfigurationInteractionContext(HINTERACTIONCONTEXT handle,
UINT32 count, const INTERACTION_CONTEXT_CONFIGURATION *configuration)
{
struct interaction_context *context = context_from_handle(handle);
FIXME("context %p, count %u, configuration %p: stub!.\n", context, count, configuration);
if (!context)
return E_HANDLE;
if (!count)
return E_INVALIDARG;
if (!configuration)
return E_POINTER;
return S_OK;
}
HRESULT WINAPI ProcessInertiaInteractionContext(HINTERACTIONCONTEXT context)
{
FIXME("context %p: stub!\n", context);

View File

@ -17,7 +17,7 @@
@ stub ResetInteractionContext
@ stub SetCrossSlideParametersInteractionContext
@ stub SetInertiaParameterInteractionContext
@ stub SetInteractionConfigurationInteractionContext
@ stdcall SetInteractionConfigurationInteractionContext(ptr long ptr)
@ stub SetMouseWheelParameterInteractionContext
@ stub SetPivotInteractionContext
@ stdcall SetPropertyInteractionContext(ptr long long)

View File

@ -82,8 +82,44 @@ static void test_properties(void)
ok(hr == S_OK, "Failed to destroy context, hr %#x.\n", hr);
}
static void test_configuration(void)
{
HINTERACTIONCONTEXT context;
HRESULT hr;
static const INTERACTION_CONTEXT_CONFIGURATION config[] =
{
{
INTERACTION_ID_MANIPULATION,
INTERACTION_CONFIGURATION_FLAG_MANIPULATION |
INTERACTION_CONFIGURATION_FLAG_MANIPULATION_TRANSLATION_X |
INTERACTION_CONFIGURATION_FLAG_MANIPULATION_TRANSLATION_Y |
INTERACTION_CONFIGURATION_FLAG_MANIPULATION_SCALING |
INTERACTION_CONFIGURATION_FLAG_MANIPULATION_TRANSLATION_INERTIA |
INTERACTION_CONFIGURATION_FLAG_MANIPULATION_SCALING_INERTIA
},
};
hr = CreateInteractionContext(&context);
ok(hr == S_OK, "Failed to create context, hr %#x.\n", hr);
hr = SetInteractionConfigurationInteractionContext(NULL, 0, NULL);
ok(hr == E_HANDLE, "Got hr %#x.\n", hr);
hr = SetInteractionConfigurationInteractionContext(context, 0, NULL);
ok(hr == E_INVALIDARG, "Got hr %#x.\n", hr);
hr = SetInteractionConfigurationInteractionContext(context, 1, NULL);
ok(hr == E_POINTER, "Got hr %#x.\n", hr);
hr = SetInteractionConfigurationInteractionContext(context, ARRAY_SIZE(config), config);
ok(hr == S_OK, "Failed to set configuration, hr %#x.\n", hr);
hr = DestroyInteractionContext(context);
ok(hr == S_OK, "Failed to destroy context, hr %#x.\n", hr);
}
START_TEST(ninput)
{
test_context();
test_properties();
test_configuration();
}