mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-09-13 09:17:20 -07:00
Rebase against 0f972e2247932f255f131792724e4796b4b2b87a.
This commit is contained in:
parent
806bbc0198
commit
783002b5de
@ -1,66 +0,0 @@
|
||||
From cf24ca0854a5b0dca2055f0991fd9a932125c65e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Sat, 5 Aug 2017 02:03:20 +0200
|
||||
Subject: shell32: Implement process elevation using runas verb.
|
||||
|
||||
---
|
||||
dlls/shell32/shlexec.c | 22 ++++++++++++++++++++--
|
||||
1 file changed, 20 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/shell32/shlexec.c b/dlls/shell32/shlexec.c
|
||||
index 0cf112b6373..af50078dbca 100644
|
||||
--- a/dlls/shell32/shlexec.c
|
||||
+++ b/dlls/shell32/shlexec.c
|
||||
@@ -50,6 +50,8 @@
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(exec);
|
||||
|
||||
+extern HANDLE CDECL __wine_create_default_token(BOOL admin);
|
||||
+
|
||||
static const WCHAR wszOpen[] = {'o','p','e','n',0};
|
||||
static const WCHAR wszExe[] = {'.','e','x','e',0};
|
||||
static const WCHAR wszILPtr[] = {':','%','p',0};
|
||||
@@ -312,6 +314,8 @@ static HRESULT SHELL_GetPathFromIDListForExecuteW(LPCITEMIDLIST pidl, LPWSTR psz
|
||||
static UINT_PTR SHELL_ExecuteW(const WCHAR *lpCmd, WCHAR *env, BOOL shWait,
|
||||
const SHELLEXECUTEINFOW *psei, LPSHELLEXECUTEINFOW psei_out)
|
||||
{
|
||||
+ static WCHAR runasW[] = {'r','u','n','a','s',0};
|
||||
+ HANDLE token = NULL;
|
||||
STARTUPINFOW startup;
|
||||
PROCESS_INFORMATION info;
|
||||
UINT_PTR retval = SE_ERR_NOASSOC;
|
||||
@@ -344,8 +348,20 @@ static UINT_PTR SHELL_ExecuteW(const WCHAR *lpCmd, WCHAR *env, BOOL shWait,
|
||||
dwCreationFlags = CREATE_UNICODE_ENVIRONMENT;
|
||||
if (!(psei->fMask & SEE_MASK_NO_CONSOLE))
|
||||
dwCreationFlags |= CREATE_NEW_CONSOLE;
|
||||
- if (CreateProcessW(NULL, (LPWSTR)lpCmd, NULL, NULL, FALSE, dwCreationFlags, env,
|
||||
- lpDirectory, &startup, &info))
|
||||
+
|
||||
+ /* Spawning a process with runas verb means that the process should be
|
||||
+ * executed with admin rights. This function ignores the manifest data,
|
||||
+ * and allows programs to elevate rights on-demand. On Windows a complex
|
||||
+ * RPC menchanism is used, using CreateProcessAsUser would fail because
|
||||
+ * it can only be used to drop rights. */
|
||||
+ if (psei->lpVerb && !strcmpiW(psei->lpVerb, runasW))
|
||||
+ {
|
||||
+ if (!(token = __wine_create_default_token(TRUE)))
|
||||
+ ERR("Failed to create admin token\n");
|
||||
+ }
|
||||
+
|
||||
+ if (CreateProcessAsUserW(token, NULL, (LPWSTR)lpCmd, NULL, NULL, FALSE,
|
||||
+ dwCreationFlags, env, lpDirectory, &startup, &info))
|
||||
{
|
||||
/* Give 30 seconds to the app to come up, if desired. Probably only needed
|
||||
when starting app immediately before making a DDE connection. */
|
||||
@@ -365,6 +381,8 @@ static UINT_PTR SHELL_ExecuteW(const WCHAR *lpCmd, WCHAR *env, BOOL shWait,
|
||||
retval = ERROR_BAD_FORMAT;
|
||||
}
|
||||
|
||||
+ if (token) CloseHandle(token);
|
||||
+
|
||||
TRACE("returning %lu\n", retval);
|
||||
|
||||
psei_out->hInstApp = (HINSTANCE)retval;
|
||||
--
|
||||
2.13.1
|
||||
|
@ -51,7 +51,7 @@ usage()
|
||||
# Get the upstream commit sha
|
||||
upstream_commit()
|
||||
{
|
||||
echo "35e43ccf1b42e9f67d7765753f0c3ef8cf102c46"
|
||||
echo "0f972e2247932f255f131792724e4796b4b2b87a"
|
||||
}
|
||||
|
||||
# Show version information
|
||||
@ -254,6 +254,9 @@ patch_enable_all ()
|
||||
enable_uxtheme_CloseThemeClass="$1"
|
||||
enable_version_VerQueryValue="$1"
|
||||
enable_widl_SLTG_Typelib_Support="$1"
|
||||
enable_windows_gaming_input_dll="$1"
|
||||
enable_windows_globalization_dll="$1"
|
||||
enable_windows_media_speech_dll="$1"
|
||||
enable_windowscodecs_GIF_Encoder="$1"
|
||||
enable_windowscodecs_TIFF_Support="$1"
|
||||
enable_wine_inf_Directory_ContextMenuHandlers="$1"
|
||||
@ -832,6 +835,15 @@ patch_enable ()
|
||||
widl-SLTG_Typelib_Support)
|
||||
enable_widl_SLTG_Typelib_Support="$2"
|
||||
;;
|
||||
windows.gaming.input-dll)
|
||||
enable_windows_gaming_input_dll="$2"
|
||||
;;
|
||||
windows.globalization-dll)
|
||||
enable_windows_globalization_dll="$2"
|
||||
;;
|
||||
windows.media.speech.dll)
|
||||
enable_windows_media_speech_dll="$2"
|
||||
;;
|
||||
windowscodecs-GIF_Encoder)
|
||||
enable_windowscodecs_GIF_Encoder="$2"
|
||||
;;
|
||||
@ -1372,6 +1384,20 @@ if test "$enable_wineboot_ProxySettings" -eq 1; then
|
||||
enable_wineboot_drivers_etc_Stubs=1
|
||||
fi
|
||||
|
||||
if test "$enable_windows_globalization_dll" -eq 1; then
|
||||
if test "$enable_windows_gaming_input_dll" -gt 1; then
|
||||
abort "Patchset windows.gaming.input-dll disabled, but windows.globalization-dll depends on that."
|
||||
fi
|
||||
enable_windows_gaming_input_dll=1
|
||||
fi
|
||||
|
||||
if test "$enable_windows_gaming_input_dll" -eq 1; then
|
||||
if test "$enable_windows_media_speech_dll" -gt 1; then
|
||||
abort "Patchset windows.media.speech.dll disabled, but windows.gaming.input-dll depends on that."
|
||||
fi
|
||||
enable_windows_media_speech_dll=1
|
||||
fi
|
||||
|
||||
if test "$enable_user32_rawinput_mouse_experimental" -eq 1; then
|
||||
if test "$enable_user32_rawinput_mouse" -gt 1; then
|
||||
abort "Patchset user32-rawinput-mouse disabled, but user32-rawinput-mouse-experimental depends on that."
|
||||
@ -4116,6 +4142,71 @@ if test "$enable_version_VerQueryValue" -eq 1; then
|
||||
patch_apply version-VerQueryValue/0001-version-Test-for-VerQueryValueA-try-2.patch
|
||||
fi
|
||||
|
||||
# Patchset windows.media.speech.dll
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#49740] windows.media.speech: New DLL
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * configure.ac, dlls/windows.media.speech.dll/Makefile.in, dlls/windows.media.speech.dll/windows.media.speech.spec,
|
||||
# | dlls/windows.media.speech.dll/windows.media.speech_main.c, loader/wine.inf.in
|
||||
# |
|
||||
if test "$enable_windows_media_speech_dll" -eq 1; then
|
||||
patch_apply windows.media.speech.dll/0001-windows.media.speech-Add-stub-dll.patch
|
||||
patch_apply windows.media.speech.dll/0002-windows.media.speech-Implement-IInstalledVoicesStati.patch
|
||||
patch_apply windows.media.speech.dll/0003-windows.media.speech-Implement-IInstalledVoicesStati.patch
|
||||
patch_apply windows.media.speech.dll/0004-windows.media.speech-Fake-empty-IInstalledVoicesStat.patch
|
||||
fi
|
||||
|
||||
# Patchset windows.gaming.input-dll
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
# | * windows.media.speech.dll
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#49756] windows.gaming.input: New DLL
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * configure.ac, dlls/windows.gaming.input.dll/Makefile.in, dlls/windows.gaming.input.dll/windows.gaming.input.spec,
|
||||
# | dlls/windows.gaming.input.dll/windows.gaming.input_main.c, include/Makefile.in, include/asyncinfo.idl,
|
||||
# | include/windows.foundation.collections.idl, include/windows.foundation.idl,
|
||||
# | include/windows.gaming.input.forcefeedback.idl, include/windows.gaming.input.idl, include/windows.system.idl,
|
||||
# | loader/wine.inf.in
|
||||
# |
|
||||
if test "$enable_windows_gaming_input_dll" -eq 1; then
|
||||
patch_apply windows.gaming.input-dll/0001-windows.gaming.input-Add-stub-dll.patch
|
||||
patch_apply windows.gaming.input-dll/0002-windows.gaming.input-Implement-IGamepadStatics-stubs.patch
|
||||
patch_apply windows.gaming.input-dll/0003-windows.gaming.input-Implement-IGamepadStatics-Gamep.patch
|
||||
patch_apply windows.gaming.input-dll/0004-windows.gaming.input-Fake-empty-IGamepadStatics-Game.patch
|
||||
patch_apply windows.gaming.input-dll/0005-windows.gaming.input-Fake-IEventHandler_Gamepad-supp.patch
|
||||
patch_apply windows.gaming.input-dll/0006-windows.gaming.input-Implement-IRawGameControllerSta.patch
|
||||
patch_apply windows.gaming.input-dll/0007-windows.gaming.input-Implement-IRawGameControllerSta.patch
|
||||
patch_apply windows.gaming.input-dll/0008-windows.gaming.input-Fake-empty-IRawGameControllerSt.patch
|
||||
patch_apply windows.gaming.input-dll/0009-windows.gaming.input-Fake-IEventHandler_RawGameContr.patch
|
||||
fi
|
||||
|
||||
# Patchset windows.globalization-dll
|
||||
# |
|
||||
# | This patchset has the following (direct or indirect) dependencies:
|
||||
# | * windows.media.speech.dll, windows.gaming.input-dll
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#49740] windows.globalization: New DLL
|
||||
# | * [#49998] windows.globalization: New DLL
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * configure.ac, dlls/windows.globalization.dll/Makefile.in, dlls/windows.globalization.dll/windows.globalization.spec,
|
||||
# | dlls/windows.globalization.dll/windows.globalization_main.c, include/Makefile.in, include/windows.foundation.idl,
|
||||
# | include/windows.globalization.idl, include/windows.system.userprofile.idl, loader/wine.inf.in
|
||||
# |
|
||||
if test "$enable_windows_globalization_dll" -eq 1; then
|
||||
patch_apply windows.globalization-dll/0001-windows.globalization-Add-stub-dll.patch
|
||||
patch_apply windows.globalization-dll/0002-windows.globalization-Implement-IGlobalizationPrefer.patch
|
||||
patch_apply windows.globalization-dll/0003-windows.globalization-Implement-IGlobalizationPrefer.patch
|
||||
patch_apply windows.globalization-dll/0004-windows.globalization-Implement-IGlobalizationPrefer.patch
|
||||
patch_apply windows.globalization-dll/0005-windows.globalization-Fake-empty-IGlobalizationPrefe.patch
|
||||
fi
|
||||
|
||||
# Patchset windowscodecs-GIF_Encoder
|
||||
# |
|
||||
# | Modified files:
|
||||
|
@ -1,193 +0,0 @@
|
||||
From cfe5dc40372336a60520b2b7d4459c2687984129 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Wed, 26 Aug 2020 22:46:02 +0200
|
||||
Subject: [PATCH] widl: Generate helper macros for WinRT implementation.
|
||||
|
||||
This generates additional macros to help keeping implementation simple,
|
||||
guarded with WIDL_USING ifdefs, like this:
|
||||
|
||||
#ifdef WIDL_USING_WINDOWS_FOO_IFOO
|
||||
#define IFooVtbl __x_ABI_CWindows_CFoo_CIFooVtbl
|
||||
#define IFoo __x_ABI_CWindows_CFoo_CIFoo
|
||||
#define IFoo_DoFoo __x_ABI_CWindows_CFoo_CIFoo_DoFoo
|
||||
#endif /* WIDL_USING_WINDOWS_FOO_IFOO */
|
||||
|
||||
Implementation files can define the desired WIDL_USING preprocessor
|
||||
macros before including the header, and then implement or use the
|
||||
interface methods with the simple non-prefixed names instead.
|
||||
---
|
||||
tools/widl/header.c | 72 ++++++++++++++++++++++++++++++++++++++++--
|
||||
tools/widl/typetree.c | 19 +++++++++++
|
||||
tools/widl/widltypes.h | 1 +
|
||||
3 files changed, 90 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tools/widl/header.c b/tools/widl/header.c
|
||||
index 7ab79d3b6e1..a8141d5f61d 100644
|
||||
--- a/tools/widl/header.c
|
||||
+++ b/tools/widl/header.c
|
||||
@@ -48,6 +48,8 @@ static void write_type_v(FILE *f, const decl_spec_t *t, int is_field, int declon
|
||||
static void write_apicontract_guard_start(FILE *header, const expr_t *expr);
|
||||
static void write_apicontract_guard_end(FILE *header, const expr_t *expr);
|
||||
|
||||
+static void write_widl_using_macros(FILE *header, type_t *iface);
|
||||
+
|
||||
static void indent(FILE *h, int delta)
|
||||
{
|
||||
int c;
|
||||
@@ -603,10 +605,11 @@ static void write_type_definition(FILE *f, type_t *t, int declonly)
|
||||
t->written = save_written;
|
||||
write_namespace_end(f, t->namespace);
|
||||
fprintf(f, "extern \"C\" {\n");
|
||||
- fprintf(f, "#else\n");
|
||||
+ fprintf(f, "#else /* __cplusplus */\n");
|
||||
write_type_left(f, &ds, NAME_C, declonly, TRUE);
|
||||
fprintf(f, ";\n");
|
||||
- fprintf(f, "#endif\n\n");
|
||||
+ if (winrt_mode) write_widl_using_macros(f, t);
|
||||
+ fprintf(f, "#endif /* __cplusplus */\n\n");
|
||||
}
|
||||
if (contract) write_apicontract_guard_end(f, contract);
|
||||
}
|
||||
@@ -1536,6 +1539,70 @@ static void write_com_interface_start(FILE *header, const type_t *iface)
|
||||
fprintf(header,"#define __%s_%sINTERFACE_DEFINED__\n\n", iface->c_name, dispinterface ? "DISP" : "");
|
||||
}
|
||||
|
||||
+static char *get_winrt_guard_macro(type_t *iface)
|
||||
+{
|
||||
+ unsigned int len;
|
||||
+ char *macro, *tmp = (char *)iface->c_name;
|
||||
+ int i;
|
||||
+
|
||||
+ if (!strncmp(tmp, "__x", 3)) tmp += 3;
|
||||
+ if (!strncmp(tmp, "_ABI", 4)) tmp += 4;
|
||||
+ macro = xstrdup(tmp);
|
||||
+
|
||||
+ len = strlen(macro) + 1;
|
||||
+ for (tmp = strstr(macro, "__F"); tmp; tmp = strstr(tmp, "__F"))
|
||||
+ memmove(tmp + 1, tmp + 3, len - (tmp - macro) - 3);
|
||||
+ for (tmp = strstr(macro, "__C"); tmp; tmp = strstr(tmp, "__C"))
|
||||
+ memmove(tmp + 1, tmp + 3, len - (tmp - macro) - 3);
|
||||
+ for (tmp = strstr(macro, "_C"); tmp; tmp = strstr(tmp, "_C"))
|
||||
+ memmove(tmp + 1, tmp + 2, len - (tmp - macro) - 2);
|
||||
+
|
||||
+ for (i = strlen(macro); i > 0; --i) macro[i - 1] = toupper(macro[i - 1]);
|
||||
+
|
||||
+ return macro;
|
||||
+}
|
||||
+
|
||||
+static void write_widl_using_method_macros(FILE *header, const type_t *iface, const type_t *top_iface)
|
||||
+{
|
||||
+ const statement_t *stmt;
|
||||
+ const char *name = top_iface->short_name ? top_iface->short_name : top_iface->name;
|
||||
+
|
||||
+ if (type_iface_get_inherit(iface)) write_widl_using_method_macros(header, type_iface_get_inherit(iface), top_iface);
|
||||
+
|
||||
+ STATEMENTS_FOR_EACH_FUNC(stmt, type_iface_get_stmts(iface))
|
||||
+ {
|
||||
+ const var_t *func = stmt->u.var;
|
||||
+ const char *func_name;
|
||||
+
|
||||
+ if (is_override_method(iface, top_iface, func)) continue;
|
||||
+ if (is_callas(func->attrs)) continue;
|
||||
+
|
||||
+ func_name = get_name(func);
|
||||
+ fprintf(header, "#define %s_%s %s_%s\n", name, func_name, top_iface->c_name, func_name);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void write_widl_using_macros(FILE *header, type_t *iface)
|
||||
+{
|
||||
+ const UUID *uuid = get_attrp(iface->attrs, ATTR_UUID);
|
||||
+ const char *name = iface->short_name ? iface->short_name : iface->name;
|
||||
+ char *macro;
|
||||
+
|
||||
+ if (!strcmp(iface->name, iface->c_name)) return;
|
||||
+
|
||||
+ macro = get_winrt_guard_macro(iface);
|
||||
+ fprintf(header, "#ifdef WIDL_USING%s\n", macro);
|
||||
+
|
||||
+ if (uuid) fprintf(header, "#define IID_%s IID_%s\n", name, iface->c_name);
|
||||
+ if (iface->type_type == TYPE_INTERFACE) fprintf(header, "#define %sVtbl %sVtbl\n", name, iface->c_name);
|
||||
+ fprintf(header, "#define %s %s\n", name, iface->c_name);
|
||||
+
|
||||
+ if (iface->type_type == TYPE_INTERFACE) write_widl_using_method_macros(header, iface, iface);
|
||||
+
|
||||
+ fprintf(header, "#endif /* WIDL_USING_%s */\n", macro);
|
||||
+ free(macro);
|
||||
+}
|
||||
+
|
||||
static void write_com_interface_end(FILE *header, type_t *iface)
|
||||
{
|
||||
int dispinterface = is_attr(iface->attrs, ATTR_DISPINTERFACE);
|
||||
@@ -1608,6 +1675,7 @@ static void write_com_interface_end(FILE *header, type_t *iface)
|
||||
fprintf(header, "#else\n");
|
||||
write_inline_wrappers(header, type, type, iface->c_name);
|
||||
fprintf(header, "#endif\n");
|
||||
+ if (winrt_mode) write_widl_using_macros(header, iface);
|
||||
fprintf(header, "#endif\n");
|
||||
fprintf(header, "\n");
|
||||
fprintf(header, "#endif\n");
|
||||
diff --git a/tools/widl/typetree.c b/tools/widl/typetree.c
|
||||
index ae11a7cb171..65bc24edb0f 100644
|
||||
--- a/tools/widl/typetree.c
|
||||
+++ b/tools/widl/typetree.c
|
||||
@@ -51,6 +51,7 @@ type_t *make_type(enum type_type type)
|
||||
t->attrs = NULL;
|
||||
t->c_name = NULL;
|
||||
t->signature = NULL;
|
||||
+ t->short_name = NULL;
|
||||
memset(&t->details, 0, sizeof(t->details));
|
||||
t->typestring_offset = 0;
|
||||
t->ptrdesc = 0;
|
||||
@@ -322,6 +323,22 @@ static char *format_parameterized_type_signature(type_t *type, type_list_t *para
|
||||
return buf;
|
||||
}
|
||||
|
||||
+static char *format_parameterized_type_short_name(type_t *type, type_list_t *params, const char *prefix)
|
||||
+{
|
||||
+ size_t len = 0, pos = 0;
|
||||
+ char *buf = NULL;
|
||||
+ type_list_t *entry;
|
||||
+
|
||||
+ pos += strappend(&buf, &len, pos, "%s%s", prefix, type->name);
|
||||
+ for (entry = params; entry; entry = entry->next)
|
||||
+ {
|
||||
+ for (type = entry->type; type->type_type == TYPE_POINTER; type = type_pointer_get_ref_type(type)) {}
|
||||
+ pos += strappend(&buf, &len, pos, "_%s", type->name);
|
||||
+ }
|
||||
+
|
||||
+ return buf;
|
||||
+}
|
||||
+
|
||||
type_t *type_new_function(var_list_t *args)
|
||||
{
|
||||
var_t *arg;
|
||||
@@ -1112,11 +1129,13 @@ type_t *type_parameterized_type_specialize_declare(type_t *type, type_list_t *pa
|
||||
new_type->name = format_parameterized_type_name(type, params);
|
||||
reg_type(new_type, new_type->name, new_type->namespace, 0);
|
||||
new_type->c_name = format_parameterized_type_c_name(type, params, "");
|
||||
+ new_type->short_name = format_parameterized_type_short_name(type, params, "");
|
||||
|
||||
if (new_type->type_type == TYPE_DELEGATE)
|
||||
{
|
||||
new_type->details.delegate.iface = duptype(tmpl->details.delegate.iface, 0);
|
||||
compute_delegate_iface_names(new_type, type, params);
|
||||
+ new_type->details.delegate.iface->short_name = format_parameterized_type_short_name(type, params, "I");
|
||||
}
|
||||
|
||||
return new_type;
|
||||
diff --git a/tools/widl/widltypes.h b/tools/widl/widltypes.h
|
||||
index a1fce0ef87d..21598a9213d 100644
|
||||
--- a/tools/widl/widltypes.h
|
||||
+++ b/tools/widl/widltypes.h
|
||||
@@ -504,6 +504,7 @@ struct _type_t {
|
||||
} details;
|
||||
const char *c_name;
|
||||
const char *signature;
|
||||
+ const char *short_name;
|
||||
unsigned int typestring_offset;
|
||||
unsigned int ptrdesc; /* used for complex structs */
|
||||
int typelib_idx;
|
||||
--
|
||||
2.20.1
|
||||
|
@ -1,29 +0,0 @@
|
||||
From 47ca5f5da753a7aef76f63d14b7be3a50a6889aa Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Fri, 25 Sep 2020 17:05:17 +0200
|
||||
Subject: [PATCH] include: Add IVectorView<HSTRING> declaration to
|
||||
windows.foundation.idl.
|
||||
|
||||
---
|
||||
include/windows.foundation.idl | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/include/windows.foundation.idl b/include/windows.foundation.idl
|
||||
index 9583fa5bcc8..9b9b40897be 100644
|
||||
--- a/include/windows.foundation.idl
|
||||
+++ b/include/windows.foundation.idl
|
||||
@@ -157,3 +157,11 @@ namespace Windows {
|
||||
#endif
|
||||
}
|
||||
}
|
||||
+
|
||||
+namespace Windows {
|
||||
+ namespace Foundation {
|
||||
+ declare {
|
||||
+ interface Windows.Foundation.Collections.IVectorView<HSTRING>;
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
--
|
||||
2.20.1
|
||||
|
@ -1,3 +0,0 @@
|
||||
Fixes: [49998] widl - Support WinRT idls
|
||||
# In the process of upstreaming.
|
||||
Disabled: true
|
@ -1,4 +1,4 @@
|
||||
From 57e813244a401d27959d8689942e787fafcaa15b Mon Sep 17 00:00:00 2001
|
||||
From 101a33fbffa02e2437d4ef62bc830c6b72e29280 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Fri, 9 Oct 2020 13:38:18 +0200
|
||||
Subject: [PATCH] windows.gaming.input: Add stub dll.
|
||||
@ -17,10 +17,10 @@ Subject: [PATCH] windows.gaming.input: Add stub dll.
|
||||
create mode 100644 include/windows.gaming.input.idl
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6fbf7f2d4e5..bdcfe84f87d 100644
|
||||
index 78720ab188f..405d1a6ecc4 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3850,6 +3850,7 @@ WINE_CONFIG_MAKEFILE(dlls/win32s16.dll16,enable_win16)
|
||||
@@ -3796,6 +3796,7 @@ WINE_CONFIG_MAKEFILE(dlls/win32s16.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/win87em.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/winaspi.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/windebug.dll16,enable_win16)
|
||||
@ -195,12 +195,12 @@ index 00000000000..2b6abc4dd84
|
||||
+ return S_OK;
|
||||
+}
|
||||
diff --git a/include/Makefile.in b/include/Makefile.in
|
||||
index 466ac6fd5dc..24cc64a3407 100644
|
||||
index 6c16e01a271..ac403a78a4d 100644
|
||||
--- a/include/Makefile.in
|
||||
+++ b/include/Makefile.in
|
||||
@@ -753,6 +753,7 @@ SOURCES = \
|
||||
windef.h \
|
||||
@@ -748,6 +748,7 @@ SOURCES = \
|
||||
windns.h \
|
||||
windows.foundation.collections.idl \
|
||||
windows.foundation.idl \
|
||||
+ windows.gaming.input.idl \
|
||||
windows.h \
|
||||
@ -237,5 +237,5 @@ index 00000000000..575f34ccb58
|
||||
+import "inspectable.idl";
|
||||
+import "windows.foundation.idl";
|
||||
--
|
||||
2.29.2
|
||||
2.20.1
|
||||
|
||||
|
@ -1,31 +1,32 @@
|
||||
From b24e0e059c1734c3a9d287d0be1450c2b29cc259 Mon Sep 17 00:00:00 2001
|
||||
From ad17bb4a309b632d3075f427d46afa8870720184 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Mon, 12 Oct 2020 12:50:32 +0200
|
||||
Subject: [PATCH 2/9] windows.gaming.input: Implement IGamepadStatics stubs.
|
||||
Date: Sat, 20 Feb 2021 00:51:48 +0100
|
||||
Subject: [PATCH] windows.gaming.input: Implement IGamepadStatics stubs.
|
||||
|
||||
---
|
||||
.../windows.gaming.input_main.c | 127 +++++++++++++++++
|
||||
include/windows.foundation.idl | 11 ++
|
||||
.../windows.gaming.input_main.c | 125 +++++++++++++++++
|
||||
include/windows.foundation.collections.idl | 6 +
|
||||
include/windows.foundation.idl | 5 +
|
||||
include/windows.gaming.input.idl | 128 ++++++++++++++++++
|
||||
loader/wine.inf.in | 1 +
|
||||
4 files changed, 267 insertions(+)
|
||||
5 files changed, 265 insertions(+)
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index 2b6abc4dd84..33c260b27b3 100644
|
||||
index 2b6abc4dd84..a910f9bf40e 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -10,6 +10,10 @@
|
||||
@@ -10,7 +10,10 @@
|
||||
#include "initguid.h"
|
||||
#include "activation.h"
|
||||
|
||||
+#define WIDL_USING_IVECTORVIEW_1_WINDOWS_GAMING_INPUT_GAMEPAD
|
||||
+#define WIDL_USING_IEVENTHANDLER_1_WINDOWS_GAMING_INPUT_GAMEPAD
|
||||
+#define WIDL_USING_WINDOWS_GAMING_INPUT_IGAMEPAD
|
||||
+#define WIDL_USING_WINDOWS_GAMING_INPUT_IGAMEPADSTATICS
|
||||
+#define WIDL_using_Windows_Foundation
|
||||
+#define WIDL_using_Windows_Foundation_Collections
|
||||
#include "windows.foundation.h"
|
||||
+#define WIDL_using_Windows_Gaming_Input
|
||||
#include "windows.gaming.input.h"
|
||||
|
||||
@@ -27,6 +31,7 @@ static const char *debugstr_hstring(HSTRING hstr)
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(input);
|
||||
@@ -27,6 +30,7 @@ static const char *debugstr_hstring(HSTRING hstr)
|
||||
struct windows_gaming_input
|
||||
{
|
||||
IActivationFactory IActivationFactory_iface;
|
||||
@ -33,7 +34,7 @@ index 2b6abc4dd84..33c260b27b3 100644
|
||||
LONG ref;
|
||||
};
|
||||
|
||||
@@ -35,6 +40,120 @@ static inline struct windows_gaming_input *impl_from_IActivationFactory(IActivat
|
||||
@@ -35,6 +39,119 @@ static inline struct windows_gaming_input *impl_from_IActivationFactory(IActivat
|
||||
return CONTAINING_RECORD(iface, struct windows_gaming_input, IActivationFactory_iface);
|
||||
}
|
||||
|
||||
@ -129,7 +130,6 @@ index 2b6abc4dd84..33c260b27b3 100644
|
||||
+static HRESULT STDMETHODCALLTYPE gamepad_statics_get_Gamepads(
|
||||
+ IGamepadStatics *iface, IVectorView_Gamepad **value)
|
||||
+{
|
||||
+ struct windows_gaming_input *impl = impl_from_IGamepadStatics(iface);
|
||||
+ FIXME("iface %p, value %p stub!\n", iface, value);
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@ -154,7 +154,7 @@ index 2b6abc4dd84..33c260b27b3 100644
|
||||
static HRESULT STDMETHODCALLTYPE windows_gaming_input_QueryInterface(
|
||||
IActivationFactory *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -50,6 +169,13 @@ static HRESULT STDMETHODCALLTYPE windows_gaming_input_QueryInterface(
|
||||
@@ -50,6 +167,13 @@ static HRESULT STDMETHODCALLTYPE windows_gaming_input_QueryInterface(
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@ -168,7 +168,7 @@ index 2b6abc4dd84..33c260b27b3 100644
|
||||
FIXME("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(iid));
|
||||
*out = NULL;
|
||||
return E_NOINTERFACE;
|
||||
@@ -117,6 +243,7 @@ static const struct IActivationFactoryVtbl activation_factory_vtbl =
|
||||
@@ -117,6 +241,7 @@ static const struct IActivationFactoryVtbl activation_factory_vtbl =
|
||||
static struct windows_gaming_input windows_gaming_input =
|
||||
{
|
||||
{&activation_factory_vtbl},
|
||||
@ -176,13 +176,30 @@ index 2b6abc4dd84..33c260b27b3 100644
|
||||
0
|
||||
};
|
||||
|
||||
diff --git a/include/windows.foundation.collections.idl b/include/windows.foundation.collections.idl
|
||||
index ed05016b96d..ba860a1e82e 100644
|
||||
--- a/include/windows.foundation.collections.idl
|
||||
+++ b/include/windows.foundation.collections.idl
|
||||
@@ -47,6 +47,12 @@ cpp_quote("#endif")
|
||||
]
|
||||
delegate HRESULT EventHandler<T>([in] IInspectable *sender, [in] T args);
|
||||
|
||||
+ [
|
||||
+ contract(Windows.Foundation.FoundationContract, 1.0),
|
||||
+ uuid(9de1c534-6ae1-11e0-84e1-18a905bcc53f)
|
||||
+ ]
|
||||
+ delegate HRESULT TypedEventHandler<TSender, TArgs>([in] TSender sender, [in] TArgs args);
|
||||
+
|
||||
namespace Collections
|
||||
{
|
||||
[
|
||||
diff --git a/include/windows.foundation.idl b/include/windows.foundation.idl
|
||||
index 9b9b40897be..dd613b68b00 100644
|
||||
index 3c60278cf05..90bbc876339 100644
|
||||
--- a/include/windows.foundation.idl
|
||||
+++ b/include/windows.foundation.idl
|
||||
@@ -26,6 +26,11 @@ import "windowscontracts.idl";
|
||||
/* import "eventtoken.idl"; */
|
||||
@@ -27,6 +27,11 @@ import "windowscontracts.idl";
|
||||
/* import "ivectorchangedeventargs.idl"; */
|
||||
import "windows.foundation.collections.idl";
|
||||
|
||||
+typedef struct EventRegistrationToken
|
||||
+{
|
||||
@ -192,19 +209,6 @@ index 9b9b40897be..dd613b68b00 100644
|
||||
namespace Windows {
|
||||
namespace Foundation {
|
||||
[contract(Windows.Foundation.FoundationContract, 1.0)]
|
||||
@@ -119,6 +124,12 @@ namespace Windows {
|
||||
]
|
||||
delegate void EventHandler<T>([in] IInspectable *sender, [in] T args);
|
||||
|
||||
+ [
|
||||
+ contract(Windows.Foundation.FoundationContract, 1.0),
|
||||
+ uuid(9de1c534-6ae1-11e0-84e1-18a905bcc53f)
|
||||
+ ]
|
||||
+ delegate void TypedEventHandler<TSender, TResult>([in] TSender sender, [in] TResult args);
|
||||
+
|
||||
namespace Collections
|
||||
{
|
||||
[
|
||||
diff --git a/include/windows.gaming.input.idl b/include/windows.gaming.input.idl
|
||||
index 575f34ccb58..b5af4e24a66 100644
|
||||
--- a/include/windows.gaming.input.idl
|
||||
@ -342,7 +346,7 @@ index 575f34ccb58..b5af4e24a66 100644
|
||||
+ }
|
||||
+}
|
||||
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
|
||||
index 157b146a857..9d738859b81 100644
|
||||
index db816327a51..79a7b2c0503 100644
|
||||
--- a/loader/wine.inf.in
|
||||
+++ b/loader/wine.inf.in
|
||||
@@ -713,6 +713,7 @@ HKLM,%MciExtStr%,"wmx",,"MPEGVideo"
|
||||
@ -354,5 +358,5 @@ index 157b146a857..9d738859b81 100644
|
||||
HKLM,Software\Borland\Database Engine\Settings\SYSTEM\INIT,SHAREDMEMLOCATION,,9000
|
||||
HKLM,Software\Clients\Mail,,2,"Native Mail Client"
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
From 39cabcb0a109f9705740120186858defe1c1cf2c Mon Sep 17 00:00:00 2001
|
||||
From 17818a1676a5b177795d6509314f5d75f11b6def Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 17:58:14 +0200
|
||||
Subject: [PATCH 3/9] windows.gaming.input: Implement IGamepadStatics::Gamepads
|
||||
Subject: [PATCH] windows.gaming.input: Implement IGamepadStatics::Gamepads
|
||||
stubs.
|
||||
|
||||
---
|
||||
.../windows.gaming.input_main.c | 112 +++++++++++++++++-
|
||||
1 file changed, 111 insertions(+), 1 deletion(-)
|
||||
.../windows.gaming.input_main.c | 113 +++++++++++++++++-
|
||||
1 file changed, 112 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index 33c260b27b3..a7d9a89244b 100644
|
||||
index a910f9bf40e..444eb687175 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -32,6 +32,7 @@ struct windows_gaming_input
|
||||
@@ -31,6 +31,7 @@ struct windows_gaming_input
|
||||
{
|
||||
IActivationFactory IActivationFactory_iface;
|
||||
IGamepadStatics IGamepadStatics_iface;
|
||||
@ -20,7 +20,7 @@ index 33c260b27b3..a7d9a89244b 100644
|
||||
LONG ref;
|
||||
};
|
||||
|
||||
@@ -45,6 +46,113 @@ static inline struct windows_gaming_input *impl_from_IGamepadStatics(IGamepadSta
|
||||
@@ -44,6 +45,113 @@ static inline struct windows_gaming_input *impl_from_IGamepadStatics(IGamepadSta
|
||||
return CONTAINING_RECORD(iface, struct windows_gaming_input, IGamepadStatics_iface);
|
||||
}
|
||||
|
||||
@ -134,9 +134,11 @@ index 33c260b27b3..a7d9a89244b 100644
|
||||
static HRESULT STDMETHODCALLTYPE gamepad_statics_QueryInterface(
|
||||
IGamepadStatics *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -134,7 +242,8 @@ static HRESULT STDMETHODCALLTYPE gamepad_statics_get_Gamepads(
|
||||
@@ -131,8 +239,10 @@ static HRESULT STDMETHODCALLTYPE gamepad_statics_remove_GamepadRemoved(
|
||||
static HRESULT STDMETHODCALLTYPE gamepad_statics_get_Gamepads(
|
||||
IGamepadStatics *iface, IVectorView_Gamepad **value)
|
||||
{
|
||||
struct windows_gaming_input *impl = impl_from_IGamepadStatics(iface);
|
||||
+ struct windows_gaming_input *impl = impl_from_IGamepadStatics(iface);
|
||||
FIXME("iface %p, value %p stub!\n", iface, value);
|
||||
- return E_NOTIMPL;
|
||||
+ *value = &impl->IVectorView_Gamepad_iface;
|
||||
@ -144,7 +146,7 @@ index 33c260b27b3..a7d9a89244b 100644
|
||||
}
|
||||
|
||||
static const struct IGamepadStaticsVtbl gamepad_statics_vtbl =
|
||||
@@ -244,6 +353,7 @@ static struct windows_gaming_input windows_gaming_input =
|
||||
@@ -242,6 +352,7 @@ static struct windows_gaming_input windows_gaming_input =
|
||||
{
|
||||
{&activation_factory_vtbl},
|
||||
{&gamepad_statics_vtbl},
|
||||
@ -153,5 +155,5 @@ index 33c260b27b3..a7d9a89244b 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
From bedffa28b0137a32106c3c126e842c9469555d98 Mon Sep 17 00:00:00 2001
|
||||
From e6de4311bc082beedabf8aec5d43ab03c009e0b5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 17:59:51 +0200
|
||||
Subject: [PATCH 4/9] windows.gaming.input: Fake empty
|
||||
IGamepadStatics::Gamepads vector.
|
||||
Subject: [PATCH] windows.gaming.input: Fake empty IGamepadStatics::Gamepads
|
||||
vector.
|
||||
|
||||
---
|
||||
.../windows.gaming.input_main.c | 11 +++++++----
|
||||
1 file changed, 7 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index a7d9a89244b..7d81e22ddd6 100644
|
||||
index 444eb687175..0df7927a57b 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -113,28 +113,31 @@ static HRESULT STDMETHODCALLTYPE vector_view_gamepad_GetAt(
|
||||
@@ -112,28 +112,31 @@ static HRESULT STDMETHODCALLTYPE vector_view_gamepad_GetAt(
|
||||
IVectorView_Gamepad *iface, ULONG index, IGamepad **value)
|
||||
{
|
||||
FIXME("iface %p, index %#x, value %p stub!\n", iface, index, value);
|
||||
@ -49,5 +49,5 @@ index a7d9a89244b..7d81e22ddd6 100644
|
||||
|
||||
static const struct IVectorView_GamepadVtbl vector_view_gamepad_vtbl =
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,17 +1,17 @@
|
||||
From 3e2a77be328b8fe724256ffa1ebd5bae72c27a70 Mon Sep 17 00:00:00 2001
|
||||
From 9ea954d5306aa3240584c86fff56972b718fd605 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 17:57:05 +0200
|
||||
Subject: [PATCH 5/9] windows.gaming.input: Fake IEventHandler_Gamepad support.
|
||||
Subject: [PATCH] windows.gaming.input: Fake IEventHandler_Gamepad support.
|
||||
|
||||
---
|
||||
dlls/windows.gaming.input.dll/windows.gaming.input_main.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index 7d81e22ddd6..dad5a196214 100644
|
||||
index 0df7927a57b..dec9d39e7a3 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -216,28 +216,28 @@ static HRESULT STDMETHODCALLTYPE gamepad_statics_add_GamepadAdded(
|
||||
@@ -215,28 +215,28 @@ static HRESULT STDMETHODCALLTYPE gamepad_statics_add_GamepadAdded(
|
||||
IGamepadStatics *iface, IEventHandler_Gamepad *value, EventRegistrationToken* token)
|
||||
{
|
||||
FIXME("iface %p, value %p, token %p stub!\n", iface, value, token);
|
||||
@ -45,5 +45,5 @@ index 7d81e22ddd6..dad5a196214 100644
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE gamepad_statics_get_Gamepads(
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,44 +1,29 @@
|
||||
From 3d6807e5da2a30f33b7517a3d3a3457c53a4ebc7 Mon Sep 17 00:00:00 2001
|
||||
From b875ea79f656a5192b8214f2598cd62866b9fbee Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Mon, 12 Oct 2020 12:50:32 +0200
|
||||
Subject: [PATCH] windows.gaming.input: Implement IRawGameControllerStatics
|
||||
stubs.
|
||||
|
||||
---
|
||||
.../windows.gaming.input_main.c | 142 +++++++++++++
|
||||
.../windows.gaming.input_main.c | 130 ++++++++++++
|
||||
include/Makefile.in | 3 +
|
||||
include/asyncinfo.idl | 45 ++++
|
||||
include/windows.foundation.idl | 23 ++-
|
||||
include/windows.foundation.collections.idl | 21 +-
|
||||
include/windows.foundation.idl | 11 +-
|
||||
.../windows.gaming.input.forcefeedback.idl | 111 ++++++++++
|
||||
include/windows.gaming.input.idl | 195 ++++++++++++++++++
|
||||
include/windows.system.idl | 70 +++++++
|
||||
loader/wine.inf.in | 1 +
|
||||
8 files changed, 589 insertions(+), 1 deletion(-)
|
||||
9 files changed, 585 insertions(+), 2 deletions(-)
|
||||
create mode 100644 include/asyncinfo.idl
|
||||
create mode 100644 include/windows.gaming.input.forcefeedback.idl
|
||||
create mode 100644 include/windows.system.idl
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index dad5a196214..078043b0963 100644
|
||||
index dec9d39e7a3..1a40a8ddc35 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -11,9 +11,15 @@
|
||||
#include "activation.h"
|
||||
|
||||
#define WIDL_USING_IVECTORVIEW_1_WINDOWS_GAMING_INPUT_GAMEPAD
|
||||
+#define WIDL_USING_IVECTORVIEW_1_WINDOWS_GAMING_INPUT_RAWGAMECONTROLLER
|
||||
#define WIDL_USING_IEVENTHANDLER_1_WINDOWS_GAMING_INPUT_GAMEPAD
|
||||
+#define WIDL_USING_IEVENTHANDLER_1_WINDOWS_GAMING_INPUT_RAWGAMECONTROLLER
|
||||
#define WIDL_USING_WINDOWS_GAMING_INPUT_IGAMEPAD
|
||||
#define WIDL_USING_WINDOWS_GAMING_INPUT_IGAMEPADSTATICS
|
||||
+#define WIDL_USING_WINDOWS_GAMING_INPUT_IRAWGAMECONTROLLERSTATICS
|
||||
+#define WIDL_USING_WINDOWS_GAMING_INPUT_IGAMECONTROLLER
|
||||
+#define WIDL_USING_WINDOWS_GAMING_INPUT_IRAWGAMECONTROLLER
|
||||
+#define WIDL_USING_WINDOWS_GAMING_INPUT_RAWGAMECONTROLLER
|
||||
#include "windows.foundation.h"
|
||||
#include "windows.gaming.input.h"
|
||||
|
||||
@@ -32,6 +38,7 @@ struct windows_gaming_input
|
||||
@@ -31,6 +31,7 @@ struct windows_gaming_input
|
||||
{
|
||||
IActivationFactory IActivationFactory_iface;
|
||||
IGamepadStatics IGamepadStatics_iface;
|
||||
@ -46,7 +31,7 @@ index dad5a196214..078043b0963 100644
|
||||
IVectorView_Gamepad IVectorView_Gamepad_iface;
|
||||
LONG ref;
|
||||
};
|
||||
@@ -46,11 +53,21 @@ static inline struct windows_gaming_input *impl_from_IGamepadStatics(IGamepadSta
|
||||
@@ -45,6 +46,11 @@ static inline struct windows_gaming_input *impl_from_IGamepadStatics(IGamepadSta
|
||||
return CONTAINING_RECORD(iface, struct windows_gaming_input, IGamepadStatics_iface);
|
||||
}
|
||||
|
||||
@ -58,17 +43,7 @@ index dad5a196214..078043b0963 100644
|
||||
static inline struct windows_gaming_input *impl_from_IVectorView_Gamepad(IVectorView_Gamepad *iface)
|
||||
{
|
||||
return CONTAINING_RECORD(iface, struct windows_gaming_input, IVectorView_Gamepad_iface);
|
||||
}
|
||||
|
||||
+static inline struct windows_gaming_input *impl_from_IVectorView_RawGameController(IVectorView_RawGameController *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, struct windows_gaming_input, IVectorView_RawGameController_iface);
|
||||
+}
|
||||
+
|
||||
static HRESULT STDMETHODCALLTYPE vector_view_gamepad_QueryInterface(
|
||||
IVectorView_Gamepad *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -266,6 +283,123 @@ static const struct IGamepadStaticsVtbl gamepad_statics_vtbl =
|
||||
@@ -265,6 +271,122 @@ static const struct IGamepadStaticsVtbl gamepad_statics_vtbl =
|
||||
gamepad_statics_get_Gamepads,
|
||||
};
|
||||
|
||||
@ -159,7 +134,6 @@ index dad5a196214..078043b0963 100644
|
||||
+static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_get_RawGameControllers(
|
||||
+ IRawGameControllerStatics *iface, IVectorView_RawGameController **value)
|
||||
+{
|
||||
+ struct windows_gaming_input *impl = impl_from_IRawGameControllerStatics(iface);
|
||||
+ FIXME("iface %p, value %p stub!\n", iface, value);
|
||||
+ return E_NOTIMPL;
|
||||
+}
|
||||
@ -192,7 +166,7 @@ index dad5a196214..078043b0963 100644
|
||||
static HRESULT STDMETHODCALLTYPE windows_gaming_input_QueryInterface(
|
||||
IActivationFactory *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -288,6 +422,13 @@ static HRESULT STDMETHODCALLTYPE windows_gaming_input_QueryInterface(
|
||||
@@ -287,6 +409,13 @@ static HRESULT STDMETHODCALLTYPE windows_gaming_input_QueryInterface(
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@ -206,7 +180,7 @@ index dad5a196214..078043b0963 100644
|
||||
FIXME("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(iid));
|
||||
*out = NULL;
|
||||
return E_NOINTERFACE;
|
||||
@@ -356,6 +497,7 @@ static struct windows_gaming_input windows_gaming_input =
|
||||
@@ -355,6 +484,7 @@ static struct windows_gaming_input windows_gaming_input =
|
||||
{
|
||||
{&activation_factory_vtbl},
|
||||
{&gamepad_statics_vtbl},
|
||||
@ -215,10 +189,10 @@ index dad5a196214..078043b0963 100644
|
||||
0
|
||||
};
|
||||
diff --git a/include/Makefile.in b/include/Makefile.in
|
||||
index 24cc64a3407..2f68c258f1b 100644
|
||||
index ac403a78a4d..90e9b660633 100644
|
||||
--- a/include/Makefile.in
|
||||
+++ b/include/Makefile.in
|
||||
@@ -21,6 +21,7 @@ SOURCES = \
|
||||
@@ -20,6 +20,7 @@ SOURCES = \
|
||||
appmodel.h \
|
||||
asferr.h \
|
||||
asptlb.idl \
|
||||
@ -226,8 +200,8 @@ index 24cc64a3407..2f68c258f1b 100644
|
||||
asynot.idl \
|
||||
asysta.idl \
|
||||
atlbase.h \
|
||||
@@ -754,8 +755,10 @@ SOURCES = \
|
||||
windns.h \
|
||||
@@ -749,8 +750,10 @@ SOURCES = \
|
||||
windows.foundation.collections.idl \
|
||||
windows.foundation.idl \
|
||||
windows.gaming.input.idl \
|
||||
+ windows.gaming.input.forcefeedback.idl \
|
||||
@ -288,10 +262,10 @@ index 00000000000..61784bc65ac
|
||||
+ HRESULT Cancel();
|
||||
+ HRESULT Close();
|
||||
+}
|
||||
diff --git a/include/windows.foundation.idl b/include/windows.foundation.idl
|
||||
index dd613b68b00..35ce1d68322 100644
|
||||
--- a/include/windows.foundation.idl
|
||||
+++ b/include/windows.foundation.idl
|
||||
diff --git a/include/windows.foundation.collections.idl b/include/windows.foundation.collections.idl
|
||||
index ba860a1e82e..2562d34791f 100644
|
||||
--- a/include/windows.foundation.collections.idl
|
||||
+++ b/include/windows.foundation.collections.idl
|
||||
@@ -21,7 +21,7 @@
|
||||
#endif
|
||||
|
||||
@ -300,10 +274,10 @@ index dd613b68b00..35ce1d68322 100644
|
||||
+import "asyncinfo.idl";
|
||||
import "windowscontracts.idl";
|
||||
/* import "eventtoken.idl"; */
|
||||
/* import "ivectorchangedeventargs.idl"; */
|
||||
@@ -130,6 +130,25 @@ namespace Windows {
|
||||
|
||||
@@ -53,6 +53,25 @@ cpp_quote("#endif")
|
||||
]
|
||||
delegate void TypedEventHandler<TSender, TResult>([in] TSender sender, [in] TResult args);
|
||||
delegate HRESULT TypedEventHandler<TSender, TArgs>([in] TSender sender, [in] TArgs args);
|
||||
|
||||
+ interface IAsyncOperation<TResult>;
|
||||
+
|
||||
@ -311,7 +285,7 @@ index dd613b68b00..35ce1d68322 100644
|
||||
+ contract(Windows.Foundation.FoundationContract, 1.0),
|
||||
+ uuid(fcdcf02c-e5d8-4478-915a-4d90b74b83a5)
|
||||
+ ]
|
||||
+ delegate void AsyncOperationCompletedHandler<TResult>([in] IAsyncOperation<TResult> *info, [in] AsyncStatus status);
|
||||
+ delegate HRESULT AsyncOperationCompletedHandler<TResult>([in] IAsyncOperation<TResult> *info, [in] AsyncStatus status);
|
||||
+
|
||||
+ [
|
||||
+ contract(Windows.Foundation.FoundationContract, 1.0),
|
||||
@ -327,15 +301,32 @@ index dd613b68b00..35ce1d68322 100644
|
||||
namespace Collections
|
||||
{
|
||||
[
|
||||
@@ -173,6 +192,8 @@ namespace Windows {
|
||||
namespace Foundation {
|
||||
declare {
|
||||
interface Windows.Foundation.Collections.IVectorView<HSTRING>;
|
||||
+ interface Windows.Foundation.AsyncOperationCompletedHandler<boolean>;
|
||||
+ interface Windows.Foundation.IAsyncOperation<boolean>;
|
||||
diff --git a/include/windows.foundation.idl b/include/windows.foundation.idl
|
||||
index 90bbc876339..2bed3d54cda 100644
|
||||
--- a/include/windows.foundation.idl
|
||||
+++ b/include/windows.foundation.idl
|
||||
@@ -21,7 +21,7 @@
|
||||
#endif
|
||||
|
||||
import "inspectable.idl";
|
||||
-/* import "asyncinfo.idl"; */
|
||||
+import "asyncinfo.idl";
|
||||
import "windowscontracts.idl";
|
||||
/* import "eventtoken.idl"; */
|
||||
/* import "ivectorchangedeventargs.idl"; */
|
||||
@@ -119,3 +119,12 @@ namespace Windows {
|
||||
}
|
||||
}
|
||||
}
|
||||
+
|
||||
+namespace Windows {
|
||||
+ namespace Foundation {
|
||||
+ declare {
|
||||
+ interface Windows.Foundation.AsyncOperationCompletedHandler<boolean>;
|
||||
+ interface Windows.Foundation.IAsyncOperation<boolean>;
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
diff --git a/include/windows.gaming.input.forcefeedback.idl b/include/windows.gaming.input.forcefeedback.idl
|
||||
new file mode 100644
|
||||
index 00000000000..fa9da2f7656
|
||||
@ -792,10 +783,10 @@ index 00000000000..824441eaff9
|
||||
+ }
|
||||
+}
|
||||
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
|
||||
index 8d65bfb72d1..9e02369f341 100644
|
||||
index 79a7b2c0503..71c6cac0366 100644
|
||||
--- a/loader/wine.inf.in
|
||||
+++ b/loader/wine.inf.in
|
||||
@@ -718,6 +718,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo"
|
||||
@@ -714,6 +714,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo"
|
||||
|
||||
[Misc]
|
||||
HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.Input.Gamepad,"DllPath",2,"Windows.Gaming.Input.dll"
|
||||
@ -804,5 +795,5 @@ index 8d65bfb72d1..9e02369f341 100644
|
||||
HKLM,Software\Borland\Database Engine\Settings\SYSTEM\INIT,SHAREDMEMLOCATION,,9000
|
||||
HKLM,Software\Clients\Mail,,2,"Native Mail Client"
|
||||
--
|
||||
2.29.2
|
||||
2.20.1
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
From 655ea5abd545db3990caf7c79909cb4993b52cef Mon Sep 17 00:00:00 2001
|
||||
From 0386aec8078e9f75e1841db486a187bc9d07249d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 18:02:39 +0200
|
||||
Subject: [PATCH 7/9] windows.gaming.input: Implement
|
||||
Subject: [PATCH] windows.gaming.input: Implement
|
||||
IRawGameControllerStatics::RawGameControllers stubs.
|
||||
|
||||
---
|
||||
.../windows.gaming.input_main.c | 107 +++++++++++++++++-
|
||||
1 file changed, 106 insertions(+), 1 deletion(-)
|
||||
.../windows.gaming.input_main.c | 113 +++++++++++++++++-
|
||||
1 file changed, 112 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index 078043b0963..c73f08b248d 100644
|
||||
index 1a40a8ddc35..b56a2a5962f 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -40,6 +40,7 @@ struct windows_gaming_input
|
||||
@@ -33,6 +33,7 @@ struct windows_gaming_input
|
||||
IGamepadStatics IGamepadStatics_iface;
|
||||
IRawGameControllerStatics IRawGameControllerStatics_iface;
|
||||
IVectorView_Gamepad IVectorView_Gamepad_iface;
|
||||
@ -20,7 +20,19 @@ index 078043b0963..c73f08b248d 100644
|
||||
LONG ref;
|
||||
};
|
||||
|
||||
@@ -173,6 +174,108 @@ static const struct IVectorView_GamepadVtbl vector_view_gamepad_vtbl =
|
||||
@@ -56,6 +57,11 @@ static inline struct windows_gaming_input *impl_from_IVectorView_Gamepad(IVector
|
||||
return CONTAINING_RECORD(iface, struct windows_gaming_input, IVectorView_Gamepad_iface);
|
||||
}
|
||||
|
||||
+static inline struct windows_gaming_input *impl_from_IVectorView_RawGameController(IVectorView_RawGameController *iface)
|
||||
+{
|
||||
+ return CONTAINING_RECORD(iface, struct windows_gaming_input, IVectorView_RawGameController_iface);
|
||||
+}
|
||||
+
|
||||
static HRESULT STDMETHODCALLTYPE vector_view_gamepad_QueryInterface(
|
||||
IVectorView_Gamepad *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -161,6 +167,108 @@ static const struct IVectorView_GamepadVtbl vector_view_gamepad_vtbl =
|
||||
vector_view_gamepad_GetMany,
|
||||
};
|
||||
|
||||
@ -129,9 +141,11 @@ index 078043b0963..c73f08b248d 100644
|
||||
static HRESULT STDMETHODCALLTYPE gamepad_statics_QueryInterface(
|
||||
IGamepadStatics *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -372,7 +475,8 @@ static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_get_RawGameControll
|
||||
@@ -358,8 +466,10 @@ static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_remove_RawGameContr
|
||||
static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_get_RawGameControllers(
|
||||
IRawGameControllerStatics *iface, IVectorView_RawGameController **value)
|
||||
{
|
||||
struct windows_gaming_input *impl = impl_from_IRawGameControllerStatics(iface);
|
||||
+ struct windows_gaming_input *impl = impl_from_IRawGameControllerStatics(iface);
|
||||
FIXME("iface %p, value %p stub!\n", iface, value);
|
||||
- return E_NOTIMPL;
|
||||
+ *value = &impl->IVectorView_RawGameController_iface;
|
||||
@ -139,7 +153,7 @@ index 078043b0963..c73f08b248d 100644
|
||||
}
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_FromGameController(
|
||||
@@ -499,6 +603,7 @@ static struct windows_gaming_input windows_gaming_input =
|
||||
@@ -486,6 +596,7 @@ static struct windows_gaming_input windows_gaming_input =
|
||||
{&gamepad_statics_vtbl},
|
||||
{&raw_game_controller_statics_vtbl},
|
||||
{&vector_view_gamepad_vtbl},
|
||||
@ -148,5 +162,5 @@ index 078043b0963..c73f08b248d 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 66d48431b91c17e3f87246e2c2243b2c2b5b30fb Mon Sep 17 00:00:00 2001
|
||||
From 5350d7a4983151aef2435687b43017a78026d3c9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 18:03:24 +0200
|
||||
Subject: [PATCH 8/9] windows.gaming.input: Fake empty
|
||||
Subject: [PATCH] windows.gaming.input: Fake empty
|
||||
IRawGameControllerStatics::RawGameControllers vector.
|
||||
|
||||
---
|
||||
@ -9,10 +9,10 @@ Subject: [PATCH 8/9] windows.gaming.input: Fake empty
|
||||
1 file changed, 7 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index c73f08b248d..53f0b7e61fd 100644
|
||||
index b56a2a5962f..813668a32da 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -236,28 +236,31 @@ static HRESULT STDMETHODCALLTYPE vector_view_raw_game_controller_GetAt(
|
||||
@@ -229,28 +229,31 @@ static HRESULT STDMETHODCALLTYPE vector_view_raw_game_controller_GetAt(
|
||||
IVectorView_RawGameController *iface, ULONG index, IRawGameController **value)
|
||||
{
|
||||
FIXME("iface %p, index %#x, value %p stub!\n", iface, index, value);
|
||||
@ -49,5 +49,5 @@ index c73f08b248d..53f0b7e61fd 100644
|
||||
|
||||
static const struct IVectorView_RawGameControllerVtbl vector_view_raw_game_controller_vtbl =
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
From 47c3fa730f9607b5907747a143cf0458a2a76c35 Mon Sep 17 00:00:00 2001
|
||||
From 0f7f9030a46d09da6d75c36a46b7854fb0128a46 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 18:03:42 +0200
|
||||
Subject: [PATCH 9/9] windows.gaming.input: Fake
|
||||
IEventHandler_RawGameController support.
|
||||
Subject: [PATCH] windows.gaming.input: Fake IEventHandler_RawGameController
|
||||
support.
|
||||
|
||||
---
|
||||
dlls/windows.gaming.input.dll/windows.gaming.input_main.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
index 53f0b7e61fd..a9d09d4a446 100644
|
||||
index 813668a32da..6274a9144dc 100644
|
||||
--- a/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
+++ b/dlls/windows.gaming.input.dll/windows.gaming.input_main.c
|
||||
@@ -449,28 +449,28 @@ static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_add_RawGameControll
|
||||
@@ -442,28 +442,28 @@ static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_add_RawGameControll
|
||||
IRawGameControllerStatics *iface, IEventHandler_RawGameController *value, EventRegistrationToken* token)
|
||||
{
|
||||
FIXME("iface %p, value %p, token %p stub!\n", iface, value, token);
|
||||
@ -46,5 +46,5 @@ index 53f0b7e61fd..a9d09d4a446 100644
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE raw_game_controller_statics_get_RawGameControllers(
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -6,5 +6,3 @@
|
||||
# To support Death Stranding
|
||||
Fixes: [49756] windows.gaming.input: New DLL
|
||||
Depends: windows.media.speech.dll
|
||||
# In the process of upstreaming.
|
||||
Disabled: true
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 06487c40a8cc1cb928992d8873ed6e778d9e15b9 Mon Sep 17 00:00:00 2001
|
||||
From 5f5660930fa0579352bdf3bbcf85b80bfbaf0b33 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Fri, 28 Aug 2020 15:59:50 +0200
|
||||
Subject: [PATCH] windows.globalization: Add stub dll.
|
||||
@ -18,10 +18,10 @@ Subject: [PATCH] windows.globalization: Add stub dll.
|
||||
create mode 100644 include/windows.globalization.idl
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index bdcfe84f87d..4654e994e29 100644
|
||||
index 405d1a6ecc4..e291201a541 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3851,6 +3851,7 @@ WINE_CONFIG_MAKEFILE(dlls/win87em.dll16,enable_win16)
|
||||
@@ -3797,6 +3797,7 @@ WINE_CONFIG_MAKEFILE(dlls/win87em.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/winaspi.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/windebug.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/windows.gaming.input.dll)
|
||||
@ -197,10 +197,10 @@ index 00000000000..840ce08c0c5
|
||||
+ return S_OK;
|
||||
+}
|
||||
diff --git a/include/Makefile.in b/include/Makefile.in
|
||||
index 2f68c258f1b..69837a1ca97 100644
|
||||
index 90e9b660633..95013040926 100644
|
||||
--- a/include/Makefile.in
|
||||
+++ b/include/Makefile.in
|
||||
@@ -756,6 +756,7 @@ SOURCES = \
|
||||
@@ -751,6 +751,7 @@ SOURCES = \
|
||||
windows.foundation.idl \
|
||||
windows.gaming.input.idl \
|
||||
windows.gaming.input.forcefeedback.idl \
|
||||
@ -242,10 +242,10 @@ index 00000000000..c3f80999af5
|
||||
+namespace Windows {
|
||||
+}
|
||||
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
|
||||
index 9e02369f341..06bb1e68c24 100644
|
||||
index 71c6cac0366..ba7b1ee08c9 100644
|
||||
--- a/loader/wine.inf.in
|
||||
+++ b/loader/wine.inf.in
|
||||
@@ -720,6 +720,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo"
|
||||
@@ -716,6 +716,7 @@ HKLM,%MciExtStr%,"wvx",,"MPEGVideo"
|
||||
HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.Input.Gamepad,"DllPath",2,"Windows.Gaming.Input.dll"
|
||||
HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.Input.RawGameController,"DllPath",2,"Windows.Gaming.Input.dll"
|
||||
HKLM,Software\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Media.SpeechSynthesis.SpeechSynthesizer,"DllPath",2,"Windows.Media.Speech.dll"
|
||||
@ -254,5 +254,5 @@ index 9e02369f341..06bb1e68c24 100644
|
||||
HKLM,Software\Clients\Mail,,2,"Native Mail Client"
|
||||
HKLM,Software\Clients\Mail\Native Mail Client,,2,"Native Mail Client"
|
||||
--
|
||||
2.29.2
|
||||
2.20.1
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 7892b025109656123c7253739c9c1b0f0f0b507c Mon Sep 17 00:00:00 2001
|
||||
From f184cbcf4416e8a5365bd6c63cc5649e9e53393c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 18:11:35 +0200
|
||||
Subject: [PATCH] windows.globalization: Implement
|
||||
@ -6,11 +6,12 @@ Subject: [PATCH] windows.globalization: Implement
|
||||
|
||||
---
|
||||
dlls/windows.globalization.dll/Makefile.in | 2 +-
|
||||
.../windows.globalization_main.c | 133 ++++++++++++++++++
|
||||
.../windows.globalization_main.c | 134 ++++++++++++++++++
|
||||
include/Makefile.in | 1 +
|
||||
include/windows.foundation.idl | 1 +
|
||||
include/windows.globalization.idl | 20 ++-
|
||||
include/windows.system.userprofile.idl | 56 ++++++++
|
||||
5 files changed, 210 insertions(+), 2 deletions(-)
|
||||
6 files changed, 212 insertions(+), 2 deletions(-)
|
||||
create mode 100644 include/windows.system.userprofile.idl
|
||||
|
||||
diff --git a/dlls/windows.globalization.dll/Makefile.in b/dlls/windows.globalization.dll/Makefile.in
|
||||
@ -25,20 +26,23 @@ index 25dc1cac3e6..7ddd97aef52 100644
|
||||
C_SRCS = \
|
||||
windows.globalization_main.c
|
||||
diff --git a/dlls/windows.globalization.dll/windows.globalization_main.c b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
index 840ce08c0c5..97afc941219 100644
|
||||
index 840ce08c0c5..5bb0b46866d 100644
|
||||
--- a/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
+++ b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
@@ -10,6 +10,9 @@
|
||||
@@ -10,8 +10,12 @@
|
||||
#include "initguid.h"
|
||||
#include "activation.h"
|
||||
|
||||
+#define WIDL_USING_IVECTORVIEW_1_HSTRING
|
||||
+#define WIDL_USING_WINDOWS_GLOBALIZATION_DAYOFWEEK
|
||||
+#define WIDL_USING_WINDOWS_SYSTEM_USERPROFILE_IGLOBALIZATIONPREFERENCESSTATICS
|
||||
+#define WIDL_using_Windows_Foundation
|
||||
+#define WIDL_using_Windows_Foundation_Collections
|
||||
#include "windows.foundation.h"
|
||||
+#define WIDL_using_Windows_Globalization
|
||||
#include "windows.globalization.h"
|
||||
+#define WIDL_using_Windows_System_UserProfile
|
||||
#include "windows.system.userprofile.h"
|
||||
@@ -28,6 +31,7 @@ static const char *debugstr_hstring(HSTRING hstr)
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(locale);
|
||||
@@ -28,6 +32,7 @@ static const char *debugstr_hstring(HSTRING hstr)
|
||||
struct windows_globalization
|
||||
{
|
||||
IActivationFactory IActivationFactory_iface;
|
||||
@ -46,7 +50,7 @@ index 840ce08c0c5..97afc941219 100644
|
||||
LONG ref;
|
||||
};
|
||||
|
||||
@@ -36,6 +40,127 @@ static inline struct windows_globalization *impl_from_IActivationFactory(IActiva
|
||||
@@ -36,6 +41,127 @@ static inline struct windows_globalization *impl_from_IActivationFactory(IActiva
|
||||
return CONTAINING_RECORD(iface, struct windows_globalization, IActivationFactory_iface);
|
||||
}
|
||||
|
||||
@ -174,7 +178,7 @@ index 840ce08c0c5..97afc941219 100644
|
||||
static HRESULT STDMETHODCALLTYPE windows_globalization_QueryInterface(
|
||||
IActivationFactory *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -51,6 +176,13 @@ static HRESULT STDMETHODCALLTYPE windows_globalization_QueryInterface(
|
||||
@@ -51,6 +177,13 @@ static HRESULT STDMETHODCALLTYPE windows_globalization_QueryInterface(
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@ -188,7 +192,7 @@ index 840ce08c0c5..97afc941219 100644
|
||||
FIXME("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(iid));
|
||||
*out = NULL;
|
||||
return E_NOINTERFACE;
|
||||
@@ -118,6 +250,7 @@ static const struct IActivationFactoryVtbl activation_factory_vtbl =
|
||||
@@ -118,6 +251,7 @@ static const struct IActivationFactoryVtbl activation_factory_vtbl =
|
||||
static struct windows_globalization windows_globalization =
|
||||
{
|
||||
{&activation_factory_vtbl},
|
||||
@ -197,10 +201,10 @@ index 840ce08c0c5..97afc941219 100644
|
||||
};
|
||||
|
||||
diff --git a/include/Makefile.in b/include/Makefile.in
|
||||
index 69837a1ca97..d6ae2988493 100644
|
||||
index 95013040926..958530388b4 100644
|
||||
--- a/include/Makefile.in
|
||||
+++ b/include/Makefile.in
|
||||
@@ -760,6 +760,7 @@ SOURCES = \
|
||||
@@ -755,6 +755,7 @@ SOURCES = \
|
||||
windows.h \
|
||||
windows.media.speechsynthesis.idl \
|
||||
windows.system.idl \
|
||||
@ -208,6 +212,18 @@ index 69837a1ca97..d6ae2988493 100644
|
||||
windowscontracts.idl \
|
||||
windowsx.h \
|
||||
wine/debug.h \
|
||||
diff --git a/include/windows.foundation.idl b/include/windows.foundation.idl
|
||||
index 2bed3d54cda..0d53fa6f407 100644
|
||||
--- a/include/windows.foundation.idl
|
||||
+++ b/include/windows.foundation.idl
|
||||
@@ -125,6 +125,7 @@ namespace Windows {
|
||||
declare {
|
||||
interface Windows.Foundation.AsyncOperationCompletedHandler<boolean>;
|
||||
interface Windows.Foundation.IAsyncOperation<boolean>;
|
||||
+ interface Windows.Foundation.Collections.IVectorView<HSTRING>;
|
||||
}
|
||||
}
|
||||
}
|
||||
diff --git a/include/windows.globalization.idl b/include/windows.globalization.idl
|
||||
index c3f80999af5..ac76455b847 100644
|
||||
--- a/include/windows.globalization.idl
|
||||
@ -303,5 +319,5 @@ index 00000000000..e2676f9dd89
|
||||
+ }
|
||||
+}
|
||||
--
|
||||
2.29.2
|
||||
2.20.1
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 26dc75ab2eb7ac9f8c21da1d0f2be70fe2430460 Mon Sep 17 00:00:00 2001
|
||||
From 4508defd1c20893e534824ea07821912745175a8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 18:19:17 +0200
|
||||
Subject: [PATCH 3/5] windows.globalization: Implement
|
||||
Subject: [PATCH] windows.globalization: Implement
|
||||
IGlobalizationPreferencesStatics::HomeGeographicRegion semi-stub.
|
||||
|
||||
Returning the system default country.
|
||||
@ -10,10 +10,10 @@ Returning the system default country.
|
||||
1 file changed, 16 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.globalization.dll/windows.globalization_main.c b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
index 97afc941219..6d17317677e 100644
|
||||
index 5bb0b46866d..83e269bead6 100644
|
||||
--- a/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
+++ b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
@@ -132,8 +132,22 @@ static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Languages(IGlobal
|
||||
@@ -133,8 +133,22 @@ static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Languages(IGlobal
|
||||
static HRESULT STDMETHODCALLTYPE globalization_preferences_get_HomeGeographicRegion(IGlobalizationPreferencesStatics *iface,
|
||||
HSTRING* value)
|
||||
{
|
||||
@ -39,5 +39,5 @@ index 97afc941219..6d17317677e 100644
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE globalization_preferences_get_WeekStartsOn(IGlobalizationPreferencesStatics *iface,
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 0eaa05ab9ae489154aefe7241b3189bb57d0af40 Mon Sep 17 00:00:00 2001
|
||||
From d9b955f1d36e9356fdf4d069ca2c48269ba3fd9e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 18:20:27 +0200
|
||||
Subject: [PATCH 4/5] windows.globalization: Implement
|
||||
Subject: [PATCH] windows.globalization: Implement
|
||||
IGlobalizationPreferencesStatics::Languages semi-stub.
|
||||
|
||||
Returning system default language in a 1-element HSTRING vector.
|
||||
@ -10,10 +10,10 @@ Returning system default language in a 1-element HSTRING vector.
|
||||
1 file changed, 175 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.globalization.dll/windows.globalization_main.c b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
index 6d17317677e..16bcb9344dd 100644
|
||||
index 83e269bead6..0d7a1bd6dcf 100644
|
||||
--- a/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
+++ b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
@@ -28,6 +28,165 @@ static const char *debugstr_hstring(HSTRING hstr)
|
||||
@@ -29,6 +29,165 @@ static const char *debugstr_hstring(HSTRING hstr)
|
||||
return wine_dbgstr_wn(str, len);
|
||||
}
|
||||
|
||||
@ -179,7 +179,7 @@ index 6d17317677e..16bcb9344dd 100644
|
||||
struct windows_globalization
|
||||
{
|
||||
IActivationFactory IActivationFactory_iface;
|
||||
@@ -125,8 +284,22 @@ static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Currencies(IGloba
|
||||
@@ -126,8 +285,22 @@ static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Currencies(IGloba
|
||||
static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Languages(IGlobalizationPreferencesStatics *iface,
|
||||
IVectorView_HSTRING **value)
|
||||
{
|
||||
@ -205,5 +205,5 @@ index 6d17317677e..16bcb9344dd 100644
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE globalization_preferences_get_HomeGeographicRegion(IGlobalizationPreferencesStatics *iface,
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 91eee8c901692177e62e86e7ac9e705de2b01c7a Mon Sep 17 00:00:00 2001
|
||||
From 6538767a19e1d6ea0a50501b727be6851b765acd Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 18:11:35 +0200
|
||||
Subject: [PATCH 5/5] windows.globalization: Fake empty
|
||||
Subject: [PATCH] windows.globalization: Fake empty
|
||||
IGlobalizationPreferencesStatics properties.
|
||||
|
||||
---
|
||||
@ -9,10 +9,10 @@ Subject: [PATCH 5/5] windows.globalization: Fake empty
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.globalization.dll/windows.globalization_main.c b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
index 16bcb9344dd..c5da98cc22f 100644
|
||||
index 0d7a1bd6dcf..ff33cf40bdc 100644
|
||||
--- a/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
+++ b/dlls/windows.globalization.dll/windows.globalization_main.c
|
||||
@@ -264,21 +264,21 @@ static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Calendars(IGlobal
|
||||
@@ -265,21 +265,21 @@ static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Calendars(IGlobal
|
||||
IVectorView_HSTRING **value)
|
||||
{
|
||||
FIXME("iface %p, value %p stub!\n", iface, value);
|
||||
@ -38,5 +38,5 @@ index 16bcb9344dd..c5da98cc22f 100644
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE globalization_preferences_get_Languages(IGlobalizationPreferencesStatics *iface,
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,5 +1,3 @@
|
||||
Fixes: [49740] windows.globalization: New DLL
|
||||
Fixes: [49998] windows.globalization: New DLL
|
||||
Depends: windows.gaming.input-dll
|
||||
# In the process of upstreaming.
|
||||
Disabled: true
|
||||
|
@ -1,7 +1,7 @@
|
||||
From b38b826ee230339be27e83e42822a69afe13259f Mon Sep 17 00:00:00 2001
|
||||
From e01b6dd56efc033ddb8b5e3951431c57f6953751 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 25 Aug 2020 19:07:58 +0200
|
||||
Subject: [PATCH 1/4] windows.media.speech: Add stub dll.
|
||||
Subject: [PATCH] windows.media.speech: Add stub dll.
|
||||
|
||||
---
|
||||
configure.ac | 1 +
|
||||
@ -15,10 +15,10 @@ Subject: [PATCH 1/4] windows.media.speech: Add stub dll.
|
||||
create mode 100644 dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index a57697a0ddf..a8649a2e40b 100644
|
||||
index caff5d1fe52..78720ab188f 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3822,6 +3822,7 @@ WINE_CONFIG_MAKEFILE(dlls/win32s16.dll16,enable_win16)
|
||||
@@ -3796,6 +3796,7 @@ WINE_CONFIG_MAKEFILE(dlls/win32s16.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/win87em.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/winaspi.dll16,enable_win16)
|
||||
WINE_CONFIG_MAKEFILE(dlls/windebug.dll16,enable_win16)
|
||||
@ -193,7 +193,7 @@ index 00000000000..c7c14deef78
|
||||
+ return S_OK;
|
||||
+}
|
||||
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
|
||||
index ff9a221feaa..157b146a857 100644
|
||||
index d5dd2d5b66b..db816327a51 100644
|
||||
--- a/loader/wine.inf.in
|
||||
+++ b/loader/wine.inf.in
|
||||
@@ -713,6 +713,7 @@ HKLM,%MciExtStr%,"wmx",,"MPEGVideo"
|
||||
@ -205,5 +205,5 @@ index ff9a221feaa..157b146a857 100644
|
||||
HKLM,Software\Clients\Mail,,2,"Native Mail Client"
|
||||
HKLM,Software\Clients\Mail\Native Mail Client,,2,"Native Mail Client"
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,27 +1,27 @@
|
||||
From 7a0957631d225f7eee1bf4c6409f72eab76b3f92 Mon Sep 17 00:00:00 2001
|
||||
From efd9cc1ddc4dd24cd605d07818942a390e9b6486 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Fri, 9 Oct 2020 13:53:55 +0200
|
||||
Subject: [PATCH 2/4] windows.media.speech: Implement IInstalledVoicesStatic
|
||||
stub.
|
||||
Subject: [PATCH] windows.media.speech: Implement IInstalledVoicesStatic stub.
|
||||
|
||||
---
|
||||
.../windows.media.speech_main.c | 104 ++++++++++++++++++
|
||||
1 file changed, 104 insertions(+)
|
||||
|
||||
diff --git a/dlls/windows.media.speech.dll/windows.media.speech_main.c b/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
index c7c14deef78..cb686ccc0b5 100644
|
||||
index c7c14deef78..f12d9bab74d 100644
|
||||
--- a/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
+++ b/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
@@ -10,6 +10,9 @@
|
||||
@@ -10,7 +10,10 @@
|
||||
#include "initguid.h"
|
||||
#include "activation.h"
|
||||
|
||||
+#define WIDL_USING_IVECTORVIEW_1_WINDOWS_MEDIA_SPEECHSYNTHESIS_VOICEINFORMATION
|
||||
+#define WIDL_USING_WINDOWS_MEDIA_SPEECHSYNTHESIS_IINSTALLEDVOICESSTATIC
|
||||
+#define WIDL_USING_WINDOWS_MEDIA_SPEECHSYNTHESIS_IVOICEINFORMATION
|
||||
+#define WIDL_using_Windows_Foundation
|
||||
+#define WIDL_using_Windows_Foundation_Collections
|
||||
#include "windows.foundation.h"
|
||||
+#define WIDL_using_Windows_Media_SpeechSynthesis
|
||||
#include "windows.media.speechsynthesis.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(speech);
|
||||
@@ -27,6 +30,7 @@ static const char *debugstr_hstring(HSTRING hstr)
|
||||
struct windows_media_speech
|
||||
{
|
||||
@ -152,5 +152,5 @@ index c7c14deef78..cb686ccc0b5 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,26 +1,18 @@
|
||||
From 66203027d2c82fd502e1ff30213bc4ba09f73d5b Mon Sep 17 00:00:00 2001
|
||||
From af5401ddc8d760f18eb73aaed30078b1c1fca6d2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Tue, 13 Oct 2020 17:02:57 +0200
|
||||
Subject: [PATCH 3/4] windows.media.speech: Implement
|
||||
Subject: [PATCH] windows.media.speech: Implement
|
||||
IInstalledVoicesStatic::AllVoices stub.
|
||||
|
||||
---
|
||||
.../windows.media.speech_main.c | 114 +++++++++++++++++-
|
||||
1 file changed, 113 insertions(+), 1 deletion(-)
|
||||
.../windows.media.speech_main.c | 113 +++++++++++++++++-
|
||||
1 file changed, 112 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/windows.media.speech.dll/windows.media.speech_main.c b/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
index cb686ccc0b5..1f9c2bdc0b9 100644
|
||||
index f12d9bab74d..69f434c87c4 100644
|
||||
--- a/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
+++ b/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
@@ -13,6 +13,7 @@
|
||||
#define WIDL_USING_IVECTORVIEW_1_WINDOWS_MEDIA_SPEECHSYNTHESIS_VOICEINFORMATION
|
||||
#define WIDL_USING_WINDOWS_MEDIA_SPEECHSYNTHESIS_IINSTALLEDVOICESSTATIC
|
||||
#define WIDL_USING_WINDOWS_MEDIA_SPEECHSYNTHESIS_IVOICEINFORMATION
|
||||
+#define WIDL_USING_WINDOWS_MEDIA_SPEECHSYNTHESIS_VOICEINFORMATION
|
||||
#include "windows.foundation.h"
|
||||
#include "windows.media.speechsynthesis.h"
|
||||
|
||||
@@ -31,6 +32,7 @@ struct windows_media_speech
|
||||
@@ -31,6 +31,7 @@ struct windows_media_speech
|
||||
{
|
||||
IActivationFactory IActivationFactory_iface;
|
||||
IInstalledVoicesStatic IInstalledVoicesStatic_iface;
|
||||
@ -28,7 +20,7 @@ index cb686ccc0b5..1f9c2bdc0b9 100644
|
||||
LONG ref;
|
||||
};
|
||||
|
||||
@@ -44,6 +46,113 @@ static inline struct windows_media_speech *impl_from_IInstalledVoicesStatic(IIns
|
||||
@@ -44,6 +45,113 @@ static inline struct windows_media_speech *impl_from_IInstalledVoicesStatic(IIns
|
||||
return CONTAINING_RECORD(iface, struct windows_media_speech, IInstalledVoicesStatic_iface);
|
||||
}
|
||||
|
||||
@ -142,7 +134,7 @@ index cb686ccc0b5..1f9c2bdc0b9 100644
|
||||
static HRESULT STDMETHODCALLTYPE installed_voices_static_QueryInterface(
|
||||
IInstalledVoicesStatic *iface, REFIID iid, void **out)
|
||||
{
|
||||
@@ -106,8 +215,10 @@ static HRESULT STDMETHODCALLTYPE installed_voices_static_GetTrustLevel(
|
||||
@@ -106,8 +214,10 @@ static HRESULT STDMETHODCALLTYPE installed_voices_static_GetTrustLevel(
|
||||
static HRESULT STDMETHODCALLTYPE installed_voices_static_get_AllVoices(
|
||||
IInstalledVoicesStatic *iface, IVectorView_VoiceInformation **value)
|
||||
{
|
||||
@ -154,7 +146,7 @@ index cb686ccc0b5..1f9c2bdc0b9 100644
|
||||
}
|
||||
|
||||
static HRESULT STDMETHODCALLTYPE installed_voices_static_get_DefaultVoice(
|
||||
@@ -221,6 +332,7 @@ static struct windows_media_speech windows_media_speech =
|
||||
@@ -221,6 +331,7 @@ static struct windows_media_speech windows_media_speech =
|
||||
{
|
||||
{&activation_factory_vtbl},
|
||||
{&installed_voices_static_vtbl},
|
||||
@ -163,5 +155,5 @@ index cb686ccc0b5..1f9c2bdc0b9 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 619f2108b20c843ca1ba75d18fb7cbc50c80bd5e Mon Sep 17 00:00:00 2001
|
||||
From 4b0875adffb2552b89fa5c04a6eb8a50d36ab6a8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?R=C3=A9mi=20Bernon?= <rbernon@codeweavers.com>
|
||||
Date: Fri, 9 Oct 2020 14:06:33 +0200
|
||||
Subject: [PATCH 4/4] windows.media.speech: Fake empty
|
||||
Subject: [PATCH] windows.media.speech: Fake empty
|
||||
IInstalledVoicesStatic::AllVoices vector.
|
||||
|
||||
---
|
||||
@ -9,10 +9,10 @@ Subject: [PATCH 4/4] windows.media.speech: Fake empty
|
||||
1 file changed, 7 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dlls/windows.media.speech.dll/windows.media.speech_main.c b/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
index 1f9c2bdc0b9..5fe2e60ec42 100644
|
||||
index 69f434c87c4..bc075b16f17 100644
|
||||
--- a/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
+++ b/dlls/windows.media.speech.dll/windows.media.speech_main.c
|
||||
@@ -113,28 +113,31 @@ static HRESULT STDMETHODCALLTYPE vector_view_voice_information_GetAt(
|
||||
@@ -112,28 +112,31 @@ static HRESULT STDMETHODCALLTYPE vector_view_voice_information_GetAt(
|
||||
IVectorView_VoiceInformation *iface, ULONG index, IVoiceInformation **value)
|
||||
{
|
||||
FIXME("iface %p, index %#x, value %p stub!\n", iface, index, value);
|
||||
@ -49,5 +49,5 @@ index 1f9c2bdc0b9..5fe2e60ec42 100644
|
||||
|
||||
static const struct IVectorView_VoiceInformationVtbl vector_view_voice_information_vtbl =
|
||||
--
|
||||
2.28.0
|
||||
2.20.1
|
||||
|
||||
|
@ -1,4 +1 @@
|
||||
Fixes: [49740] windows.media.speech: New DLL
|
||||
Depends: widl-winrt-support
|
||||
# In the process of upstreaming.
|
||||
Disabled: true
|
||||
|
@ -1 +1 @@
|
||||
35e43ccf1b42e9f67d7765753f0c3ef8cf102c46
|
||||
0f972e2247932f255f131792724e4796b4b2b87a
|
||||
|
Loading…
Reference in New Issue
Block a user