Title: [248471] trunk/Source
- Revision
- 248471
- Author
- [email protected]
- Date
- 2019-08-09 13:20:49 -0700 (Fri, 09 Aug 2019)
Log Message
Disable CSSOM View Scrolling API for IMDb iOS app
https://bugs.webkit.org/show_bug.cgi?id=200586
<rdar://problem/53645833>
Patch by Alex Christensen <[email protected]> on 2019-08-09
Reviewed by Simon Fraser.
Source/WebCore:
They are calling scrollHeight on the HTML element and it is running new code introduced in r235806
Disable this new feature until they update their app to use the iOS13 SDK.
* platform/RuntimeApplicationChecks.h:
* platform/cocoa/RuntimeApplicationChecksCocoa.mm:
(WebCore::IOSApplication::isIMDb):
Source/WebKit:
Change the CSSOMViewScrollingAPIEnabled default value to be off for the IMDb app's WKWebViews.
I manually verified this is effective in those WKWebViews but no other WKWebViews and that it fixes the radar.
* Shared/WebPreferences.yaml:
* Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultCSSOMViewScrollingAPIEnabled):
* Shared/WebPreferencesDefaultValues.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (248470 => 248471)
--- trunk/Source/WebCore/ChangeLog 2019-08-09 19:51:39 UTC (rev 248470)
+++ trunk/Source/WebCore/ChangeLog 2019-08-09 20:20:49 UTC (rev 248471)
@@ -1,3 +1,18 @@
+2019-08-09 Alex Christensen <[email protected]>
+
+ Disable CSSOM View Scrolling API for IMDb iOS app
+ https://bugs.webkit.org/show_bug.cgi?id=200586
+ <rdar://problem/53645833>
+
+ Reviewed by Simon Fraser.
+
+ They are calling scrollHeight on the HTML element and it is running new code introduced in r235806
+ Disable this new feature until they update their app to use the iOS13 SDK.
+
+ * platform/RuntimeApplicationChecks.h:
+ * platform/cocoa/RuntimeApplicationChecksCocoa.mm:
+ (WebCore::IOSApplication::isIMDb):
+
2019-08-09 Youenn Fablet <[email protected]>
Remove MediaStreamRegistry
Modified: trunk/Source/WebCore/platform/RuntimeApplicationChecks.h (248470 => 248471)
--- trunk/Source/WebCore/platform/RuntimeApplicationChecks.h 2019-08-09 19:51:39 UTC (rev 248470)
+++ trunk/Source/WebCore/platform/RuntimeApplicationChecks.h 2019-08-09 20:20:49 UTC (rev 248471)
@@ -43,7 +43,7 @@
bool isInWebProcess();
WEBCORE_EXPORT void setApplicationSDKVersion(uint32_t);
-uint32_t applicationSDKVersion();
+WEBCORE_EXPORT uint32_t applicationSDKVersion();
WEBCORE_EXPORT void setApplicationBundleIdentifier(const String&);
String applicationBundleIdentifier();
@@ -78,6 +78,7 @@
WEBCORE_EXPORT bool isMobileMail();
WEBCORE_EXPORT bool isMobileSafari();
+WEBCORE_EXPORT bool isIMDb();
WEBCORE_EXPORT bool isWebBookmarksD();
WEBCORE_EXPORT bool isDumpRenderTree();
bool isMobileStore();
Modified: trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm (248470 => 248471)
--- trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm 2019-08-09 19:51:39 UTC (rev 248470)
+++ trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm 2019-08-09 20:20:49 UTC (rev 248471)
@@ -208,6 +208,12 @@
return isMobileSafari;
}
+bool IOSApplication::isIMDb()
+{
+ static bool isIMDb = applicationBundleIsEqualTo("com.imdb.imdb"_s);
+ return isIMDb;
+}
+
bool IOSApplication::isWebBookmarksD()
{
static bool isWebBookmarksD = applicationBundleIsEqualTo("com.apple.webbookmarksd"_s);
Modified: trunk/Source/WebKit/ChangeLog (248470 => 248471)
--- trunk/Source/WebKit/ChangeLog 2019-08-09 19:51:39 UTC (rev 248470)
+++ trunk/Source/WebKit/ChangeLog 2019-08-09 20:20:49 UTC (rev 248471)
@@ -1,3 +1,19 @@
+2019-08-09 Alex Christensen <[email protected]>
+
+ Disable CSSOM View Scrolling API for IMDb iOS app
+ https://bugs.webkit.org/show_bug.cgi?id=200586
+ <rdar://problem/53645833>
+
+ Reviewed by Simon Fraser.
+
+ Change the CSSOMViewScrollingAPIEnabled default value to be off for the IMDb app's WKWebViews.
+ I manually verified this is effective in those WKWebViews but no other WKWebViews and that it fixes the radar.
+
+ * Shared/WebPreferences.yaml:
+ * Shared/WebPreferencesDefaultValues.cpp:
+ (WebKit::defaultCSSOMViewScrollingAPIEnabled):
+ * Shared/WebPreferencesDefaultValues.h:
+
2019-08-09 Tim Horton <[email protected]>
Tapping buttons in Data Detectors lookup previews doesn't work
Modified: trunk/Source/WebKit/Shared/WebPreferences.yaml (248470 => 248471)
--- trunk/Source/WebKit/Shared/WebPreferences.yaml 2019-08-09 19:51:39 UTC (rev 248470)
+++ trunk/Source/WebKit/Shared/WebPreferences.yaml 2019-08-09 20:20:49 UTC (rev 248471)
@@ -1284,7 +1284,7 @@
CSSOMViewScrollingAPIEnabled:
type: bool
- defaultValue: true
+ defaultValue: defaultCSSOMViewScrollingAPIEnabled()
humanReadableName: "CSSOM View Scrolling API"
humanReadableDescription: "Implement standard behavior for scrollLeft, scrollTop, scrollWidth, scrollHeight, scrollTo, scrollBy and scrollingElement."
category: internal
Modified: trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp (248470 => 248471)
--- trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2019-08-09 19:51:39 UTC (rev 248470)
+++ trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2019-08-09 20:20:49 UTC (rev 248471)
@@ -61,6 +61,15 @@
#endif
}
+bool defaultCSSOMViewScrollingAPIEnabled()
+{
+#if PLATFORM(IOS_FAMILY)
+ if (WebCore::IOSApplication::isIMDb() && applicationSDKVersion() < DYLD_IOS_VERSION_13_0)
+ return false;
+#endif
+ return true;
+}
+
#if ENABLE(TEXT_AUTOSIZING) && !PLATFORM(IOS_FAMILY)
bool defaultTextAutosizingUsesIdempotentMode()
Modified: trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.h (248470 => 248471)
--- trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.h 2019-08-09 19:51:39 UTC (rev 248470)
+++ trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.h 2019-08-09 20:20:49 UTC (rev 248471)
@@ -280,6 +280,7 @@
bool defaultPassiveTouchListenersAsDefaultOnDocument();
bool defaultCustomPasteboardDataEnabled();
+bool defaultCSSOMViewScrollingAPIEnabled();
#if ENABLE(TEXT_AUTOSIZING)
bool defaultTextAutosizingUsesIdempotentMode();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes