Title: [264232] trunk/Source
Revision
264232
Author
beid...@apple.com
Date
2020-07-10 11:51:39 -0700 (Fri, 10 Jul 2020)

Log Message

Limit MultiGamepadProvider to Catalina and Big Sur.
https://bugs.webkit.org/show_bug.cgi?id=214190

Unreviewed build fix.


Source/WebCore:

* platform/gamepad/cocoa/GameControllerSPI.h:
* platform/gamepad/cocoa/GameControllerSoftLink.h:
* platform/gamepad/cocoa/GameControllerSoftLink.mm:
* platform/gamepad/mac/HIDGamepadProvider.mm:
(WebCore::HIDGamepadProvider::deviceAdded):
* platform/gamepad/mac/MultiGamepadProvider.h:
* platform/gamepad/mac/MultiGamepadProvider.mm:

Source/WebKit:

* UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm:
(WebKit::UIGamepadProvider::platformSetDefaultGamepadProvider):

Modified Paths

Diff

Modified: trunk/Source/WTF/wtf/PlatformHave.h (264231 => 264232)


--- trunk/Source/WTF/wtf/PlatformHave.h	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WTF/wtf/PlatformHave.h	2020-07-10 18:51:39 UTC (rev 264232)
@@ -570,6 +570,10 @@
 #define HAVE_GCEXTENDEDGAMEPAD_BUTTONS_THUMBSTICK 1
 #endif
 
+#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101500)
+#define HAVE_MULTIGAMEPADPROVIDER_SUPPORT 1
+#endif
+
 #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101600) || (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 140000)
 #define HAVE_WEBP 1
 #endif

Modified: trunk/Source/WebCore/ChangeLog (264231 => 264232)


--- trunk/Source/WebCore/ChangeLog	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/ChangeLog	2020-07-10 18:51:39 UTC (rev 264232)
@@ -1,3 +1,18 @@
+2020-07-10  Brady Eidson  <beid...@apple.com>
+
+        Limit MultiGamepadProvider to Catalina and Big Sur.
+        https://bugs.webkit.org/show_bug.cgi?id=214190
+
+        Unreviewed build fix.
+
+        * platform/gamepad/cocoa/GameControllerSPI.h:
+        * platform/gamepad/cocoa/GameControllerSoftLink.h:
+        * platform/gamepad/cocoa/GameControllerSoftLink.mm:
+        * platform/gamepad/mac/HIDGamepadProvider.mm:
+        (WebCore::HIDGamepadProvider::deviceAdded):
+        * platform/gamepad/mac/MultiGamepadProvider.h:
+        * platform/gamepad/mac/MultiGamepadProvider.mm:
+
 2020-07-10  Sam Weinig  <wei...@apple.com>
 
         Part 4 of SimpleColor and SRGBA<uint8_t> are essentially the same - let's converge them

Modified: trunk/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h (264231 => 264232)


--- trunk/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/PAL/pal/spi/mac/IOKitSPIMac.h	2020-07-10 18:51:39 UTC (rev 264232)
@@ -33,6 +33,7 @@
 #else
 
 WTF_EXTERN_C_BEGIN
+typedef struct CF_BRIDGED_TYPE(id) __IOHIDServiceClient * IOHIDServiceClientRef;
 typedef struct CF_BRIDGED_TYPE(id) __IOHIDEventSystemClient * IOHIDEventSystemClientRef;
 IOHIDEventSystemClientRef IOHIDEventSystemClientCreate(CFAllocatorRef);
 void IOHIDEventSystemClientSetMatching(IOHIDEventSystemClientRef, CFDictionaryRef);

Modified: trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSPI.h (264231 => 264232)


--- trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSPI.h	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSPI.h	2020-07-10 18:51:39 UTC (rev 264232)
@@ -31,7 +31,7 @@
 + (void)__openXPC_and_CBApplicationDidBecomeActive__;
 @end
 
-#if PLATFORM(MAC)
+#if HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 #if USE(APPLE_INTERNAL_SDK)
 
 WTF_EXTERN_C_BEGIN
@@ -41,10 +41,10 @@
 #else
 
 WTF_EXTERN_C_BEGIN
-typedef struct CF_BRIDGED_TYPE(id) IOHIDServiceClient * IOHIDServiceClientRef;
+typedef struct CF_BRIDGED_TYPE(id) __IOHIDServiceClient * IOHIDServiceClientRef;
 Class ControllerClassForService(IOHIDServiceClientRef);
 WTF_EXTERN_C_END
 
 #endif // USE(APPLE_INTERNAL_SDK)
-#endif // PLATFORM(MAC)
+#endif // HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 #endif // ENABLE(GAMEPAD) && PLATFORM(COCOA)

Modified: trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.h (264231 => 264232)


--- trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.h	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.h	2020-07-10 18:51:39 UTC (rev 264232)
@@ -36,7 +36,7 @@
 SOFT_LINK_CONSTANT_MAY_FAIL_FOR_HEADER(WebCore, GameController, GCControllerDidConnectNotification, NSString *)
 SOFT_LINK_CONSTANT_MAY_FAIL_FOR_HEADER(WebCore, GameController, GCControllerDidDisconnectNotification, NSString *)
 
-#if PLATFORM(MAC)
+#if HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 SOFT_LINK_FUNCTION_FOR_HEADER(WebCore, GameController, ControllerClassForService, Class, (IOHIDServiceClientRef service), (service))
 #endif
 

Modified: trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.mm (264231 => 264232)


--- trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.mm	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/platform/gamepad/cocoa/GameControllerSoftLink.mm	2020-07-10 18:51:39 UTC (rev 264232)
@@ -36,7 +36,7 @@
 SOFT_LINK_CONSTANT_MAY_FAIL_FOR_SOURCE(WebCore, GameController, GCControllerDidConnectNotification, NSString *)
 SOFT_LINK_CONSTANT_MAY_FAIL_FOR_SOURCE(WebCore, GameController, GCControllerDidDisconnectNotification, NSString *)
 
-#if PLATFORM(MAC)
+#if HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 SOFT_LINK_FUNCTION_FOR_SOURCE(WebCore, GameController, ControllerClassForService, Class, (IOHIDServiceClientRef service), (service))
 #endif
 

Modified: trunk/Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.mm (264231 => 264232)


--- trunk/Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.mm	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/platform/gamepad/mac/HIDGamepadProvider.mm	2020-07-10 18:51:39 UTC (rev 264232)
@@ -179,6 +179,7 @@
         closeAndUnscheduleManager();
 }
 
+#if HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 static bool gameControllerFrameworkWillHandleHIDDevice(IOHIDDeviceRef device)
 {
     if (!isGameControllerFrameworkAvailable())
@@ -222,14 +223,19 @@
 
     return ControllerClassForService(serviceClient.get());
 }
+#endif // HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 
+
+
 void HIDGamepadProvider::deviceAdded(IOHIDDeviceRef device)
 {
+#if HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
     if (m_ignoresGameControllerFrameworkDevices && gameControllerFrameworkWillHandleHIDDevice(device)) {
         LOG(Gamepad, "GameController framework will handle attached device %p - HIDGamepadProvider ignoring it", device);
         m_gameControllerManagedGamepads.add(device);
         return;
     }
+#endif // HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 
     ASSERT(!m_gamepadMap.get(device));
 

Modified: trunk/Source/WebCore/platform/gamepad/mac/MultiGamepadProvider.h (264231 => 264232)


--- trunk/Source/WebCore/platform/gamepad/mac/MultiGamepadProvider.h	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/platform/gamepad/mac/MultiGamepadProvider.h	2020-07-10 18:51:39 UTC (rev 264232)
@@ -25,7 +25,7 @@
 
 #pragma once
 
-#if ENABLE(GAMEPAD) && PLATFORM(MAC)
+#if ENABLE(GAMEPAD) && HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 
 #include "GamepadProvider.h"
 #include "GamepadProviderClient.h"
@@ -91,4 +91,4 @@
 
 } // namespace WebCore
 
-#endif // ENABLE(GAMEPAD) && PLATFORM(MAC)
+#endif // ENABLE(GAMEPAD) && HAVE(MULTIGAMEPADPROVIDER_SUPPORT)

Modified: trunk/Source/WebCore/platform/gamepad/mac/MultiGamepadProvider.mm (264231 => 264232)


--- trunk/Source/WebCore/platform/gamepad/mac/MultiGamepadProvider.mm	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebCore/platform/gamepad/mac/MultiGamepadProvider.mm	2020-07-10 18:51:39 UTC (rev 264232)
@@ -26,7 +26,7 @@
 #include "config.h"
 #include "MultiGamepadProvider.h"
 
-#if ENABLE(GAMEPAD) && PLATFORM(MAC)
+#if ENABLE(GAMEPAD) && HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
 
 #import "GameControllerGamepadProvider.h"
 #import "HIDGamepadProvider.h"
@@ -129,4 +129,4 @@
 
 } // namespace WebCore
 
-#endif // ENABLE(GAMEPAD) && PLATFORM(MAC)
+#endif // ENABLE(GAMEPAD) && HAVE(MULTIGAMEPADPROVIDER_SUPPORT)

Modified: trunk/Source/WebKit/ChangeLog (264231 => 264232)


--- trunk/Source/WebKit/ChangeLog	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebKit/ChangeLog	2020-07-10 18:51:39 UTC (rev 264232)
@@ -1,3 +1,13 @@
+2020-07-10  Brady Eidson  <beid...@apple.com>
+
+        Limit MultiGamepadProvider to Catalina and Big Sur.
+        https://bugs.webkit.org/show_bug.cgi?id=214190
+
+        Unreviewed build fix.
+
+        * UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm:
+        (WebKit::UIGamepadProvider::platformSetDefaultGamepadProvider):
+
 2020-07-10  Brent Fulgham  <bfulg...@apple.com>
 
         [IPC hardening] Use MESSAGE_CHECK in WebPageProxy::setColorPickerColor()

Modified: trunk/Source/WebKit/UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm (264231 => 264232)


--- trunk/Source/WebKit/UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm	2020-07-10 17:54:05 UTC (rev 264231)
+++ trunk/Source/WebKit/UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm	2020-07-10 18:51:39 UTC (rev 264232)
@@ -53,9 +53,14 @@
 #else
     if (useGameControllerFramework)
         GamepadProvider::setSharedProvider(GameControllerGamepadProvider::singleton());
-    else
+    else {
+#if HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
         GamepadProvider::setSharedProvider(MultiGamepadProvider::singleton());
-#endif
+#else
+        GamepadProvider::setSharedProvider(HIDGamepadProvider::singleton());
+#endif // HAVE(MULTIGAMEPADPROVIDER_SUPPORT)
+    }
+#endif // PLATFORM(IOS_FAMILY)
 }
 
 void UIGamepadProvider::platformStopMonitoringInput()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to