Skip to content
Permalink
Browse files
Disable experimental web features on platforms without UI to enable them
<https://webkit.org/b/233152>
<rdar://problem/85430643>

Reviewed by Brent Fulgham.

Source/WebKit:

* UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm:
(WebKit::RemoteLayerTreeHost::makeNode):
* WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.h:
* WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.mm:
- Fix build when ENABLE(MODEL_ELEMENT) is false.

Source/WTF:

* wtf/PlatformEnableCocoa.h:
(ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER):
(ENABLE_CSS_PAINTING_API):
(ENABLE_CSS_TYPED_OM):
(ENABLE_MODEL_ELEMENT):
(ENABLE_SEPARATED_MODEL):
- Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined.
* wtf/PlatformHave.h:
(HAVE_EXPERIMENTAL_WEB_FEATURES_UI): Add.
- Define for tvOS and watchOS, which don't have UI to enable
  experimental web features.
(HAVE_CELESTIAL):
(HAVE_CFNETWORK_ALTERNATIVE_SERVICE):
(HAVE_NETWORK_LOADER):
(HAVE_AVSAMPLEBUFFERVIDEOOUTPUT):
- Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined.



Canonical link: https://commits.webkit.org/244633@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286272 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
David Kilzer committed Nov 30, 2021
1 parent 200e3d9 commit dfbc4a550e588beb3f3424fbe46471e8a3c4ee48
@@ -1,3 +1,28 @@
2021-11-29 David Kilzer <ddkilzer@apple.com>

Disable experimental web features on platforms without UI to enable them
<https://webkit.org/b/233152>
<rdar://problem/85430643>

Reviewed by Brent Fulgham.

* wtf/PlatformEnableCocoa.h:
(ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER):
(ENABLE_CSS_PAINTING_API):
(ENABLE_CSS_TYPED_OM):
(ENABLE_MODEL_ELEMENT):
(ENABLE_SEPARATED_MODEL):
- Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined.
* wtf/PlatformHave.h:
(HAVE_EXPERIMENTAL_WEB_FEATURES_UI): Add.
- Define for tvOS and watchOS, which don't have UI to enable
experimental web features.
(HAVE_CELESTIAL):
(HAVE_CFNETWORK_ALTERNATIVE_SERVICE):
(HAVE_NETWORK_LOADER):
(HAVE_AVSAMPLEBUFFERVIDEOOUTPUT):
- Disable if HAVE(EXPERIMENTAL_WEB_FEATURES_UI) is defined.

2021-11-29 Chris Fleizach <cfleizach@apple.com>

AX: Unify speech synthesizer platform usage for Mac/iOS
@@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2020 Apple Inc. All rights reserved.
* Copyright (C) 2006-2021 Apple Inc. All rights reserved.
* Copyright (C) 2007-2009 Torch Mobile, Inc.
* Copyright (C) 2010, 2011 Research In Motion Limited. All rights reserved.
* Copyright (C) 2013 Samsung Electronics. All rights reserved.
@@ -171,7 +171,7 @@
#define ENABLE_CONTEXT_MENU_EVENT 0
#endif

#if !defined(ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER)
#if !defined(ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define ENABLE_CORE_IMAGE_ACCELERATED_FILTER_RENDER 1
#endif

@@ -184,7 +184,7 @@
#define ENABLE_CSS_CONIC_GRADIENTS 1
#endif

#if !defined(ENABLE_CSS_PAINTING_API)
#if !defined(ENABLE_CSS_PAINTING_API) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define ENABLE_CSS_PAINTING_API 1
#endif

@@ -196,7 +196,7 @@
#define ENABLE_CSS_TRAILING_WORD 1
#endif

#if !defined(ENABLE_CSS_TYPED_OM)
#if !defined(ENABLE_CSS_TYPED_OM) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define ENABLE_CSS_TYPED_OM 1
#endif

@@ -405,7 +405,7 @@
#define ENABLE_META_VIEWPORT 1
#endif

#if !defined(ENABLE_MODEL_ELEMENT)
#if !defined(ENABLE_MODEL_ELEMENT) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define ENABLE_MODEL_ELEMENT 1
#endif

@@ -704,7 +704,7 @@
#define ENABLE_CSS_TRANSFORM_STYLE_OPTIMIZED_3D 1
#endif

#if !defined(ENABLE_SEPARATED_MODEL) && HAVE(UIKIT_WEBKIT_INTERNALS) && HAVE(CORE_ANIMATION_SEPARATED_LAYERS)
#if !defined(ENABLE_SEPARATED_MODEL) && HAVE(UIKIT_WEBKIT_INTERNALS) && HAVE(CORE_ANIMATION_SEPARATED_LAYERS) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define ENABLE_SEPARATED_MODEL 1
#endif

