WebKit Bugzilla
Attachment 360429 Details for
Bug 193950
: User agent string override for navigator.userAgent should be site specific quirks
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Removed superflous auto
bug-193950-20190128202149.patch (text/plain), 14.62 KB, created by
Ryosuke Niwa
on 2019-01-28 20:21:49 PST
(
hide
)
Description:
Removed superflous auto
Filename:
MIME Type:
Creator:
Ryosuke Niwa
Created:
2019-01-28 20:21:49 PST
Size:
14.62 KB
patch
obsolete
>Subversion Revision: 240602 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index dad7450a94448006eb972a12262a27fec00c400f..720a30ddd9dcb63508e2985b3d63e609ffa29dae 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,23 @@ >+2019-01-28 Ryosuke Niwa <rniwa@webkit.org> >+ >+ User agent string override for navigator.userAgent should be site specific quirks >+ https://bugs.webkit.org/show_bug.cgi?id=193950 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ In order to make it possible to toggle the UA string override just for navigator.userAgent via Web Inspector, >+ we need to put this override behind the site specific quirks. Because WebInspector overrides Page's setting >+ without updating WKPreferences, there is no way for WKWebView client's to know whether the site specific quirks >+ had been disabled or not. >+ >+ * loader/DocumentLoader.h: >+ (WebCore::DocumentLoader::setCustomJavaScriptUserAgentAsSiteSpecificQuirks): >+ (WebCore::DocumentLoader::customJavaScriptUserAgentAsSiteSpecificQuirks const): >+ (WebCore::DocumentLoader::setCustomJavaScriptUserAgent): Deleted. >+ (WebCore::DocumentLoader::customJavaScriptUserAgent const): Deleted. >+ * loader/FrameLoader.cpp: >+ (WebCore::FrameLoader::userAgentForJavaScript const): >+ > 2019-01-28 Antoine Quint <graouts@apple.com> > > Limit user-agent interactions based on the touch-action property on iOS >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index fc48ef780b1e8917408d81658fe39b7c4ce674f7..2bb543bbe5cff2d9fb1d178c369072a8e81b44d2 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,25 @@ >+2019-01-28 Ryosuke Niwa <rniwa@webkit.org> >+ >+ User agent string override for navigator.userAgent should be site specific quirks >+ https://bugs.webkit.org/show_bug.cgi?id=193950 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Renamed the various member variables, functions, properties and selectors. >+ >+ * Shared/WebsitePoliciesData.cpp: >+ (WebKit::WebsitePoliciesData::encode const): >+ (WebKit::WebsitePoliciesData::decode): >+ (WebKit::WebsitePoliciesData::applyToDocumentLoader): >+ * Shared/WebsitePoliciesData.h: >+ * UIProcess/API/APIWebsitePolicies.cpp: >+ (API::WebsitePolicies::data): >+ * UIProcess/API/APIWebsitePolicies.h: >+ * UIProcess/API/Cocoa/_WKWebsitePolicies.h: >+ * UIProcess/API/Cocoa/_WKWebsitePolicies.mm: >+ (-[_WKWebsitePolicies setCustomJavaScriptUserAgentAsSiteSpecificQuirks:]): Renamed from setCustomJavaScriptUserAgent. >+ (-[_WKWebsitePolicies customJavaScriptUserAgentAsSiteSpecificQuirks]): Renamed from customJavaScriptUserAgent. >+ > 2019-01-28 Brent Fulgham <bfulgham@apple.com> > > REGRESSION (r240498): Storage Access API prompts result is not remembered >diff --git a/Source/WebCore/loader/DocumentLoader.h b/Source/WebCore/loader/DocumentLoader.h >index f7c545751da53acf98be4800a1df191e68a2232b..ed3d21c1957258d7e34b8ac88368f2b5a29d8ca8 100644 >--- a/Source/WebCore/loader/DocumentLoader.h >+++ b/Source/WebCore/loader/DocumentLoader.h >@@ -271,8 +271,8 @@ public: > void setCustomUserAgent(const String& customUserAgent) { m_customUserAgent = customUserAgent; } > const String& customUserAgent() const { return m_customUserAgent; } > >- void setCustomJavaScriptUserAgent(const String& customJavaScriptUserAgent) { m_customJavaScriptUserAgent = customJavaScriptUserAgent; } >- const String& customJavaScriptUserAgent() const { return m_customJavaScriptUserAgent; } >+ void setCustomJavaScriptUserAgentAsSiteSpecificQuirks(const String& customUserAgent) { m_customJavaScriptUserAgentAsSiteSpecificQuirks = customUserAgent; } >+ const String& customJavaScriptUserAgentAsSiteSpecificQuirks() const { return m_customJavaScriptUserAgentAsSiteSpecificQuirks; } > > void setCustomNavigatorPlatform(const String& customNavigatorPlatform) { m_customNavigatorPlatform = customNavigatorPlatform; } > const String& customNavigatorPlatform() const { return m_customNavigatorPlatform; } >@@ -546,7 +546,7 @@ private: > HashMap<String, Vector<std::pair<String, uint32_t>>> m_pendingContentExtensionDisplayNoneSelectors; > #endif > String m_customUserAgent; >- String m_customJavaScriptUserAgent; >+ String m_customJavaScriptUserAgentAsSiteSpecificQuirks; > String m_customNavigatorPlatform; > bool m_userContentExtensionsEnabled { true }; > bool m_deviceOrientationEventEnabled { true }; >diff --git a/Source/WebCore/loader/FrameLoader.cpp b/Source/WebCore/loader/FrameLoader.cpp >index fb8cbadd47b2b367dc7abcea0661f094601dc177..960f5590c72c2d2ff5c961c95f9ae3464071c847 100644 >--- a/Source/WebCore/loader/FrameLoader.cpp >+++ b/Source/WebCore/loader/FrameLoader.cpp >@@ -2715,7 +2715,8 @@ String FrameLoader::userAgentForJavaScript(const URL& url) const > String userAgent; > > if (auto* documentLoader = m_frame.mainFrame().loader().activeDocumentLoader()) { >- userAgent = documentLoader->customJavaScriptUserAgent(); >+ if (m_frame.settings().needsSiteSpecificQuirks()) >+ userAgent = documentLoader->customJavaScriptUserAgentAsSiteSpecificQuirks(); > if (userAgent.isEmpty()) > userAgent = documentLoader->customUserAgent(); > } >diff --git a/Source/WebKit/Shared/WebsitePoliciesData.cpp b/Source/WebKit/Shared/WebsitePoliciesData.cpp >index 1d1181b1a9addafc5bab2ddcca7764ce626cf65d..6b3b02da9f662cb8997916ec08c2e7eb4c17fe12 100644 >--- a/Source/WebKit/Shared/WebsitePoliciesData.cpp >+++ b/Source/WebKit/Shared/WebsitePoliciesData.cpp >@@ -44,7 +44,7 @@ void WebsitePoliciesData::encode(IPC::Encoder& encoder) const > encoder << popUpPolicy; > encoder << websiteDataStoreParameters; > encoder << customUserAgent; >- encoder << customJavaScriptUserAgent; >+ encoder << customJavaScriptUserAgentAsSiteSpecificQuirks; > encoder << customNavigatorPlatform; > } > >@@ -90,9 +90,9 @@ Optional<WebsitePoliciesData> WebsitePoliciesData::decode(IPC::Decoder& decoder) > if (!customUserAgent) > return WTF::nullopt; > >- Optional<String> customJavaScriptUserAgent; >- decoder >> customJavaScriptUserAgent; >- if (!customJavaScriptUserAgent) >+ Optional<String> customJavaScriptUserAgentAsSiteSpecificQuirks; >+ decoder >> customJavaScriptUserAgentAsSiteSpecificQuirks; >+ if (!customJavaScriptUserAgentAsSiteSpecificQuirks) > return WTF::nullopt; > > Optional<String> customNavigatorPlatform; >@@ -109,7 +109,7 @@ Optional<WebsitePoliciesData> WebsitePoliciesData::decode(IPC::Decoder& decoder) > WTFMove(*popUpPolicy), > WTFMove(*websiteDataStoreParameters), > WTFMove(*customUserAgent), >- WTFMove(*customJavaScriptUserAgent), >+ WTFMove(*customJavaScriptUserAgentAsSiteSpecificQuirks), > WTFMove(*customNavigatorPlatform), > } }; > } >@@ -118,7 +118,7 @@ void WebsitePoliciesData::applyToDocumentLoader(WebsitePoliciesData&& websitePol > { > documentLoader.setCustomHeaderFields(WTFMove(websitePolicies.customHeaderFields)); > documentLoader.setCustomUserAgent(websitePolicies.customUserAgent); >- documentLoader.setCustomJavaScriptUserAgent(websitePolicies.customJavaScriptUserAgent); >+ documentLoader.setCustomJavaScriptUserAgentAsSiteSpecificQuirks(websitePolicies.customJavaScriptUserAgentAsSiteSpecificQuirks); > documentLoader.setCustomNavigatorPlatform(websitePolicies.customNavigatorPlatform); > documentLoader.setDeviceOrientationEventEnabled(websitePolicies.deviceOrientationEventEnabled); > >diff --git a/Source/WebKit/Shared/WebsitePoliciesData.h b/Source/WebKit/Shared/WebsitePoliciesData.h >index 506cda9fb8de341f6f7b5a545ebea0f524aa3c40..c2711a94a8cfb3e4b67cce8d9114ad6278bf1def 100644 >--- a/Source/WebKit/Shared/WebsitePoliciesData.h >+++ b/Source/WebKit/Shared/WebsitePoliciesData.h >@@ -54,7 +54,7 @@ struct WebsitePoliciesData { > WebsitePopUpPolicy popUpPolicy { WebsitePopUpPolicy::Default }; > Optional<WebsiteDataStoreParameters> websiteDataStoreParameters; > String customUserAgent; >- String customJavaScriptUserAgent; >+ String customJavaScriptUserAgentAsSiteSpecificQuirks; > String customNavigatorPlatform; > > void encode(IPC::Encoder&) const; >diff --git a/Source/WebKit/UIProcess/API/APIWebsitePolicies.cpp b/Source/WebKit/UIProcess/API/APIWebsitePolicies.cpp >index 52a1636b0bd83a59f0c7db2233bf7406c010159c..c63ce06fb732ff4073e6b13433d84a953e7d7cfb 100644 >--- a/Source/WebKit/UIProcess/API/APIWebsitePolicies.cpp >+++ b/Source/WebKit/UIProcess/API/APIWebsitePolicies.cpp >@@ -57,7 +57,7 @@ WebKit::WebsitePoliciesData WebsitePolicies::data() > if (m_websiteDataStore) > parameters = m_websiteDataStore->websiteDataStore().parameters(); > return { contentBlockersEnabled(), deviceOrientationEventEnabled(), allowedAutoplayQuirks(), autoplayPolicy(), >- customHeaderFields(), popUpPolicy(), WTFMove(parameters), m_customUserAgent, m_customJavaScriptUserAgent, m_customNavigatorPlatform }; >+ customHeaderFields(), popUpPolicy(), WTFMove(parameters), m_customUserAgent, m_customJavaScriptUserAgentAsSiteSpecificQuirks, m_customNavigatorPlatform }; > } > > } >diff --git a/Source/WebKit/UIProcess/API/APIWebsitePolicies.h b/Source/WebKit/UIProcess/API/APIWebsitePolicies.h >index ee7fd25c47886d8ad680bb1b3f507d41d2487220..347f37de7fe3a9f0d3867c0a1c5468352a553cf3 100644 >--- a/Source/WebKit/UIProcess/API/APIWebsitePolicies.h >+++ b/Source/WebKit/UIProcess/API/APIWebsitePolicies.h >@@ -75,8 +75,8 @@ public: > void setCustomUserAgent(const WTF::String& customUserAgent) { m_customUserAgent = customUserAgent; } > const WTF::String& customUserAgent() const { return m_customUserAgent; } > >- void setCustomJavaScriptUserAgent(const WTF::String& customJavaScriptUserAgent) { m_customJavaScriptUserAgent = customJavaScriptUserAgent; } >- const WTF::String& customJavaScriptUserAgent() const { return m_customJavaScriptUserAgent; } >+ void setCustomJavaScriptUserAgentAsSiteSpecificQuirks(const WTF::String& customUserAgent) { m_customJavaScriptUserAgentAsSiteSpecificQuirks = customUserAgent; } >+ const WTF::String& customJavaScriptUserAgentAsSiteSpecificQuirks() const { return m_customJavaScriptUserAgentAsSiteSpecificQuirks; } > > void setCustomNavigatorPlatform(const WTF::String& customNavigatorPlatform) { m_customNavigatorPlatform = customNavigatorPlatform; } > const WTF::String& customNavigatorPlatform() const { return m_customNavigatorPlatform; } >@@ -92,7 +92,7 @@ private: > WebKit::WebsitePopUpPolicy m_popUpPolicy { WebKit::WebsitePopUpPolicy::Default }; > RefPtr<WebsiteDataStore> m_websiteDataStore; > WTF::String m_customUserAgent; >- WTF::String m_customJavaScriptUserAgent; >+ WTF::String m_customJavaScriptUserAgentAsSiteSpecificQuirks; > WTF::String m_customNavigatorPlatform; > }; > >diff --git a/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.h b/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.h >index 3f5688c7250deed1bf0e745109c6a5da866bea49..f43cfd3659a6237f3fb1f38b7db5b1529babad66 100644 >--- a/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.h >+++ b/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.h >@@ -59,7 +59,7 @@ WK_CLASS_AVAILABLE(macosx(10.12.3), ios(10.3)) > @property (nonatomic) _WKWebsitePopUpPolicy popUpPolicy WK_API_AVAILABLE(macosx(10.14), ios(12.0)); > @property (nonatomic, strong) WKWebsiteDataStore *websiteDataStore WK_API_AVAILABLE(macosx(10.13.4), ios(11.3)); > @property (nonatomic, copy) NSString *customUserAgent WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA)); >-@property (nonatomic, copy) NSString *customJavaScriptUserAgent WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA)); >+@property (nonatomic, copy) NSString *customJavaScriptUserAgentAsSiteSpecificQuirks WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA)); > @property (nonatomic, copy) NSString *customNavigatorPlatform WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA)); > @property (nonatomic) BOOL deviceOrientationEventEnabled WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA)); > >diff --git a/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.mm b/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.mm >index fda88b0941844490b16787e008f618a154b991f6..dde107a7b4f514fc2268d0a3ad28e8a3483da98c 100644 >--- a/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.mm >+++ b/Source/WebKit/UIProcess/API/Cocoa/_WKWebsitePolicies.mm >@@ -209,14 +209,14 @@ - (NSString *)customUserAgent > return _websitePolicies->customUserAgent(); > } > >-- (void)setCustomJavaScriptUserAgent:(NSString *)customUserAgent >+- (void)setCustomJavaScriptUserAgentAsSiteSpecificQuirks:(NSString *)customUserAgent > { >- _websitePolicies->setCustomJavaScriptUserAgent(customUserAgent); >+ _websitePolicies->setCustomJavaScriptUserAgentAsSiteSpecificQuirks(customUserAgent); > } > >-- (NSString *)customJavaScriptUserAgent >+- (NSString *)customJavaScriptUserAgentAsSiteSpecificQuirks > { >- return _websitePolicies->customJavaScriptUserAgent(); >+ return _websitePolicies->customJavaScriptUserAgentAsSiteSpecificQuirks(); > } > > - (void)setCustomNavigatorPlatform:(NSString *)customNavigatorPlatform >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index f1d60cdee7414cb9faeaf3d433116213c1352463..51057797a2d554630d261fbfae32c2f9ef96ec9a 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,15 @@ >+2019-01-28 Ryosuke Niwa <rniwa@webkit.org> >+ >+ User agent string override for navigator.userAgent should be site specific quirks >+ https://bugs.webkit.org/show_bug.cgi?id=193950 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Updated per the _WKWebsitePolicies rename. >+ >+ * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm: >+ (-[CustomJavaScriptUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]): >+ > 2019-01-28 Chris Dumez <cdumez@apple.com> > > Regression(PSON) Crash under WebPageProxy::didStartProgress() >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm >index 5e4c7c586848a20dda492f0b9a9cb7fd37b60982..f202d942b4a5cba731b97e94095fa31a76ad6d9c 100644 >--- a/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm >@@ -1114,7 +1114,7 @@ - (void)_webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigat > { > _WKWebsitePolicies *websitePolicies = [[[_WKWebsitePolicies alloc] init] autorelease]; > if (navigationAction.targetFrame.mainFrame) { >- [websitePolicies setCustomJavaScriptUserAgent:@"Foo Custom JavaScript UserAgent"]; >+ [websitePolicies setCustomJavaScriptUserAgentAsSiteSpecificQuirks:@"Foo Custom JavaScript UserAgent"]; > if (_setCustomUserAgent) > [websitePolicies setCustomUserAgent:@"Foo Custom Request UserAgent"]; > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193950
:
360425
|
360429
|
360430
|
360437