Module: wine Branch: master Commit: afaf061edeb93ea98dff73121a791455e4567f95 URL: https://source.winehq.org/git/wine.git/?a=commit;h=afaf061edeb93ea98dff73121...
Author: Rémi Bernon rbernon@codeweavers.com Date: Fri Mar 4 10:05:07 2022 +0100
windows.gaming.input: Add an internal WineGameControllerProvider runtimeclass.
Signed-off-by: Rémi Bernon rbernon@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/windows.gaming.input/Makefile.in | 4 ++- dlls/windows.gaming.input/provider.idl | 55 ++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+), 1 deletion(-)
diff --git a/dlls/windows.gaming.input/Makefile.in b/dlls/windows.gaming.input/Makefile.in index d7f93283bec..24b5fb226b2 100644 --- a/dlls/windows.gaming.input/Makefile.in +++ b/dlls/windows.gaming.input/Makefile.in @@ -8,4 +8,6 @@ C_SRCS = \ manager.c \ vector.c
-IDL_SRCS = classes.idl +IDL_SRCS = \ + classes.idl \ + provider.idl diff --git a/dlls/windows.gaming.input/provider.idl b/dlls/windows.gaming.input/provider.idl new file mode 100644 index 00000000000..dc67a94acaa --- /dev/null +++ b/dlls/windows.gaming.input/provider.idl @@ -0,0 +1,55 @@ +/* + * Copyright 2022 Rémi Bernon for CodeWeavers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#pragma makedep header + +#ifdef __WIDL__ +#pragma winrt ns_prefix +#endif + +import "inspectable.idl"; +import "asyncinfo.idl"; +import "eventtoken.idl"; +import "windowscontracts.idl"; +import "windows.foundation.idl"; +import "windows.gaming.input.idl"; +import "windows.gaming.input.custom.idl"; + +namespace Windows.Gaming.Input.Custom { + interface IWineGameControllerProvider; + runtimeclass WineGameControllerProvider; + + [ + exclusiveto(Windows.Gaming.Input.Custom.WineGameControllerProvider), + uuid(8967b6ef-a4de-4b9a-984a-9f920b4d1b26) + ] + interface IWineGameControllerProvider : IInspectable + requires Windows.Gaming.Input.Custom.IGameControllerProvider + { + } + + [ + marshaling_behavior(agile), + threading(both) + ] + runtimeclass WineGameControllerProvider + { + [default] interface Windows.Gaming.Input.Custom.IWineGameControllerProvider; + interface Windows.Gaming.Input.Custom.IGameControllerProvider; + } +}