@@ -81,6 +81,10 @@
#define HAVE_ARM_NEON_INTRINSICS 0
#endif

#if !defined(HAVE_EXPERIMENTAL_WEB_FEATURES_UI) && (PLATFORM(MAC) || PLATFORM(MACCATALYST) || PLATFORM(IOS))
#define HAVE_EXPERIMENTAL_WEB_FEATURES_UI 1
#endif

#if !defined(HAVE_VISIBILITY_PROPAGATION_VIEW) && PLATFORM(IOS_FAMILY)
#define HAVE_VISIBILITY_PROPAGATION_VIEW 1
#endif
@@ -254,7 +258,7 @@
#define HAVE_APP_LINKS 1
#endif

#if PLATFORM(IOS_FAMILY) && !PLATFORM(MACCATALYST)
#if PLATFORM(IOS_FAMILY) && !PLATFORM(MACCATALYST) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define HAVE_CELESTIAL 1
#endif

@@ -440,7 +444,7 @@
#define HAVE_CFNETWORK_METRICS_APIS_V4 1
#endif

#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 110000) || (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 140000)
#if ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 110000) || (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 140000)) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define HAVE_CFNETWORK_ALTERNATIVE_SERVICE 1
#endif

@@ -733,7 +737,9 @@
|| ((PLATFORM(IOS) || PLATFORM(MACCATALYST)) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 150000) \
|| (PLATFORM(WATCHOS) && __WATCH_OS_VERSION_MIN_REQUIRED >= 80000) \
|| (PLATFORM(APPLETV) && __TV_OS_VERSION_MIN_REQUIRED >= 150000)
#if HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define HAVE_NETWORK_LOADER 1
#endif
#define HAVE_SEC_TRUST_COPY_CERTIFICATE_CHAIN 1
#define HAVE_OS_LAUNCHD_JOB 1
#define HAVE_NSURL_EMPTY_PUNYCODE_CHECK 1
@@ -1070,7 +1076,7 @@
#endif
#endif

#if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101600) || (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 140000)
#if ((PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101600) || (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 140000)) && HAVE(EXPERIMENTAL_WEB_FEATURES_UI)
#define HAVE_AVSAMPLEBUFFERVIDEOOUTPUT 1
#endif

@@ -1,3 +1,17 @@
2021-11-29 David Kilzer <ddkilzer@apple.com>

Disable experimental web features on platforms without UI to enable them
<https://webkit.org/b/233152>
<rdar://problem/85430643>

Reviewed by Brent Fulgham.

* UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm:
(WebKit::RemoteLayerTreeHost::makeNode):
* WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.h:
* WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteModelHosting.mm:
- Fix build when ENABLE(MODEL_ELEMENT) is false.

2021-11-29 Tim Horton <timothy_horton@apple.com>

Plumb raw platform scrolling deltas along in wheel events
@@ -95,7 +95,8 @@
return makeWithView(adoptNS([[WKChildScrollView alloc] init]));
// The debug indicator parents views under layers, which can cause crashes with UIScrollView.
return makeWithView(adoptNS([[UIView alloc] init]));


#if ENABLE(MODEL_ELEMENT)
case PlatformCALayer::LayerTypeModelLayer:
#if ENABLE(SEPARATED_MODEL)
return makeWithView(adoptNS([[WKSeparatedModelView alloc] initWithModel:*properties.model]));
@@ -104,6 +105,7 @@
#else
return makeWithView(adoptNS([[WKCompositingView alloc] init]));
#endif
#endif // ENABLE(MODEL_ELEMENT)

default:
ASSERT_NOT_REACHED();
@@ -27,6 +27,8 @@

#include "PlatformCALayerRemote.h"

#if ENABLE(MODEL_ELEMENT)

namespace WebKit {

class PlatformCALayerRemoteModelHosting final : public PlatformCALayerRemote {
@@ -51,3 +53,5 @@ class PlatformCALayerRemoteModelHosting final : public PlatformCALayerRemote {
} // namespace WebKit

SPECIALIZE_TYPE_TRAITS_PLATFORM_CALAYER(WebKit::PlatformCALayerRemoteModelHosting, isPlatformCALayerRemote())

#endif // ENABLE(MODEL_ELEMENT)
@@ -26,6 +26,8 @@
#import "config.h"
#import "PlatformCALayerRemoteModelHosting.h"

#if ENABLE(MODEL_ELEMENT)

#import "RemoteLayerTreeContext.h"
#import "WebProcess.h"
#import <WebCore/GraphicsLayerCA.h>
@@ -73,3 +75,5 @@
}

} // namespace WebKit

#endif // ENABLE(MODEL_ELEMENT)

0 comments on commit dfbc4a5

Please sign in to comment.