Module: wine
Branch: master
Commit: 5ff1242c9469e3bd39929c7ade7469df82e7e53a
URL: https://gitlab.winehq.org/wine/wine/-/commit/5ff1242c9469e3bd39929c7ade7469…
Author: Mohamad Al-Jaf <mohamadaljaf(a)gmail.com>
Date: Tue Apr 18 20:25:00 2023 -0400
twinapi.appcore: Add RegisterAppStateChangeNotification stub.
Needed for Minecraft Legends.
---
dlls/twinapi.appcore/Makefile.in | 4 ++++
dlls/twinapi.appcore/main.c | 31 +++++++++++++++++++++++++++++++
dlls/twinapi.appcore/twinapi.appcore.spec | 2 +-
3 files changed, 36 insertions(+), 1 deletion(-)
diff --git a/dlls/twinapi.appcore/Makefile.in b/dlls/twinapi.appcore/Makefile.in
index b6e31708d9d..a0095988f7f 100644
--- a/dlls/twinapi.appcore/Makefile.in
+++ b/dlls/twinapi.appcore/Makefile.in
@@ -1 +1,5 @@
+EXTRADEFS = -D_CONTRACT_GEN
MODULE = twinapi.appcore.dll
+
+C_SRCS = \
+ main.c
diff --git a/dlls/twinapi.appcore/main.c b/dlls/twinapi.appcore/main.c
new file mode 100644
index 00000000000..dcaee58c5ef
--- /dev/null
+++ b/dlls/twinapi.appcore/main.c
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2023 Mohamad Al-Jaf
+ *
+ * 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
+ */
+
+#include "appnotify.h"
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(twinapi);
+
+/***********************************************************************
+ * RegisterAppStateChangeNotification (twinapi.appcore.@)
+ */
+ULONG WINAPI RegisterAppStateChangeNotification( PAPPSTATE_CHANGE_ROUTINE routine, void *context, PAPPSTATE_REGISTRATION *reg )
+{
+ FIXME( "routine %p, context %p, reg %p - stub.\n", routine, context, reg );
+ return ERROR_CALL_NOT_IMPLEMENTED;
+}
diff --git a/dlls/twinapi.appcore/twinapi.appcore.spec b/dlls/twinapi.appcore/twinapi.appcore.spec
index cda1c38103f..9052c4e7cf5 100644
--- a/dlls/twinapi.appcore/twinapi.appcore.spec
+++ b/dlls/twinapi.appcore/twinapi.appcore.spec
@@ -122,6 +122,6 @@
@ stub PsmUnregisterAppStateChangeNotification
@ stub PsmWaitForAppResume
@ stub RegisterAppConstrainedChangeNotification
-@ stub RegisterAppStateChangeNotification
+@ stdcall RegisterAppStateChangeNotification(ptr ptr ptr)
@ stub UnregisterAppConstrainedChangeNotification
@ stub UnregisterAppStateChangeNotification
Module: wine
Branch: master
Commit: 4ce24eb9be5c7f2896a91d1d554b20f2b8266d3f
URL: https://gitlab.winehq.org/wine/wine/-/commit/4ce24eb9be5c7f2896a91d1d554b20…
Author: Mohamad Al-Jaf <mohamadaljaf(a)gmail.com>
Date: Tue Apr 18 14:03:09 2023 -0400
include: Add appnotify.h file.
---
include/Makefile.in | 1 +
include/appnotify.h | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 50 insertions(+)
diff --git a/include/Makefile.in b/include/Makefile.in
index 7a6e5d62763..c957fed884c 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -19,6 +19,7 @@ SOURCES = \
appcompatapi.h \
appmgmt.h \
appmodel.h \
+ appnotify.h \
asferr.h \
asptlb.idl \
asyncinfo.idl \
diff --git a/include/appnotify.h b/include/appnotify.h
new file mode 100644
index 00000000000..882b0342afb
--- /dev/null
+++ b/include/appnotify.h
@@ -0,0 +1,49 @@
+/*
+ * Copyright (C) 2023 Mohamad Al-Jaf
+ *
+ * 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
+ */
+
+#ifndef _WINE_APISET_PSMAPPNOTIFY_H_
+#define _WINE_APISET_PSMAPPNOTIFY_H_
+
+#include <windows.h>
+
+#ifdef _CONTRACT_GEN
+#define PSM_APP_API_HOST
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#if defined(PSM_APP_API_HOST)
+#define APICONTRACT
+#else
+#define APICONTRACT DECLSPEC_IMPORT
+#endif
+
+typedef void (__cdecl *PAPPSTATE_CHANGE_ROUTINE)(BOOLEAN quiesced, void *context);
+
+typedef struct _APPSTATE_REGISTRATION *PAPPSTATE_REGISTRATION;
+
+APICONTRACT ULONG NTAPI RegisterAppStateChangeNotification(PAPPSTATE_CHANGE_ROUTINE,void *,PAPPSTATE_REGISTRATION *);
+APICONTRACT void NTAPI UnregisterAppStateChangeNotification(PAPPSTATE_REGISTRATION);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _WINE_APISET_PSMAPPNOTIFY_H_ */