Add a runtime flag to control whether we use quirks when performing loads for AppBound pages. This is on by default, with the goal of turning it off in a future update.
<rdar://problem/60062197>
Created attachment 392913 [details] Patch
Created attachment 392915 [details] Patch
Comment on attachment 392915 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=392915&action=review > Source/WebKit/Shared/WebPreferencesDefaultValues.cpp:220 > +#endif #else Otherwise we have unreachable code. > Source/WebKit/Shared/WebProcessCreationParameters.h:128 > + bool needsInAppBrowserPrivacyQuirks { false }; Let's put this on the WebPageCreationParameters instead. Also, it needs to be serialized somewhere. > Source/WebKit/WebProcess/WebProcess.cpp:475 > + WebCore::RuntimeEnabledFeatures::sharedFeatures().setNeedsInAppBrowserPrivacyQuirks(parameters.needsInAppBrowserPrivacyQuirks); Instead of using RuntimeEnabledFeatures, let's just put a bool on WebPage.
Comment on attachment 392915 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=392915&action=review >> Source/WebKit/Shared/WebProcessCreationParameters.h:128 >> + bool needsInAppBrowserPrivacyQuirks { false }; > > Let's put this on the WebPageCreationParameters instead. > Also, it needs to be serialized somewhere. Whoops! >> Source/WebKit/WebProcess/WebProcess.cpp:475 >> + WebCore::RuntimeEnabledFeatures::sharedFeatures().setNeedsInAppBrowserPrivacyQuirks(parameters.needsInAppBrowserPrivacyQuirks); > > Instead of using RuntimeEnabledFeatures, let's just put a bool on WebPage. Done.
Created attachment 392934 [details] Patch
Comment on attachment 392934 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=392934&action=review > Source/WebKit/FeatureFlags/WebKit.plist:44 > + <key>NeedsInAppBrowserPrivacyQuirks</key> > + <dict> > + <key>Enabled</key> > + <true/> > + </dict> Remove. > Source/WebKit/Shared/WebPreferencesDefaultValues.cpp:223 > +bool defaultNeedsInAppBrowserPrivacyQuirks() > +{ > +#if HAVE(HAVE_SYSTEM_FEATURE_FLAGS) > + return os_feature_enabled(WebKit, NeedsInAppBrowserPrivacyQuirks); > +#else > return false; > +#endif > } Remove.
Comment on attachment 392934 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=392934&action=review looks good. > Source/WebKit/FeatureFlags/WebKit.plist:42 > + <key>Enabled</key> This indentation is a little strange. >> Source/WebKit/Shared/WebPreferencesDefaultValues.cpp:223 >> } > > Remove. This is definitely used to get the default value from os_feature_enabled. If that's what's desired (and I think it is) then this must remain.
Created attachment 392936 [details] Patch for landing
Comment on attachment 392936 [details] Patch for landing Clearing flags on attachment: 392936 Committed r258101: <https://trac.webkit.org/changeset/258101>
All reviewed patches have been landed. Closing bug.