diff --git a/browser_patches/webkit/BUILD_NUMBER b/browser_patches/webkit/BUILD_NUMBER index d84bb2950550f..765f5bf7fa7d1 100644 --- a/browser_patches/webkit/BUILD_NUMBER +++ b/browser_patches/webkit/BUILD_NUMBER @@ -1 +1 @@ -1149 +1150 diff --git a/browser_patches/webkit/UPSTREAM_CONFIG.sh b/browser_patches/webkit/UPSTREAM_CONFIG.sh index f70d6957e4d50..ed61da8452c13 100644 --- a/browser_patches/webkit/UPSTREAM_CONFIG.sh +++ b/browser_patches/webkit/UPSTREAM_CONFIG.sh @@ -1,3 +1,3 @@ REMOTE_URL="https://github.com/webkit/webkit" BASE_BRANCH="master" -BASE_REVISION="c7540e19eaa2224ba424b215802c3b9f68fc23bd" +BASE_REVISION="dd26eacc87436a7d494c9980aa9872fc83cf9dd7" diff --git a/browser_patches/webkit/patches/bootstrap.diff b/browser_patches/webkit/patches/bootstrap.diff index 1d2c0f0acdffb..284acf097e775 100644 --- a/browser_patches/webkit/patches/bootstrap.diff +++ b/browser_patches/webkit/patches/bootstrap.diff @@ -1510,10 +1510,10 @@ index 602f89a49d454cc5e5acd030024227d49d98c61f..41811e65bd0f15b443fb90d37ee4d0a2 WTF_EXPORT_PRIVATE LocalTimeOffset calculateLocalTimeOffset(double utcInMilliseconds, TimeType = UTCTime); diff --git a/Source/WTF/wtf/PlatformHave.h b/Source/WTF/wtf/PlatformHave.h -index 175b6f5ea8edc7ad1fd2c1f2e7f88f0ee7b26f68..b57c25d70a73e2c7330618b1701f630292439a00 100644 +index d24b85e2da241346e00b7337a59683be61020c28..3998c2ebe7f860195da802777308dd385b2c9b02 100644 --- a/Source/WTF/wtf/PlatformHave.h +++ b/Source/WTF/wtf/PlatformHave.h -@@ -373,7 +373,7 @@ +@@ -379,7 +379,7 @@ #define HAVE_NSHTTPCOOKIESTORAGE__INITWITHIDENTIFIER_WITH_INACCURATE_NULLABILITY 1 #endif @@ -1523,10 +1523,10 @@ index 175b6f5ea8edc7ad1fd2c1f2e7f88f0ee7b26f68..b57c25d70a73e2c7330618b1701f6302 #endif diff --git a/Source/WebCore/Modules/geolocation/Geolocation.cpp b/Source/WebCore/Modules/geolocation/Geolocation.cpp -index a256d2f8a42548c42ae3c955d9502cc0ad893d91..7e30dfcec151304b21b39286a841e38e35fa3ecf 100644 +index 6d5be9a591a272cd67d6e9d097b30505bdf8ae5e..8f67ba28c380e844c8e4191ee704466559d88f97 100644 --- a/Source/WebCore/Modules/geolocation/Geolocation.cpp +++ b/Source/WebCore/Modules/geolocation/Geolocation.cpp -@@ -355,8 +355,9 @@ bool Geolocation::shouldBlockGeolocationRequests() +@@ -356,8 +356,9 @@ bool Geolocation::shouldBlockGeolocationRequests() bool isSecure = SecurityOrigin::isSecure(document()->url()); bool hasMixedContent = !document()->foundMixedContent().isEmpty(); bool isLocalOrigin = securityOrigin()->isLocal(); @@ -1567,10 +1567,10 @@ index 6b30b4a06bab48ca69e4955e52cb4162bb20780f..ea94293a0bb15b4dd1aa85706f97030f void SessionID::enableGenerationProtection() diff --git a/Source/WebCore/SourcesCocoa.txt b/Source/WebCore/SourcesCocoa.txt -index 4de75df8df0b8f90e5b258157eada4a69d3b5916..51dc93bc25fdba7a971b3fdd4f1f380f5d6b48c5 100644 +index ab3a579490c93aa5230a64ce8b3896c9b910d285..ee82d8efe153a66bac4becf1885935236c1e124f 100644 --- a/Source/WebCore/SourcesCocoa.txt +++ b/Source/WebCore/SourcesCocoa.txt -@@ -644,7 +644,7 @@ WHLSLStandardLibraryFunctionMap.cpp +@@ -645,7 +645,7 @@ WHLSLStandardLibraryFunctionMap.cpp #endif @@ -1580,7 +1580,7 @@ index 4de75df8df0b8f90e5b258157eada4a69d3b5916..51dc93bc25fdba7a971b3fdd4f1f380f JSTouch.cpp JSTouchEvent.cpp diff --git a/Source/WebCore/WebCore.order b/Source/WebCore/WebCore.order -index 37d245e11e8bf3626523f076ea2b93d2c106e19b..93f4f64f705580535a8d3b077a9a15813647316a 100644 +index 34f1a72596fb89c8b647fff3348cca3d959c014c..ab6e42c4da2a8a77f66ce532a3a12bb9ee991207 100644 --- a/Source/WebCore/WebCore.order +++ b/Source/WebCore/WebCore.order @@ -3094,7 +3094,6 @@ __ZN7WebCore14DocumentLoader23stopLoadingSubresourcesEv @@ -1592,10 +1592,10 @@ index 37d245e11e8bf3626523f076ea2b93d2c106e19b..93f4f64f705580535a8d3b077a9a1581 __ZN7WebCore14DocumentLoaderD2Ev __ZN7WebCore14DocumentLoader17clearMainResourceEv diff --git a/Source/WebCore/WebCore.xcodeproj/project.pbxproj b/Source/WebCore/WebCore.xcodeproj/project.pbxproj -index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cabc5e01dc2 100644 +index f24ca354d6c9744d918c65dfa1a7d46c2407bd20..76b32e382007813e63ee3f43058ee426c0ef01da 100644 --- a/Source/WebCore/WebCore.xcodeproj/project.pbxproj +++ b/Source/WebCore/WebCore.xcodeproj/project.pbxproj -@@ -4946,6 +4946,14 @@ +@@ -4933,6 +4933,14 @@ EDE3A5000C7A430600956A37 /* ColorMac.h in Headers */ = {isa = PBXBuildFile; fileRef = EDE3A4FF0C7A430600956A37 /* ColorMac.h */; settings = {ATTRIBUTES = (Private, ); }; }; EDEC98030AED7E170059137F /* WebCorePrefix.h in Headers */ = {isa = PBXBuildFile; fileRef = EDEC98020AED7E170059137F /* WebCorePrefix.h */; }; EFCC6C8F20FE914400A2321B /* CanvasActivityRecord.h in Headers */ = {isa = PBXBuildFile; fileRef = EFCC6C8D20FE914000A2321B /* CanvasActivityRecord.h */; settings = {ATTRIBUTES = (Private, ); }; }; @@ -1610,7 +1610,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab F12171F516A8CED2000053CA /* WebVTTElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F12171F316A8BC63000053CA /* WebVTTElement.cpp */; }; F12171F616A8CF0B000053CA /* WebVTTElement.h in Headers */ = {isa = PBXBuildFile; fileRef = F12171F416A8BC63000053CA /* WebVTTElement.h */; }; F32BDCD92363AACA0073B6AE /* UserGestureEmulationScope.h in Headers */ = {isa = PBXBuildFile; fileRef = F32BDCD72363AACA0073B6AE /* UserGestureEmulationScope.h */; }; -@@ -15387,6 +15395,14 @@ +@@ -15376,6 +15384,14 @@ EDEC98020AED7E170059137F /* WebCorePrefix.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WebCorePrefix.h; sourceTree = ""; tabWidth = 4; usesTabs = 0; }; EFB7287B2124C73D005C2558 /* CanvasActivityRecord.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = CanvasActivityRecord.cpp; sourceTree = ""; }; EFCC6C8D20FE914000A2321B /* CanvasActivityRecord.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CanvasActivityRecord.h; sourceTree = ""; }; @@ -1625,7 +1625,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab F12171F316A8BC63000053CA /* WebVTTElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebVTTElement.cpp; sourceTree = ""; }; F12171F416A8BC63000053CA /* WebVTTElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebVTTElement.h; sourceTree = ""; }; F32BDCD52363AAC90073B6AE /* UserGestureEmulationScope.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UserGestureEmulationScope.cpp; sourceTree = ""; }; -@@ -20603,7 +20619,12 @@ +@@ -20608,7 +20624,12 @@ 2D2E34A921A4E191004598B5 /* EditableImageReference.h */, 1AF326770D78B9440068F0C4 /* EditorClient.h */, 93C09A800B064F00005ABD4D /* EventHandler.cpp */, @@ -1638,9 +1638,9 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab E0FEF371B27C53EAC1C1FBEE /* EventSource.cpp */, E0FEF371B17C53EAC1C1FBEE /* EventSource.h */, E0FEF371B07C53EAC1C1FBEE /* EventSource.idl */, -@@ -25822,7 +25843,9 @@ +@@ -25825,7 +25846,9 @@ + 1A2E6E560CC551E0004A2062 /* sql */, B2C3D9EC0D006C1D00EF6F26 /* text */, - E188235F2031F50F00B42DF3 /* vr */, DFDB912CF8E88A6DA1AD264F /* AbortableTaskQueue.h */, + F050E16623AC9C070011CE47 /* PlatformTouchEvent.h */, 49AE2D94134EE5F90072920A /* CalculationValue.cpp */, @@ -1656,7 +1656,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab 6BDB5DC1227BD3B800919770 /* DocumentStorageAccess.cpp */, 6BDB5DC0227BD3B800919770 /* DocumentStorageAccess.h */, 6BDB5DC5227CA0EB00919770 /* DocumentStorageAccess.idl */, -@@ -28925,6 +28949,7 @@ +@@ -28923,6 +28947,7 @@ 93C4F6EB1108F9A50099D0DB /* AccessibilityScrollbar.h in Headers */, 29489FC712C00F0300D83F0F /* AccessibilityScrollView.h in Headers */, 0709FC4E1025DEE30059CDBA /* AccessibilitySlider.h in Headers */, @@ -1672,7 +1672,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab 7C3D8EF01E0B21430023B084 /* JSIDBCursorDirection.h in Headers */, C585A68311D4FB08004C3E4B /* JSIDBDatabase.h in Headers */, C585A69711D4FB13004C3E4B /* JSIDBFactory.h in Headers */, -@@ -32674,9 +32700,11 @@ +@@ -32664,9 +32690,11 @@ A7DBF8DE1276919C006B6008 /* TextCheckingHelper.h in Headers */, B2C3DA3A0D006C1D00EF6F26 /* TextCodec.h in Headers */, 26E98A10130A9FCA008EB7B2 /* TextCodecASCIIFastPath.h in Headers */, @@ -1684,7 +1684,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab B2C3DA400D006C1D00EF6F26 /* TextCodecUserDefined.h in Headers */, B2C3DA420D006C1D00EF6F26 /* TextCodecUTF16.h in Headers */, 9343CB8212F25E510033C5EE /* TextCodecUTF8.h in Headers */, -@@ -33560,6 +33588,7 @@ +@@ -33547,6 +33575,7 @@ CDDE02ED18B3ED6D00CF7FF1 /* CDMSessionAVFoundationObjC.mm in Sources */, CDDE02F018B5651300CF7FF1 /* CDMSessionAVStreamSession.mm in Sources */, CDE5959D1BF2757100A1CBE8 /* CDMSessionMediaSourceAVFObjC.mm in Sources */, @@ -1692,7 +1692,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab A14090FB1AA51E1D0091191A /* ContentFilterUnblockHandlerCocoa.mm in Sources */, 07AFF4231EFB144900B545B3 /* CoreAudioCaptureSourceIOS.mm in Sources */, 46C696CC1E7205FC00597937 /* CPUMonitor.cpp in Sources */, -@@ -33633,6 +33662,7 @@ +@@ -33620,6 +33649,7 @@ 51058ADF1D67C229009A538C /* MockGamepad.cpp in Sources */, 51058AE11D67C229009A538C /* MockGamepadProvider.cpp in Sources */, CDF2B0121820540600F2B424 /* MockMediaPlayerMediaSource.cpp in Sources */, @@ -1700,7 +1700,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab CDF2B0141820540600F2B424 /* MockMediaSourcePrivate.cpp in Sources */, CDF2B0161820540700F2B424 /* MockSourceBufferPrivate.cpp in Sources */, 2D9BF7421DBFDC27007A7D99 /* NavigatorEME.cpp in Sources */, -@@ -33718,6 +33748,7 @@ +@@ -33705,6 +33735,7 @@ 538EC8881F993F9C004D22A8 /* UnifiedSource23.cpp in Sources */, DE5F85801FA1ABF4006DB63A /* UnifiedSource24-mm.mm in Sources */, 538EC8891F993F9D004D22A8 /* UnifiedSource24.cpp in Sources */, @@ -1708,7 +1708,7 @@ index febf05eb059728f6bea981934626000f8cb50ae4..53e885485030ef6818d3214ced5f4cab DE5F85811FA1ABF4006DB63A /* UnifiedSource25-mm.mm in Sources */, 538EC88A1F993F9D004D22A8 /* UnifiedSource25.cpp in Sources */, DE5F85821FA1ABF4006DB63A /* UnifiedSource26-mm.mm in Sources */, -@@ -34250,6 +34281,7 @@ +@@ -34237,6 +34268,7 @@ 2D8B92F1203D13E1009C868F /* UnifiedSource516.cpp in Sources */, 2D8B92F2203D13E1009C868F /* UnifiedSource517.cpp in Sources */, 2D8B92F3203D13E1009C868F /* UnifiedSource518.cpp in Sources */, @@ -3873,10 +3873,10 @@ index 2af3739b7fe7c16faa7d8d2797ce6d010215398d..80bfde6120874e16fb173f707fd0bd8a Page& m_inspectedPage; diff --git a/Source/WebCore/loader/DocumentLoader.cpp b/Source/WebCore/loader/DocumentLoader.cpp -index bc6b90e63d96bc6323d6fb65f62bf0670e7342ca..46c1ad58589e2b074556ca4ad9bccce2279036e7 100644 +index da50315d2160833e02ab19b250ea19ab652246a9..f93887308eba26272449efd1c48afa68d77c4408 100644 --- a/Source/WebCore/loader/DocumentLoader.cpp +++ b/Source/WebCore/loader/DocumentLoader.cpp -@@ -1285,8 +1285,6 @@ void DocumentLoader::detachFromFrame() +@@ -1286,8 +1286,6 @@ void DocumentLoader::detachFromFrame() if (!m_frame) return; @@ -3904,10 +3904,10 @@ index d6a3d0acd246de70cb485880a04b38941c832f65..61c8d5478f5eefccf88532bebf69b94d DocumentWriter& writer() const { return m_writer; } diff --git a/Source/WebCore/loader/FrameLoader.cpp b/Source/WebCore/loader/FrameLoader.cpp -index 1055d571528544d602b6a5ba68c1b7c12d2d581b..b64d3ed07ebd3a2e60b426081a6c4afc80877127 100644 +index 8cf9c5c47cea3ad27f282b5d73cfd5d6e3e7834a..f2daacccff023dbdd8de311e717780fbef3cb318 100644 --- a/Source/WebCore/loader/FrameLoader.cpp +++ b/Source/WebCore/loader/FrameLoader.cpp -@@ -1180,6 +1180,7 @@ void FrameLoader::loadInSameDocument(const URL& url, SerializedScriptValue* stat +@@ -1178,6 +1178,7 @@ void FrameLoader::loadInSameDocument(const URL& url, SerializedScriptValue* stat } m_client.dispatchDidNavigateWithinPage(); @@ -3915,7 +3915,7 @@ index 1055d571528544d602b6a5ba68c1b7c12d2d581b..b64d3ed07ebd3a2e60b426081a6c4afc m_frame.document()->statePopped(stateObject ? Ref { *stateObject } : SerializedScriptValue::nullValue()); m_client.dispatchDidPopStateWithinPage(); -@@ -1365,6 +1366,8 @@ void FrameLoader::loadURL(FrameLoadRequest&& frameLoadRequest, const String& ref +@@ -1363,6 +1364,8 @@ void FrameLoader::loadURL(FrameLoadRequest&& frameLoadRequest, const String& ref ASSERT(newLoadType != FrameLoadType::Same); @@ -3924,7 +3924,7 @@ index 1055d571528544d602b6a5ba68c1b7c12d2d581b..b64d3ed07ebd3a2e60b426081a6c4afc // The search for a target frame is done earlier in the case of form submission. Frame* targetFrame = isFormSubmission ? nullptr : findFrameForNavigation(effectiveFrameName); if (targetFrame && targetFrame != &m_frame) { -@@ -1599,6 +1602,8 @@ void FrameLoader::loadWithDocumentLoader(DocumentLoader* loader, FrameLoadType t +@@ -1597,6 +1600,8 @@ void FrameLoader::loadWithDocumentLoader(DocumentLoader* loader, FrameLoadType t const String& httpMethod = loader->request().httpMethod(); if (shouldPerformFragmentNavigation(isFormSubmission, httpMethod, policyChecker().loadType(), newURL)) { @@ -3933,7 +3933,7 @@ index 1055d571528544d602b6a5ba68c1b7c12d2d581b..b64d3ed07ebd3a2e60b426081a6c4afc RefPtr oldDocumentLoader = m_documentLoader; NavigationAction action { *m_frame.document(), loader->request(), InitiatedByMainFrame::Unknown, policyChecker().loadType(), isFormSubmission }; -@@ -3186,6 +3191,8 @@ void FrameLoader::receivedMainResourceError(const ResourceError& error) +@@ -3182,6 +3187,8 @@ void FrameLoader::receivedMainResourceError(const ResourceError& error) checkCompleted(); if (m_frame.page()) checkLoadComplete(); @@ -3942,7 +3942,7 @@ index 1055d571528544d602b6a5ba68c1b7c12d2d581b..b64d3ed07ebd3a2e60b426081a6c4afc } void FrameLoader::continueFragmentScrollAfterNavigationPolicy(const ResourceRequest& request, bool shouldContinue) -@@ -3948,24 +3955,29 @@ String FrameLoader::referrer() const +@@ -3944,24 +3951,29 @@ String FrameLoader::referrer() const void FrameLoader::dispatchDidClearWindowObjectsInAllWorlds() { @@ -4179,7 +4179,7 @@ index 9e6b7fe76ee6d1a92c0f37c1a80daf9e651a6b3d..23571ae7294cb335065ad94818622aa1 Ref Frame::create(Page* page, HTMLFrameOwnerElement* ownerElement, FrameLoaderClient* client) diff --git a/Source/WebCore/page/FrameView.cpp b/Source/WebCore/page/FrameView.cpp -index d9ac1c257709866198c11b068f6348c8dbc8bb2c..96faf07a2f01129b18b1e34354516e7e815dd087 100644 +index 41aa08b78e83e0804d947de06cdbdbd06c8f2653..6d2ab607c50b4801d297f17902a737928b66ec75 100644 --- a/Source/WebCore/page/FrameView.cpp +++ b/Source/WebCore/page/FrameView.cpp @@ -3033,7 +3033,7 @@ void FrameView::setBaseBackgroundColor(const Color& backgroundColor) @@ -4956,7 +4956,7 @@ index 5cf1e1ea2a712a7033e8390da781283c620b1caa..d02ca0e5e1dc14ca99a2676c1304ee43 void NetworkStorageSession::getHostnamesWithCookies(HashSet& hostnames) diff --git a/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp b/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp -index 947e23e5a22162e716b5a3203f4bb2956d9774c0..12606e71350a409586357f463a9b3b4c8be4b2fa 100644 +index 3ee77ec5f759857c6742780e8602694ec1ba9847..c4f09e6ab9f5bf205bc7c40cc59d016dcba780bc 100644 --- a/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp +++ b/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp @@ -413,8 +413,13 @@ void NetworkStorageSession::getHostnamesWithCookies(HashSet& hostnames) @@ -5537,10 +5537,10 @@ index 88d53d236cd6d62735f03678a04ca9c198dddacb..b8f8efc57ab00dc5725660c5a8ad56a3 return WebTouchEvent(); } diff --git a/Source/WebKit/Sources.txt b/Source/WebKit/Sources.txt -index 53109203ca22cb5f5db9351f9c236e053ab1e009..6e575ab04ab8ee65cc38a59e3be0b05809b987d0 100644 +index 74894bd27baf58951e6af241c87998bc5c5ebae8..62023de36cbe26be32fbf8f4db248bca53b15a5f 100644 --- a/Source/WebKit/Sources.txt +++ b/Source/WebKit/Sources.txt -@@ -261,16 +261,21 @@ Shared/WebsiteData/WebsiteData.cpp +@@ -262,16 +262,21 @@ Shared/WebsiteData/WebsiteData.cpp UIProcess/AuxiliaryProcessProxy.cpp UIProcess/BackgroundProcessResponsivenessTimer.cpp @@ -5562,7 +5562,7 @@ index 53109203ca22cb5f5db9351f9c236e053ab1e009..6e575ab04ab8ee65cc38a59e3be0b058 UIProcess/ResponsivenessTimer.cpp UIProcess/StatisticsRequest.cpp UIProcess/SuspendedPageProxy.cpp -@@ -308,6 +313,8 @@ UIProcess/WebOpenPanelResultListenerProxy.cpp +@@ -309,6 +314,8 @@ UIProcess/WebOpenPanelResultListenerProxy.cpp UIProcess/WebPageDiagnosticLoggingClient.cpp UIProcess/WebPageGroup.cpp UIProcess/WebPageInjectedBundleClient.cpp @@ -5572,7 +5572,7 @@ index 53109203ca22cb5f5db9351f9c236e053ab1e009..6e575ab04ab8ee65cc38a59e3be0b058 UIProcess/WebPasteboardProxy.cpp UIProcess/WebPreferences.cpp diff --git a/Source/WebKit/SourcesCocoa.txt b/Source/WebKit/SourcesCocoa.txt -index eaa0d84fa5cfa740d27b78b907ec9569931cb0dc..b26a0c9ed6eea66c741bb17c599cd7940b82241d 100644 +index e1fc6f7372b1603e5dd25eb0a4a601c6c9be23ea..b67bad92c75c2b1d76514b820b9dfccce79d0347 100644 --- a/Source/WebKit/SourcesCocoa.txt +++ b/Source/WebKit/SourcesCocoa.txt @@ -247,6 +247,7 @@ UIProcess/API/Cocoa/_WKApplicationManifest.mm @@ -5735,10 +5735,10 @@ index 026121d114c5fcad84c1396be8d692625beaa3bd..1f707641766b51e3bddcdde0c49ee8cf } #endif diff --git a/Source/WebKit/UIProcess/API/C/WKPage.cpp b/Source/WebKit/UIProcess/API/C/WKPage.cpp -index eccf4ae35661968057a7cfeeb2d95431e92444da..210d705e8a108df6c4d09f9827a1ab67d8aeba2e 100644 +index d7279554675b31a64e5edc1f6f3c83db17929856..8a9b018ae491d7538566ed2771fac46b6d325f57 100644 --- a/Source/WebKit/UIProcess/API/C/WKPage.cpp +++ b/Source/WebKit/UIProcess/API/C/WKPage.cpp -@@ -1675,6 +1675,13 @@ void WKPageSetPageUIClient(WKPageRef pageRef, const WKPageUIClientBase* wkClient +@@ -1676,6 +1676,13 @@ void WKPageSetPageUIClient(WKPageRef pageRef, const WKPageUIClientBase* wkClient completionHandler(String()); } @@ -5752,7 +5752,7 @@ index eccf4ae35661968057a7cfeeb2d95431e92444da..210d705e8a108df6c4d09f9827a1ab67 void setStatusText(WebPageProxy* page, const String& text) final { if (!m_client.setStatusText) -@@ -1735,6 +1742,8 @@ void WKPageSetPageUIClient(WKPageRef pageRef, const WKPageUIClientBase* wkClient +@@ -1736,6 +1743,8 @@ void WKPageSetPageUIClient(WKPageRef pageRef, const WKPageUIClientBase* wkClient { if (!m_client.didNotHandleKeyEvent) return; @@ -6360,10 +6360,10 @@ index 5ab7574c9378f52db87ce75157627c04e9b2e962..5322d725238f5989c04b045615a2de81 bool webkitWebViewIsScriptDialogRunning(WebKitWebView*, WebKitScriptDialog*); String webkitWebViewGetCurrentScriptDialogMessage(WebKitWebView*); diff --git a/Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp b/Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp -index 7ac9a98970e4c310e090949e76edd59897a46b55..3ad74889f240aeccd50d57580981ef050b9e73b2 100644 +index a68a30983f609d925b45ee16fbe34110b6cabe95..533f45fe6810509b8a0e1823087011a86510770a 100644 --- a/Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp +++ b/Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp -@@ -224,6 +224,8 @@ void PageClientImpl::doneWithKeyEvent(const NativeWebKeyboardEvent& event, bool +@@ -230,6 +230,8 @@ void PageClientImpl::doneWithKeyEvent(const NativeWebKeyboardEvent& event, bool { if (wasEventHandled) return; @@ -7125,7 +7125,7 @@ index a3d0ded6df0566cb74493f98ec28bce0e8d893b3..a4d9a214407eb2c55c07a10b700abbb2 { auto delegate = m_uiDelegate.m_delegate.get(); diff --git a/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm b/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm -index 4b49212c1386d346571966a4baa9631a2d933f3b..9d428c1f6c5fe5bf5c554e8a2e5edc3e89892b18 100644 +index f154a4e6fdfbe1dbcb23f07d329c7ae22bebd7f6..2a6ce63aa57d7a970cf5a8160e072d0dc9c24b82 100644 --- a/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm +++ b/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm @@ -130,6 +130,13 @@ static void registerUserDefaultsIfNeeded() @@ -8936,7 +8936,7 @@ index 0000000000000000000000000000000000000000..b1307da8b9ee02d63ef98d276473d65a + +#endif // ENABLE(REMOTE_INSPECTOR) diff --git a/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp b/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp -index 3db63ef6bd5ea32b296ac046aa43a0d1497c5e74..4f04cf936b5521fd9528942fd5027b611421884d 100644 +index 73626cc05027ae6e21b28143bc8009b92b1a75b4..52516a7f781c1a39376f9f78ab2f4749025bd34f 100644 --- a/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp +++ b/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp @@ -35,6 +35,7 @@ @@ -8944,14 +8944,14 @@ index 3db63ef6bd5ea32b296ac046aa43a0d1497c5e74..4f04cf936b5521fd9528942fd5027b61 #include "WebPageProxy.h" #include "WebPreferencesKeys.h" +#include "WebProcessProxy.h" + #include #include #include - #include diff --git a/Source/WebKit/UIProcess/WebGeolocationManagerProxy.cpp b/Source/WebKit/UIProcess/WebGeolocationManagerProxy.cpp -index 846a5aa27dfab3d274cffa4873861f2587d17fd8..cf0dc99f5601636c48abff09cd47ace49d127a08 100644 +index 04f3227cd55c992a42cd96a3f25d697aed7965a2..f0d36935f47bab03ea2ec50b705092068ecd3efa 100644 --- a/Source/WebKit/UIProcess/WebGeolocationManagerProxy.cpp +++ b/Source/WebKit/UIProcess/WebGeolocationManagerProxy.cpp -@@ -118,7 +118,8 @@ void WebGeolocationManagerProxy::startUpdating(IPC::Connection& connection) +@@ -128,7 +128,8 @@ void WebGeolocationManagerProxy::startUpdating(IPC::Connection& connection, WebP if (!wasUpdating) { m_provider->setEnableHighAccuracy(*this, isHighAccuracyEnabled()); m_provider->startUpdating(*this); @@ -9493,7 +9493,7 @@ index 0000000000000000000000000000000000000000..76290475097e756e3d932d22be4d8c79 + +} // namespace WebKit diff --git a/Source/WebKit/UIProcess/WebPageProxy.cpp b/Source/WebKit/UIProcess/WebPageProxy.cpp -index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e125b9d5c2 100644 +index 7522ef16feaeb3a8ea3b28aa386c5bf9afc987ea..7174848efe270f63bcad709f66f8200619c4a58d 100644 --- a/Source/WebKit/UIProcess/WebPageProxy.cpp +++ b/Source/WebKit/UIProcess/WebPageProxy.cpp @@ -905,6 +905,7 @@ void WebPageProxy::finishAttachingToWebProcess(ProcessLaunchReason reason) @@ -9526,7 +9526,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 RefPtr WebPageProxy::loadRequest(ResourceRequest&& request, ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicy, API::Object* userData) { if (m_isClosed) -@@ -1680,6 +1696,31 @@ void WebPageProxy::setControlledByAutomation(bool controlled) +@@ -1691,6 +1707,31 @@ void WebPageProxy::setControlledByAutomation(bool controlled) m_process->processPool().sendToNetworkingProcess(Messages::NetworkProcess::SetSessionIsControlledByAutomation(m_websiteDataStore->sessionID(), m_controlledByAutomation)); } @@ -9558,7 +9558,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 void WebPageProxy::createInspectorTarget(const String& targetId, Inspector::InspectorTargetType type) { MESSAGE_CHECK(m_process, !targetId.isEmpty()); -@@ -1822,6 +1863,25 @@ void WebPageProxy::updateActivityState(OptionSet flagsToUpd +@@ -1833,6 +1874,25 @@ void WebPageProxy::updateActivityState(OptionSet flagsToUpd { bool wasVisible = isViewVisible(); m_activityState.remove(flagsToUpdate); @@ -9584,7 +9584,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 if (flagsToUpdate & ActivityState::IsFocused && pageClient().isViewFocused()) m_activityState.add(ActivityState::IsFocused); if (flagsToUpdate & ActivityState::WindowIsActive && pageClient().isViewWindowActive()) -@@ -2767,7 +2827,7 @@ static TrackingType mergeTrackingTypes(TrackingType a, TrackingType b) +@@ -2778,7 +2838,7 @@ static TrackingType mergeTrackingTypes(TrackingType a, TrackingType b) void WebPageProxy::updateTouchEventTracking(const WebTouchEvent& touchStartEvent) { @@ -9593,7 +9593,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 const EventNames& names = eventNames(); for (auto& touchPoint : touchStartEvent.touchPoints()) { IntPoint location = touchPoint.location(); -@@ -2800,7 +2860,7 @@ void WebPageProxy::updateTouchEventTracking(const WebTouchEvent& touchStartEvent +@@ -2811,7 +2871,7 @@ void WebPageProxy::updateTouchEventTracking(const WebTouchEvent& touchStartEvent m_touchAndPointerEventTracking.touchStartTracking = TrackingType::Synchronous; m_touchAndPointerEventTracking.touchMoveTracking = TrackingType::Synchronous; m_touchAndPointerEventTracking.touchEndTracking = TrackingType::Synchronous; @@ -9602,7 +9602,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 } TrackingType WebPageProxy::touchEventTrackingType(const WebTouchEvent& touchStartEvent) const -@@ -3135,6 +3195,7 @@ void WebPageProxy::receivedNavigationPolicyDecision(PolicyAction policyAction, A +@@ -3146,6 +3206,7 @@ void WebPageProxy::receivedNavigationPolicyDecision(PolicyAction policyAction, A void WebPageProxy::receivedPolicyDecision(PolicyAction action, API::Navigation* navigation, Optional&& websitePolicies, Ref&& sender, WillContinueLoadInNewProcess willContinueLoadInNewProcess) { @@ -9610,7 +9610,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 if (!hasRunningProcess()) { sender->send(PolicyAction::Ignore, 0, DownloadID(), WTF::nullopt); return; -@@ -3819,6 +3880,11 @@ void WebPageProxy::pageScaleFactorDidChange(double scaleFactor) +@@ -3830,6 +3891,11 @@ void WebPageProxy::pageScaleFactorDidChange(double scaleFactor) m_pageScaleFactor = scaleFactor; } @@ -9622,7 +9622,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 void WebPageProxy::pluginScaleFactorDidChange(double pluginScaleFactor) { m_pluginScaleFactor = pluginScaleFactor; -@@ -4228,6 +4294,7 @@ void WebPageProxy::didDestroyNavigation(uint64_t navigationID) +@@ -4242,6 +4308,7 @@ void WebPageProxy::didDestroyNavigation(uint64_t navigationID) // FIXME: Message check the navigationID. m_navigationState->didDestroyNavigation(navigationID); @@ -9630,7 +9630,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 } void WebPageProxy::didStartProvisionalLoadForFrame(FrameIdentifier frameID, uint64_t navigationID, URL&& url, URL&& unreachableURL, const UserData& userData) -@@ -4449,6 +4516,8 @@ void WebPageProxy::didFailProvisionalLoadForFrameShared(Ref&& p +@@ -4465,6 +4532,8 @@ void WebPageProxy::didFailProvisionalLoadForFrameShared(Ref&& p m_failingProvisionalLoadURL = { }; @@ -9639,7 +9639,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 // If the provisional page's load fails then we destroy the provisional page. if (m_provisionalPage && m_provisionalPage->mainFrame() == frame && willContinueLoading == WillContinueLoading::No) m_provisionalPage = nullptr; -@@ -4886,8 +4955,16 @@ void WebPageProxy::decidePolicyForNavigationActionAsync(FrameIdentifier frameID, +@@ -4907,8 +4976,16 @@ void WebPageProxy::decidePolicyForNavigationActionAsync(FrameIdentifier frameID, NavigationActionData&& navigationActionData, FrameInfoData&& frameInfoData, Optional originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request, IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, uint64_t listenerID) { @@ -9658,7 +9658,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 } void WebPageProxy::decidePolicyForNavigationActionAsyncShared(Ref&& process, PageIdentifier webPageID, FrameIdentifier frameID, WebCore::SecurityOriginData&& frameSecurityOrigin, -@@ -5459,6 +5536,8 @@ void WebPageProxy::runJavaScriptAlert(FrameIdentifier frameID, SecurityOriginDat +@@ -5480,6 +5557,8 @@ void WebPageProxy::runJavaScriptAlert(FrameIdentifier frameID, SecurityOriginDat if (auto* automationSession = process().processPool().automationSession()) automationSession->willShowJavaScriptDialog(*this); } @@ -9667,7 +9667,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 m_uiClient->runJavaScriptAlert(*this, message, frame, WTFMove(securityOrigin), WTFMove(reply)); } -@@ -5478,6 +5557,8 @@ void WebPageProxy::runJavaScriptConfirm(FrameIdentifier frameID, SecurityOriginD +@@ -5499,6 +5578,8 @@ void WebPageProxy::runJavaScriptConfirm(FrameIdentifier frameID, SecurityOriginD if (auto* automationSession = process().processPool().automationSession()) automationSession->willShowJavaScriptDialog(*this); } @@ -9676,7 +9676,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 m_uiClient->runJavaScriptConfirm(*this, message, frame, WTFMove(securityOrigin), WTFMove(reply)); } -@@ -5497,6 +5578,8 @@ void WebPageProxy::runJavaScriptPrompt(FrameIdentifier frameID, SecurityOriginDa +@@ -5518,6 +5599,8 @@ void WebPageProxy::runJavaScriptPrompt(FrameIdentifier frameID, SecurityOriginDa if (auto* automationSession = process().processPool().automationSession()) automationSession->willShowJavaScriptDialog(*this); } @@ -9685,7 +9685,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 m_uiClient->runJavaScriptPrompt(*this, message, defaultValue, frame, WTFMove(securityOrigin), WTFMove(reply)); } -@@ -5656,6 +5739,8 @@ void WebPageProxy::runBeforeUnloadConfirmPanel(FrameIdentifier frameID, Security +@@ -5677,6 +5760,8 @@ void WebPageProxy::runBeforeUnloadConfirmPanel(FrameIdentifier frameID, Security return; } } @@ -9694,7 +9694,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 // Since runBeforeUnloadConfirmPanel() can spin a nested run loop we need to turn off the responsiveness timer and the tryClose timer. m_process->stopResponsivenessTimer(); -@@ -6715,6 +6800,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) +@@ -6736,6 +6821,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) if (auto* automationSession = process().processPool().automationSession()) automationSession->mouseEventsFlushedForPage(*this); didFinishProcessingAllPendingMouseEvents(); @@ -9702,7 +9702,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 } break; -@@ -6741,7 +6827,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) +@@ -6762,7 +6848,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) case WebEvent::RawKeyDown: case WebEvent::Char: { LOG(KeyHandling, "WebPageProxy::didReceiveEvent: %s (queue empty %d)", webKeyboardEventTypeString(type), m_keyEventQueue.isEmpty()); @@ -9710,7 +9710,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 MESSAGE_CHECK(m_process, !m_keyEventQueue.isEmpty()); NativeWebKeyboardEvent event = m_keyEventQueue.takeFirst(); -@@ -6761,7 +6846,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) +@@ -6782,7 +6867,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) // The call to doneWithKeyEvent may close this WebPage. // Protect against this being destroyed. Ref protect(*this); @@ -9718,7 +9718,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 pageClient().doneWithKeyEvent(event, handled); if (!handled) m_uiClient->didNotHandleKeyEvent(this, event); -@@ -6770,6 +6854,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) +@@ -6791,6 +6875,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) if (!canProcessMoreKeyEvents) { if (auto* automationSession = process().processPool().automationSession()) automationSession->keyboardEventsFlushedForPage(*this); @@ -9726,7 +9726,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 } break; } -@@ -7238,8 +7323,10 @@ static bool shouldReloadAfterProcessTermination(ProcessTerminationReason reason) +@@ -7259,8 +7344,10 @@ static bool shouldReloadAfterProcessTermination(ProcessTerminationReason reason) void WebPageProxy::dispatchProcessDidTerminate(ProcessTerminationReason reason) { RELEASE_LOG_IF_ALLOWED(Loading, "dispatchProcessDidTerminate: reason = %d", reason); @@ -9738,7 +9738,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 if (m_loaderClient) handledByClient = reason != ProcessTerminationReason::RequestedByClient && m_loaderClient->processDidCrash(*this); else -@@ -7712,6 +7799,14 @@ void WebPageProxy::gamepadActivity(const Vector& gamepadDatas, bool +@@ -7733,6 +7820,14 @@ void WebPageProxy::gamepadActivity(const Vector& gamepadDatas, bool void WebPageProxy::didReceiveAuthenticationChallengeProxy(Ref&& authenticationChallenge, NegotiatedLegacyTLS negotiatedLegacyTLS) { @@ -9753,7 +9753,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 if (negotiatedLegacyTLS == NegotiatedLegacyTLS::Yes) { m_navigationClient->shouldAllowLegacyTLS(*this, authenticationChallenge.get(), [this, protectedThis = makeRef(*this), authenticationChallenge = authenticationChallenge.copyRef()] (bool shouldAllowLegacyTLS) { if (shouldAllowLegacyTLS) -@@ -7794,7 +7889,8 @@ void WebPageProxy::requestGeolocationPermissionForFrame(uint64_t geolocationID, +@@ -7815,7 +7910,8 @@ void WebPageProxy::requestGeolocationPermissionForFrame(uint64_t geolocationID, MESSAGE_CHECK(m_process, securityOriginData); // FIXME: Geolocation should probably be using toString() as its string representation instead of databaseIdentifier(). @@ -9763,7 +9763,7 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 auto request = m_geolocationPermissionRequestManager.createRequest(geolocationID); Function completionHandler = [request = WTFMove(request)](bool allowed) { if (allowed) -@@ -7802,6 +7898,11 @@ void WebPageProxy::requestGeolocationPermissionForFrame(uint64_t geolocationID, +@@ -7823,6 +7919,11 @@ void WebPageProxy::requestGeolocationPermissionForFrame(uint64_t geolocationID, else request->deny(); }; @@ -9776,10 +9776,10 @@ index 059e904a16c6c4b91d6271e25d239b975191facd..3e34d7518ceb3208700101f320bd17e1 // FIXME: Once iOS migrates to the new WKUIDelegate SPI, clean this up // and make it one UIClient call that calls the completionHandler with false diff --git a/Source/WebKit/UIProcess/WebPageProxy.h b/Source/WebKit/UIProcess/WebPageProxy.h -index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816ec6a3435 100644 +index a670856d71ea68c3f5eefa08c0e7c1bf51fe0202..53a5310ee849b15c4badafa7aed61509498c514c 100644 --- a/Source/WebKit/UIProcess/WebPageProxy.h +++ b/Source/WebKit/UIProcess/WebPageProxy.h -@@ -35,6 +35,7 @@ +@@ -36,6 +36,7 @@ #include "FocusedElementInformation.h" #include "GeolocationPermissionRequestManagerProxy.h" #include "HiddenPageThrottlingAutoIncreasesCounter.h" @@ -9787,7 +9787,7 @@ index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816 #include "LayerTreeContext.h" #include "MessageSender.h" #include "NotificationPermissionRequestManagerProxy.h" -@@ -489,6 +490,8 @@ public: +@@ -491,6 +492,8 @@ public: void setControlledByAutomation(bool); WebPageInspectorController& inspectorController() { return *m_inspectorController; } @@ -9796,7 +9796,7 @@ index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816 #if PLATFORM(IOS_FAMILY) void showInspectorIndication(); -@@ -555,6 +558,11 @@ public: +@@ -557,6 +560,11 @@ public: void setPageLoadStateObserver(std::unique_ptr&&); @@ -9808,7 +9808,7 @@ index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816 void initializeWebPage(); void setDrawingArea(std::unique_ptr&&); -@@ -580,6 +588,7 @@ public: +@@ -582,6 +590,7 @@ public: void closePage(); void addPlatformLoadParameters(LoadParameters&); @@ -9816,7 +9816,7 @@ index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816 RefPtr loadRequest(WebCore::ResourceRequest&&, WebCore::ShouldOpenExternalURLsPolicy = WebCore::ShouldOpenExternalURLsPolicy::ShouldAllowExternalSchemes, API::Object* userData = nullptr); RefPtr loadFile(const String& fileURL, const String& resourceDirectoryURL, API::Object* userData = nullptr); RefPtr loadData(const IPC::DataReference&, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData = nullptr, WebCore::ShouldOpenExternalURLsPolicy = WebCore::ShouldOpenExternalURLsPolicy::ShouldNotAllow); -@@ -1054,6 +1063,7 @@ public: +@@ -1056,6 +1065,7 @@ public: #endif void pageScaleFactorDidChange(double); @@ -9824,7 +9824,7 @@ index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816 void pluginScaleFactorDidChange(double); void pluginZoomFactorDidChange(double); -@@ -2293,6 +2303,7 @@ private: +@@ -2299,6 +2309,7 @@ private: String m_overrideContentSecurityPolicy; RefPtr m_inspector; @@ -9832,7 +9832,7 @@ index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816 #if ENABLE(FULLSCREEN_API) std::unique_ptr m_fullScreenManager; -@@ -2707,6 +2718,9 @@ private: +@@ -2713,6 +2724,9 @@ private: bool m_isLayerTreeFrozenDueToSwipeAnimation { false }; String m_overriddenMediaType; @@ -9843,7 +9843,7 @@ index b3856a4f9e7859bf3e0b9957c95040a784e9b317..530d3217bb619404fde47e2408dec816 #if PLATFORM(IOS_FAMILY) && ENABLE(DEVICE_ORIENTATION) std::unique_ptr m_webDeviceOrientationUpdateProviderProxy; diff --git a/Source/WebKit/UIProcess/WebPageProxy.messages.in b/Source/WebKit/UIProcess/WebPageProxy.messages.in -index 14bed1b33994d29a48ab06ed7bc5c7d5c9c53c8e..338da321fbe8640e4d70a8d4b09637d9d31d2d36 100644 +index 752093b8649f3725166828a19b38fac934e3b690..b57fbb768ca22710bb19ba71537117b7cd736bd8 100644 --- a/Source/WebKit/UIProcess/WebPageProxy.messages.in +++ b/Source/WebKit/UIProcess/WebPageProxy.messages.in @@ -29,6 +29,7 @@ messages -> WebPageProxy { @@ -9863,7 +9863,7 @@ index 14bed1b33994d29a48ab06ed7bc5c7d5c9c53c8e..338da321fbe8640e4d70a8d4b09637d9 PluginZoomFactorDidChange(double zoomFactor) diff --git a/Source/WebKit/UIProcess/WebProcessPool.cpp b/Source/WebKit/UIProcess/WebProcessPool.cpp -index aac332e9b46767a2703849f2e8431954cd206ab9..1f58e77e855b5f458627df49e6ba08921371efc1 100644 +index bfb54ba3d628893e0175637b1a2d50a8a0adf67d..ed9110c6d9513450f958092645285028af30b3fe 100644 --- a/Source/WebKit/UIProcess/WebProcessPool.cpp +++ b/Source/WebKit/UIProcess/WebProcessPool.cpp @@ -423,12 +423,19 @@ void WebProcessPool::languageChanged(void* context) @@ -9888,7 +9888,7 @@ index aac332e9b46767a2703849f2e8431954cd206ab9..1f58e77e855b5f458627df49e6ba0892 #endif } -@@ -979,7 +986,10 @@ void WebProcessPool::initializeNewWebProcess(WebProcessProxy& process, WebsiteDa +@@ -985,7 +992,10 @@ void WebProcessPool::initializeNewWebProcess(WebProcessProxy& process, WebsiteDa #endif parameters.cacheModel = LegacyGlobalSettings::singleton().cacheModel(); @@ -10452,10 +10452,10 @@ index 0000000000000000000000000000000000000000..7ad3fe416c5c747eaad8c6948c3549a3 + +} // namespace WebKit diff --git a/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm b/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm -index cdf3e95f0596b71ed0509de6e40ded48242ac3ec..4d6e64cc27c7ebce8345d116f91007f4314b47c3 100644 +index 63107861d345ca9f2476e65ea797ccc47b4c7518..77f7ad6d2d10648c63737c31ddec782ebbe0541c 100644 --- a/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm +++ b/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm -@@ -415,6 +415,8 @@ IntRect PageClientImpl::rootViewToAccessibilityScreen(const IntRect& rect) +@@ -450,6 +450,8 @@ IntRect PageClientImpl::rootViewToAccessibilityScreen(const IntRect& rect) void PageClientImpl::doneWithKeyEvent(const NativeWebKeyboardEvent& event, bool eventWasHandled) { @@ -11459,10 +11459,10 @@ index 0000000000000000000000000000000000000000..585fb151f302e4b376c705ed0d0974d5 + +} // namespace WebKit diff --git a/Source/WebKit/WebKit.xcodeproj/project.pbxproj b/Source/WebKit/WebKit.xcodeproj/project.pbxproj -index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d372192abf6 100644 +index d4885b4632de9c88cf0265d5eef9ab0754bf5587..8d1199e64af150875bec0f3943cc83bdffeaa0a6 100644 --- a/Source/WebKit/WebKit.xcodeproj/project.pbxproj +++ b/Source/WebKit/WebKit.xcodeproj/project.pbxproj -@@ -1727,6 +1727,19 @@ +@@ -1728,6 +1728,19 @@ CEE4AE2B1A5DCF430002F49B /* UIKitSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = CEE4AE2A1A5DCF430002F49B /* UIKitSPI.h */; }; D3B9484711FF4B6500032B39 /* WebPopupMenu.h in Headers */ = {isa = PBXBuildFile; fileRef = D3B9484311FF4B6500032B39 /* WebPopupMenu.h */; }; D3B9484911FF4B6500032B39 /* WebSearchPopupMenu.h in Headers */ = {isa = PBXBuildFile; fileRef = D3B9484511FF4B6500032B39 /* WebSearchPopupMenu.h */; }; @@ -11479,10 +11479,10 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 + D79902B2236E9404005D6F7E /* InspectorTargetProxyMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = D79902AF236E9404005D6F7E /* InspectorTargetProxyMac.mm */; }; + D79902B3236E9404005D6F7E /* WebPageInspectorInputAgentMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = D79902B0236E9404005D6F7E /* WebPageInspectorInputAgentMac.mm */; }; + D7EB04E72372A73B00F744CE /* InspectorBrowserAgentClientMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = D7EB04E62372A73B00F744CE /* InspectorBrowserAgentClientMac.mm */; }; + DF462E0F23F22F5500EFF35F /* WKHTTPCookieStorePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = DF462E0E23F22F5300EFF35F /* WKHTTPCookieStorePrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; + DF462E1223F338BE00EFF35F /* WKContentWorldPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = DF462E1123F338AD00EFF35F /* WKContentWorldPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; E105FE5418D7B9DE008F57A8 /* EditingRange.h in Headers */ = {isa = PBXBuildFile; fileRef = E105FE5318D7B9DE008F57A8 /* EditingRange.h */; }; - E11D35AE16B63D1B006D23D7 /* com.apple.WebProcess.sb in Resources */ = {isa = PBXBuildFile; fileRef = E1967E37150AB5E200C73169 /* com.apple.WebProcess.sb */; }; - E14A954A16E016A40068DE82 /* NetworkProcessPlatformStrategies.h in Headers */ = {isa = PBXBuildFile; fileRef = E14A954816E016A40068DE82 /* NetworkProcessPlatformStrategies.h */; }; -@@ -4987,6 +5000,20 @@ +@@ -4999,6 +5012,20 @@ D3B9484311FF4B6500032B39 /* WebPopupMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPopupMenu.h; sourceTree = ""; }; D3B9484411FF4B6500032B39 /* WebSearchPopupMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebSearchPopupMenu.cpp; sourceTree = ""; }; D3B9484511FF4B6500032B39 /* WebSearchPopupMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSearchPopupMenu.h; sourceTree = ""; }; @@ -11500,10 +11500,10 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 + D79902AF236E9404005D6F7E /* InspectorTargetProxyMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InspectorTargetProxyMac.mm; sourceTree = ""; }; + D79902B0236E9404005D6F7E /* WebPageInspectorInputAgentMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebPageInspectorInputAgentMac.mm; sourceTree = ""; }; + D7EB04E62372A73B00F744CE /* InspectorBrowserAgentClientMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InspectorBrowserAgentClientMac.mm; sourceTree = ""; }; + DF462E0E23F22F5300EFF35F /* WKHTTPCookieStorePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKHTTPCookieStorePrivate.h; sourceTree = ""; }; + DF462E1123F338AD00EFF35F /* WKContentWorldPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKContentWorldPrivate.h; sourceTree = ""; }; DF58C6311371AC5800F9A37C /* NativeWebWheelEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NativeWebWheelEvent.h; sourceTree = ""; }; - DF58C6351371ACA000F9A37C /* NativeWebWheelEventMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = NativeWebWheelEventMac.mm; sourceTree = ""; }; - E105FE5318D7B9DE008F57A8 /* EditingRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditingRange.h; sourceTree = ""; }; -@@ -6794,6 +6821,7 @@ +@@ -6814,6 +6841,7 @@ 37C4C08318149C2A003688B9 /* Cocoa */ = { isa = PBXGroup; children = ( @@ -11511,7 +11511,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 1A43E826188F38E2009E4D30 /* Deprecated */, 37A5E01218BBF937000A081E /* _WKActivatedElementInfo.h */, 37A5E01118BBF937000A081E /* _WKActivatedElementInfo.mm */, -@@ -8427,6 +8455,13 @@ +@@ -8451,6 +8479,13 @@ BC032DC310F438260058C15A /* UIProcess */ = { isa = PBXGroup; children = ( @@ -11525,7 +11525,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 BC032DC410F4387C0058C15A /* API */, 512F588D12A8836F00629530 /* Authentication */, 9955A6E81C79809000EB6A93 /* Automation */, -@@ -8704,6 +8739,7 @@ +@@ -8729,6 +8764,7 @@ BC0C376610F807660076D7CB /* C */ = { isa = PBXGroup; children = ( @@ -11533,7 +11533,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 5123CF18133D25E60056F800 /* cg */, 6EE849C41368D9040038D481 /* mac */, BCB63477116BF10600603215 /* WebKit2_C.h */, -@@ -9306,6 +9342,11 @@ +@@ -9331,6 +9367,11 @@ BCCF085C113F3B7500C650C5 /* mac */ = { isa = PBXGroup; children = ( @@ -11545,7 +11545,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 B878B613133428DC006888E9 /* CorrectionPanel.h */, B878B614133428DC006888E9 /* CorrectionPanel.mm */, C1817362205844A900DFDA65 /* DisplayLink.cpp */, -@@ -10003,6 +10044,7 @@ +@@ -10026,6 +10067,7 @@ 5CAFDE452130846300B1F7E1 /* _WKInspector.h in Headers */, 991F492F23A812C60054642B /* _WKInspectorDebuggableInfo.h in Headers */, 99036AE223A949CF0000B06A /* _WKInspectorDebuggableInfoInternal.h in Headers */, @@ -11553,7 +11553,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 5CAFDE472130846A00B1F7E1 /* _WKInspectorInternal.h in Headers */, 9979CA58237F49F10039EC05 /* _WKInspectorPrivate.h in Headers */, A5C0F0AB2000658200536536 /* _WKInspectorWindow.h in Headers */, -@@ -10126,6 +10168,7 @@ +@@ -10149,6 +10191,7 @@ 7C89D2981A6753B2003A5FDE /* APIPageConfiguration.h in Headers */, 1AC1336C18565C7A00F3EC05 /* APIPageHandle.h in Headers */, 1AFDD3151891B54000153970 /* APIPolicyClient.h in Headers */, @@ -11561,7 +11561,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 7CE4D2201A4914CA00C7F152 /* APIProcessPoolConfiguration.h in Headers */, 49BCA19223A177660028A836 /* APIResourceLoadStatisticsFirstParty.h in Headers */, 49BCA19723A1930D0028A836 /* APIResourceLoadStatisticsThirdParty.h in Headers */, -@@ -10250,6 +10293,7 @@ +@@ -10276,6 +10319,7 @@ BC06F43A12DBCCFB002D78DE /* GeolocationPermissionRequestProxy.h in Headers */, 2DA944A41884E4F000ED86DB /* GestureTypes.h in Headers */, 2DA049B8180CCD0A00AAFA9E /* GraphicsLayerCARemote.h in Headers */, @@ -11569,7 +11569,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 C0CE72AD1247E78D00BC0EC4 /* HandleMessage.h in Headers */, 1AC75A1B1B3368270056745B /* HangDetectionDisabler.h in Headers */, 57AC8F50217FEED90055438C /* HidConnection.h in Headers */, -@@ -10373,8 +10417,10 @@ +@@ -10399,8 +10443,10 @@ 41DC45961E3D6E2200B11F51 /* NetworkRTCProvider.h in Headers */, 413075AB1DE85F330039EC69 /* NetworkRTCSocket.h in Headers */, 5C20CBA01BB1ECD800895BB1 /* NetworkSession.h in Headers */, @@ -11580,7 +11580,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 570DAAC22303730300E8FC04 /* NfcConnection.h in Headers */, 570DAAAE23026F5C00E8FC04 /* NfcService.h in Headers */, 31A2EC5614899C0900810D71 /* NotificationPermissionRequest.h in Headers */, -@@ -10456,6 +10502,7 @@ +@@ -10482,6 +10528,7 @@ CD2865EE2255562000606AC7 /* ProcessTaskStateObserver.h in Headers */, 463FD4821EB94EC000A2982C /* ProcessTerminationReason.h in Headers */, 86E67A251910B9D100004AB7 /* ProcessThrottler.h in Headers */, @@ -11588,7 +11588,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 83048AE61ACA45DC0082C832 /* ProcessThrottlerClient.h in Headers */, A1E688701F6E2BAB007006A6 /* QuarantineSPI.h in Headers */, 57FD318222B3515E008D0E8B /* RedirectSOAuthorizationSession.h in Headers */, -@@ -10866,6 +10913,7 @@ +@@ -10893,6 +10940,7 @@ BCD25F1711D6BDE100169B0E /* WKBundleFrame.h in Headers */, BCF049E611FE20F600F86A58 /* WKBundleFramePrivate.h in Headers */, BC49862F124D18C100D834E1 /* WKBundleHitTestResult.h in Headers */, @@ -11596,7 +11596,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 BC204EF211C83EC8008F3375 /* WKBundleInitialize.h in Headers */, 65B86F1E12F11DE300B7DD8A /* WKBundleInspector.h in Headers */, 1A8B66B41BC45B010082DF77 /* WKBundleMac.h in Headers */, -@@ -10915,6 +10963,7 @@ +@@ -10944,6 +10992,7 @@ 5C795D71229F3757003FF1C4 /* WKContextMenuElementInfoPrivate.h in Headers */, 51A555F6128C6C47009ABCEC /* WKContextMenuItem.h in Headers */, 51A55601128C6D92009ABCEC /* WKContextMenuItemTypes.h in Headers */, @@ -11604,7 +11604,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 A1EA02381DABFF7E0096021F /* WKContextMenuListener.h in Headers */, BCC938E11180DE440085E5FE /* WKContextPrivate.h in Headers */, 9FB5F395169E6A80002C25BF /* WKContextPrivateMac.h in Headers */, -@@ -11064,6 +11113,7 @@ +@@ -11093,6 +11142,7 @@ 1AB8A1F818400BB800E9AE69 /* WKPageContextMenuClient.h in Headers */, 8372DB251A674C8F00C697C5 /* WKPageDiagnosticLoggingClient.h in Headers */, 1AB8A1F418400B8F00E9AE69 /* WKPageFindClient.h in Headers */, @@ -11612,7 +11612,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 1AB8A1F618400B9D00E9AE69 /* WKPageFindMatchesClient.h in Headers */, 1AB8A1F018400B0000E9AE69 /* WKPageFormClient.h in Headers */, BC7B633712A45ABA00D174A4 /* WKPageGroup.h in Headers */, -@@ -12090,6 +12140,7 @@ +@@ -12118,6 +12168,7 @@ CDA93DB122F8BCF400490A69 /* FullscreenTouchSecheuristicParameters.cpp in Sources */, 2749F6442146561B008380BF /* InjectedBundleNodeHandle.cpp in Sources */, 2749F6452146561E008380BF /* InjectedBundleRangeHandle.cpp in Sources */, @@ -11620,7 +11620,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 2D913441212CF9F000128AFD /* JSNPMethod.cpp in Sources */, 2D913442212CF9F000128AFD /* JSNPObject.cpp in Sources */, 2984F588164BA095004BC0C6 /* LegacyCustomProtocolManagerMessageReceiver.cpp in Sources */, -@@ -12100,6 +12151,7 @@ +@@ -12128,6 +12179,7 @@ 2D92A781212B6A7100F493FD /* MessageReceiverMap.cpp in Sources */, 2D92A782212B6A7100F493FD /* MessageSender.cpp in Sources */, 2D92A77A212B6A6100F493FD /* Module.cpp in Sources */, @@ -11628,7 +11628,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 57B826452304F14000B72EB0 /* NearFieldSoftLink.mm in Sources */, 2D913443212CF9F000128AFD /* NetscapeBrowserFuncs.cpp in Sources */, 2D913444212CF9F000128AFD /* NetscapePlugin.cpp in Sources */, -@@ -12124,6 +12176,7 @@ +@@ -12152,6 +12204,7 @@ 1A2D8439127F65D5001EB962 /* NPObjectMessageReceiverMessageReceiver.cpp in Sources */, 2D92A792212B6AD400F493FD /* NPObjectProxy.cpp in Sources */, 2D92A793212B6AD400F493FD /* NPRemoteObjectMap.cpp in Sources */, @@ -11636,7 +11636,7 @@ index be642204775e2555ccba5fde9f8e4ae8355eddd5..c819e8f9f8ba8507730e6b933fe48d37 2D913447212CF9F000128AFD /* NPRuntimeObjectMap.cpp in Sources */, 2D913448212CF9F000128AFD /* NPRuntimeUtilities.cpp in Sources */, 2D92A794212B6AD400F493FD /* NPVariantData.cpp in Sources */, -@@ -12393,6 +12446,7 @@ +@@ -12421,6 +12474,7 @@ 2D92A78C212B6AB100F493FD /* WebMouseEvent.cpp in Sources */, 31BA924D148831260062EDB5 /* WebNotificationManagerMessageReceiver.cpp in Sources */, 2DF6FE52212E110900469030 /* WebPage.cpp in Sources */, @@ -11808,7 +11808,7 @@ index f127d64d005ab7b93875591b94a5899205e91579..df0de26e4dc449a0fbf93e7037444df4 uint64_t m_navigationID; }; diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.cpp b/Source/WebKit/WebProcess/WebPage/WebPage.cpp -index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8fa866ffc6 100644 +index e0284a818241d7130cad2753ddb880008fa9955a..f21f2198159378efa3f71bfbfe69c2d8049dfeab 100644 --- a/Source/WebKit/WebProcess/WebPage/WebPage.cpp +++ b/Source/WebKit/WebProcess/WebPage/WebPage.cpp @@ -1568,6 +1568,22 @@ void WebPage::platformDidReceiveLoadParameters(const LoadParameters& loadParamet @@ -11853,7 +11853,7 @@ index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8f // Viewport properties have no impact on zero sized fixed viewports. if (m_viewSize.isEmpty()) -@@ -1778,26 +1790,18 @@ void WebPage::sendViewportAttributesChanged(const ViewportArguments& viewportArg +@@ -1778,20 +1790,18 @@ void WebPage::sendViewportAttributesChanged(const ViewportArguments& viewportArg ViewportAttributes attr = computeViewportAttributes(viewportArguments, minimumLayoutFallbackWidth, deviceWidth, deviceHeight, 1, m_viewSize); @@ -11864,17 +11864,15 @@ index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8f - // Use FloatSize to avoid truncated values during scale. - FloatSize contentFixedSize = m_viewSize; - - #if ENABLE(CSS_DEVICE_ADAPTATION) +- contentFixedSize.scale(1 / attr.initialScale); +- view->setFixedVisibleContentRect(IntRect(contentFixedOrigin, roundedIntSize(contentFixedSize))); ++#if ENABLE(CSS_DEVICE_ADAPTATION) + FrameView* view = m_page->mainFrame().view(); - // CSS viewport descriptors might be applied to already affected viewport size - // if the page enables/disables stylesheets, so need to keep initial viewport size. -- view->setInitialViewportSize(roundedIntSize(contentFixedSize)); ++ // CSS viewport descriptors might be applied to already affected viewport size ++ // if the page enables/disables stylesheets, so need to keep initial viewport size. + view->setInitialViewportSize(roundedIntSize(m_viewSize)); - #endif ++#endif -- contentFixedSize.scale(1 / attr.initialScale); -- view->setFixedVisibleContentRect(IntRect(contentFixedOrigin, roundedIntSize(contentFixedSize))); -- attr.initialScale = m_page->viewportArguments().zoom; // Resets auto (-1) if no value was set by user. // This also takes care of the relayout. @@ -11883,7 +11881,7 @@ index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8f #if USE(COORDINATED_GRAPHICS) m_drawingArea->didChangeViewportAttributes(WTFMove(attr)); -@@ -1805,7 +1809,6 @@ void WebPage::sendViewportAttributesChanged(const ViewportArguments& viewportArg +@@ -1799,7 +1809,6 @@ void WebPage::sendViewportAttributesChanged(const ViewportArguments& viewportArg send(Messages::WebPageProxy::DidChangeViewportProperties(attr)); #endif } @@ -11891,7 +11889,7 @@ index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8f void WebPage::scrollMainFrameIfNotAtMaxScrollPosition(const IntSize& scrollOffset) { -@@ -2087,6 +2090,7 @@ void WebPage::scaleView(double scale) +@@ -2081,6 +2090,7 @@ void WebPage::scaleView(double scale) } m_page->setViewScaleFactor(scale); @@ -11899,7 +11897,7 @@ index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8f scalePage(pageScale, scrollPositionAtNewScale); } -@@ -2191,17 +2195,13 @@ void WebPage::viewportPropertiesDidChange(const ViewportArguments& viewportArgum +@@ -2185,17 +2195,13 @@ void WebPage::viewportPropertiesDidChange(const ViewportArguments& viewportArgum viewportConfigurationChanged(); #endif @@ -11918,7 +11916,7 @@ index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8f } void WebPage::listenForLayoutMilestones(OptionSet milestones) -@@ -6303,6 +6303,9 @@ Ref WebPage::createDocumentLoader(Frame& frame, const ResourceRe +@@ -6318,6 +6324,9 @@ Ref WebPage::createDocumentLoader(Frame& frame, const ResourceRe WebsitePoliciesData::applyToDocumentLoader(WTFMove(*m_pendingWebsitePolicies), documentLoader); m_pendingWebsitePolicies = WTF::nullopt; } @@ -11929,10 +11927,10 @@ index 5f2a5020cb6d543626b866dff6ffcece16c8f713..430f579eee666e33be606b8e2ed04b8f return documentLoader; diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.h b/Source/WebKit/WebProcess/WebPage/WebPage.h -index b9ed9d4fc6d81991bd19ff22d1e8290e89ff545c..e5783a861dc6358fe88fa7ea73ef0e06c6b37424 100644 +index f98e94647682ca734c6030eff7b82af3a39fc782..6aecd084fd7a4a2e4021540bc81855d1e0096e44 100644 --- a/Source/WebKit/WebProcess/WebPage/WebPage.h +++ b/Source/WebKit/WebProcess/WebPage/WebPage.h -@@ -1373,6 +1373,7 @@ private: +@@ -1374,6 +1374,7 @@ private: // Actions void tryClose(CompletionHandler&&); void platformDidReceiveLoadParameters(const LoadParameters&); @@ -11940,7 +11938,7 @@ index b9ed9d4fc6d81991bd19ff22d1e8290e89ff545c..e5783a861dc6358fe88fa7ea73ef0e06 void loadRequest(LoadParameters&&); NO_RETURN void loadRequestWaitingForProcessLaunch(LoadParameters&&, URL&&, WebPageProxyIdentifier, bool); void loadData(LoadParameters&&); -@@ -1520,9 +1521,7 @@ private: +@@ -1521,9 +1522,7 @@ private: void countStringMatches(const String&, uint32_t findOptions, uint32_t maxMatchCount); void replaceMatches(const Vector& matchIndices, const String& replacementText, bool selectionOnly, CallbackID); @@ -11950,7 +11948,7 @@ index b9ed9d4fc6d81991bd19ff22d1e8290e89ff545c..e5783a861dc6358fe88fa7ea73ef0e06 void didChangeSelectedIndexForActivePopupMenu(int32_t newIndex); void setTextForActivePopupMenu(int32_t index); -@@ -1982,6 +1981,7 @@ private: +@@ -1983,6 +1982,7 @@ private: UserActivity m_userActivity; uint64_t m_pendingNavigationID { 0 }; @@ -11959,7 +11957,7 @@ index b9ed9d4fc6d81991bd19ff22d1e8290e89ff545c..e5783a861dc6358fe88fa7ea73ef0e06 bool m_mainFrameProgressCompleted { false }; diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.messages.in b/Source/WebKit/WebProcess/WebPage/WebPage.messages.in -index dcb1234e95acacfcdee6be60b69d081d5f1c6399..e50a27f603854428de9230f1862a740801cfac6b 100644 +index ab97b2b926059907ccdcf99cde9e5bf3d27d7a49..cd48a0a923b90fb4627cbe8ed61ea98a88e74318 100644 --- a/Source/WebKit/WebProcess/WebPage/WebPage.messages.in +++ b/Source/WebKit/WebProcess/WebPage/WebPage.messages.in @@ -167,6 +167,7 @@ GenerateSyntheticEditingCommand(enum:uint8_t WebKit::SyntheticEditingCommandType @@ -11971,7 +11969,7 @@ index dcb1234e95acacfcdee6be60b69d081d5f1c6399..e50a27f603854428de9230f1862a7408 LoadData(struct WebKit::LoadParameters loadParameters) LoadAlternateHTML(struct WebKit::LoadParameters loadParameters) diff --git a/Source/WebKit/WebProcess/WebProcess.cpp b/Source/WebKit/WebProcess/WebProcess.cpp -index f82dd2ab68020f8ffeefcdafa6d4312bbc6daa3e..e28e88ebf3997dd0ba61de0e7b789e148a16f23b 100644 +index 4b2409b994d3ae0d2b4314b345c28f1a4d37c709..883472a5a86e537a37ba40499155d27aa64837dd 100644 --- a/Source/WebKit/WebProcess/WebProcess.cpp +++ b/Source/WebKit/WebProcess/WebProcess.cpp @@ -78,6 +78,7 @@ @@ -12005,10 +12003,10 @@ index 472773e34a9f4b82b570ff1d5d73758d624cfa88..eed87820524670236eb4f5dad709f7c0 - (void)touch:(WebEvent *)event { diff --git a/Source/WebKitLegacy/mac/WebView/WebView.mm b/Source/WebKitLegacy/mac/WebView/WebView.mm -index d45ac9add705862d8733b9289669731a552f0a6d..02e7a44ecd2994eaa7b5d0b0a3bb100702a20e9c 100644 +index 22a8804bc0a64648911807fb9c1c7713802f2374..92b977d48e03db0885629b62e0e9cc47df2fbe98 100644 --- a/Source/WebKitLegacy/mac/WebView/WebView.mm +++ b/Source/WebKitLegacy/mac/WebView/WebView.mm -@@ -4332,7 +4332,7 @@ IGNORE_WARNINGS_END +@@ -4339,7 +4339,7 @@ IGNORE_WARNINGS_END } #endif // PLATFORM(IOS_FAMILY) @@ -12017,7 +12015,7 @@ index d45ac9add705862d8733b9289669731a552f0a6d..02e7a44ecd2994eaa7b5d0b0a3bb1007 - (NSArray *)_touchEventRegions { auto* frame = [self _mainCoreFrame]; -@@ -4378,7 +4378,7 @@ IGNORE_WARNINGS_END +@@ -4385,7 +4385,7 @@ IGNORE_WARNINGS_END return eventRegionArray; } @@ -12027,7 +12025,7 @@ index d45ac9add705862d8733b9289669731a552f0a6d..02e7a44ecd2994eaa7b5d0b0a3bb1007 // For backwards compatibility with the WebBackForwardList API, we honor both // a per-WebView and a per-preferences setting for whether to use the back/forward cache. diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake -index a1926c0dc280d8f888f73349178adfc0196959e4..40f2bdc01bdb9d8058418305c05b2fc20e2ffa95 100644 +index 361c860c8996d42deb7a8feec4980b5a3e704da2..c97db1dfa2a6c0fa82e00334cdfc344d16f757c5 100644 --- a/Source/cmake/OptionsGTK.cmake +++ b/Source/cmake/OptionsGTK.cmake @@ -3,6 +3,7 @@ include(VersioningUtils) @@ -12038,7 +12036,7 @@ index a1926c0dc280d8f888f73349178adfc0196959e4..40f2bdc01bdb9d8058418305c05b2fc2 CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT 80 0 43) CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(JAVASCRIPTCORE 34 0 16) -@@ -171,6 +172,13 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_TYPED_OM PRIVATE ${ENABLE_EXPERIMENT +@@ -172,6 +173,13 @@ WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_TYPED_OM PRIVATE ${ENABLE_EXPERIMENT WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_POINTER_EVENTS PRIVATE ${ENABLE_EXPERIMENTAL_FEATURES}) WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CSS_CONIC_GRADIENTS PRIVATE ON) @@ -12287,11 +12285,11 @@ index d996feb64e02d7399f2ed0b34d3d0dd03133f824..4ab1fa69437ed5a11a5357a331cb7e1c CommandLineOptions() #if ENABLE(WEBKIT) diff --git a/Tools/MiniBrowser/win/MainWindow.cpp b/Tools/MiniBrowser/win/MainWindow.cpp -index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a184f7a6ef3 100644 +index 0502f0d3f9ef6325c3997eacb975f452011a8644..52bc1800ebc87ce84b3e5f1bb09ab1745da2b503 100644 --- a/Tools/MiniBrowser/win/MainWindow.cpp +++ b/Tools/MiniBrowser/win/MainWindow.cpp -@@ -91,7 +91,10 @@ void MainWindow::registerClass(HINSTANCE hInstance) - RegisterClassEx(&wcex); +@@ -99,7 +99,10 @@ bool MainWindow::isInstance(HWND hwnd) + return s_windowClass == buff; } -MainWindow::MainWindow() @@ -12302,7 +12300,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 { s_numInstances++; } -@@ -101,9 +104,9 @@ MainWindow::~MainWindow() +@@ -109,9 +112,9 @@ MainWindow::~MainWindow() s_numInstances--; } @@ -12314,7 +12312,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 } bool MainWindow::init(BrowserWindowFactory factory, HINSTANCE hInstance, bool usesLayeredWebView) -@@ -112,29 +115,31 @@ bool MainWindow::init(BrowserWindowFactory factory, HINSTANCE hInstance, bool us +@@ -120,29 +123,31 @@ bool MainWindow::init(BrowserWindowFactory factory, HINSTANCE hInstance, bool us auto title = loadString(IDS_APP_TITLE); @@ -12358,7 +12356,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 if (!m_browserWindow) return false; HRESULT hr = m_browserWindow->init(); -@@ -143,7 +148,13 @@ bool MainWindow::init(BrowserWindowFactory factory, HINSTANCE hInstance, bool us +@@ -151,7 +156,13 @@ bool MainWindow::init(BrowserWindowFactory factory, HINSTANCE hInstance, bool us updateDeviceScaleFactor(); resizeSubViews(); @@ -12373,7 +12371,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 return true; } -@@ -157,12 +168,13 @@ void MainWindow::resizeSubViews() +@@ -165,12 +176,13 @@ void MainWindow::resizeSubViews() int height = scaleFactor * urlBarHeight; int width = scaleFactor * controlButtonWidth; @@ -12393,7 +12391,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 if (m_browserWindow->usesLayeredWebView() || !m_browserWindow->hwnd()) return; MoveWindow(m_browserWindow->hwnd(), 0, height, rcClient.right, rcClient.bottom - height, TRUE); -@@ -196,17 +208,15 @@ LRESULT CALLBACK MainWindow::WndProc(HWND hWnd, UINT message, WPARAM wParam, LPA +@@ -211,17 +223,15 @@ LRESULT CALLBACK MainWindow::WndProc(HWND hWnd, UINT message, WPARAM wParam, LPA break; #if ENABLE(WEBKIT) case IDM_NEW_WEBKIT_WINDOW: { @@ -12413,7 +12411,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 break; } #endif -@@ -225,9 +235,6 @@ LRESULT CALLBACK MainWindow::WndProc(HWND hWnd, UINT message, WPARAM wParam, LPA +@@ -240,9 +250,6 @@ LRESULT CALLBACK MainWindow::WndProc(HWND hWnd, UINT message, WPARAM wParam, LPA case IDM_WEB_INSPECTOR: thisWindow->browserWindow()->launchInspector(); break; @@ -12423,7 +12421,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 case IDM_CACHES: if (!::IsWindow(thisWindow->m_hCacheWnd)) { thisWindow->m_hCacheWnd = CreateDialogParam(hInst, MAKEINTRESOURCE(IDD_CACHES), hWnd, cachesDialogProc, reinterpret_cast(thisWindow.get())); -@@ -314,6 +321,9 @@ static void turnOffOtherUserAgents(HMENU menu) +@@ -329,6 +336,9 @@ static void turnOffOtherUserAgents(HMENU menu) bool MainWindow::toggleMenuItem(UINT menuID) { @@ -12433,7 +12431,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 HMENU menu = ::GetMenu(hwnd()); switch (menuID) { -@@ -390,6 +400,8 @@ INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) +@@ -405,6 +415,8 @@ INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK MainWindow::cachesDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { MainWindow& thisWindow = *reinterpret_cast(GetWindowLongPtr(hDlg, DWLP_USER)); @@ -12442,7 +12440,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 switch (message) { case WM_INITDIALOG: SetWindowLongPtr(hDlg, DWLP_USER, lParam); -@@ -420,6 +432,8 @@ INT_PTR CALLBACK MainWindow::cachesDialogProc(HWND hDlg, UINT message, WPARAM wP +@@ -435,6 +447,8 @@ INT_PTR CALLBACK MainWindow::cachesDialogProc(HWND hDlg, UINT message, WPARAM wP INT_PTR CALLBACK MainWindow::customUserAgentDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { MainWindow& thisWindow = *reinterpret_cast(GetWindowLongPtr(hDlg, DWLP_USER)); @@ -12451,7 +12449,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 switch (message) { case WM_INITDIALOG: { MainWindow& thisWindow = *reinterpret_cast(lParam); -@@ -465,17 +479,20 @@ void MainWindow::loadURL(std::wstring url) +@@ -480,17 +494,20 @@ void MainWindow::loadURL(std::wstring url) if (SUCCEEDED(::UrlCreateFromPath(url.c_str(), fileURL, &fileURLLength, 0))) url = fileURL; } @@ -12474,7 +12472,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 wchar_t strPtr[INTERNET_MAX_URL_LENGTH]; GetWindowText(m_hURLBarWnd, strPtr, INTERNET_MAX_URL_LENGTH); strPtr[INTERNET_MAX_URL_LENGTH - 1] = 0; -@@ -484,6 +501,8 @@ void MainWindow::onURLBarEnter() +@@ -499,6 +516,8 @@ void MainWindow::onURLBarEnter() void MainWindow::updateDeviceScaleFactor() { @@ -12483,7 +12481,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 if (m_hURLBarFont) ::DeleteObject(m_hURLBarFont); auto scaleFactor = WebCore::deviceScaleFactorForWindow(m_hMainWnd); -@@ -495,6 +514,8 @@ void MainWindow::updateDeviceScaleFactor() +@@ -510,6 +529,8 @@ void MainWindow::updateDeviceScaleFactor() void MainWindow::progressChanged(double progress) { @@ -12492,7 +12490,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 std::wostringstream text; text << static_cast(progress * 100) << L'%'; SetWindowText(m_hProgressIndicator, text.str().c_str()); -@@ -502,10 +523,14 @@ void MainWindow::progressChanged(double progress) +@@ -517,10 +538,14 @@ void MainWindow::progressChanged(double progress) void MainWindow::progressFinished() { @@ -12508,7 +12506,7 @@ index 82d28bbd4282c2b6b3d1441e822b4fa41e699e78..180c0d7f9eaed1e48951c660cb3c6a18 SetWindowText(m_hURLBarWnd, url.c_str()); } diff --git a/Tools/MiniBrowser/win/MainWindow.h b/Tools/MiniBrowser/win/MainWindow.h -index fba7f670f8953563d8d0d2b8d42a636c653f9d5f..660c34408eb181ddbdb8e52395b56b3d7f9ae7e5 100644 +index 61e75ba190ee2de5e4229cb4baae85248a9b35b3..a2a92644239b2aa4aa27d5da848ed97cbec279e0 100644 --- a/Tools/MiniBrowser/win/MainWindow.h +++ b/Tools/MiniBrowser/win/MainWindow.h @@ -26,6 +26,8 @@ @@ -12532,7 +12530,7 @@ index fba7f670f8953563d8d0d2b8d42a636c653f9d5f..660c34408eb181ddbdb8e52395b56b3d ~MainWindow(); bool init(BrowserWindowFactory, HINSTANCE hInstance, bool usesLayeredWebView = false); -@@ -54,7 +56,7 @@ private: +@@ -56,7 +58,7 @@ private: static std::wstring s_windowClass; static size_t s_numInstances; @@ -12541,7 +12539,7 @@ index fba7f670f8953563d8d0d2b8d42a636c653f9d5f..660c34408eb181ddbdb8e52395b56b3d bool toggleMenuItem(UINT menuID); void onURLBarEnter(); void updateDeviceScaleFactor(); -@@ -72,5 +74,8 @@ private: +@@ -74,5 +76,8 @@ private: HWND m_hProgressIndicator { nullptr }; HWND m_hCacheWnd { nullptr }; HGDIOBJ m_hURLBarFont { nullptr }; @@ -12551,7 +12549,7 @@ index fba7f670f8953563d8d0d2b8d42a636c653f9d5f..660c34408eb181ddbdb8e52395b56b3d + bool m_headless; }; diff --git a/Tools/MiniBrowser/win/WebKitBrowserWindow.cpp b/Tools/MiniBrowser/win/WebKitBrowserWindow.cpp -index 71c43e6691395b787140ca0603550aac1c8513d5..289795e88d893e4b85fb663bf924e68383579d85 100644 +index f590685184e78882f611164a284eb36bf50b5099..530518dc35048b56bf298bccbcf2ce28f249b19c 100644 --- a/Tools/MiniBrowser/win/WebKitBrowserWindow.cpp +++ b/Tools/MiniBrowser/win/WebKitBrowserWindow.cpp @@ -39,6 +39,8 @@ @@ -12865,7 +12863,7 @@ index f84e5cde0baaa08dab1fc77771e4a62a08a5df78..dac73d3d9db04c5d502432cea8adfa89 void navigateToHistory(UINT menuID); bool seedInitialDefaultPreferences(); diff --git a/Tools/MiniBrowser/win/WinMain.cpp b/Tools/MiniBrowser/win/WinMain.cpp -index b1d17e88de61a6f196830f62604e4174564506bd..2035067fef157cb23dc3a93f1a086719a32d7d38 100644 +index 62386f690b09335b5dc7c6fdd80bd9b62c3856aa..6886dab6dd9d37ddc8cd9a7bc39df7d5dc48e4c4 100644 --- a/Tools/MiniBrowser/win/WinMain.cpp +++ b/Tools/MiniBrowser/win/WinMain.cpp @@ -32,6 +32,9 @@ @@ -12934,7 +12932,7 @@ index b1d17e88de61a6f196830f62604e4174564506bd..2035067fef157cb23dc3a93f1a086719 #if !ENABLE(WEBKIT_LEGACY) auto factory = WebKitBrowserWindow::create; -@@ -86,19 +113,35 @@ int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, +@@ -86,20 +113,36 @@ int WINAPI wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, #else auto factory = options.windowType == BrowserWindowType::WebKit ? WebKitBrowserWindow::create : WebKitLegacyBrowserWindow::create; #endif @@ -12965,6 +12963,7 @@ index b1d17e88de61a6f196830f62604e4174564506bd..2035067fef157cb23dc3a93f1a086719 - ShowWindow(mainWindow.hwnd(), nCmdShow); - hAccelTable = LoadAccelerators(hInst, MAKEINTRESOURCE(IDC_MINIBROWSER)); + hPreAccelTable = LoadAccelerators(hInst, MAKEINTRESOURCE(IDR_ACCELERATORS_PRE)); if (options.requestedURL.length()) mainWindow.loadURL(options.requestedURL.GetBSTR()); @@ -12987,7 +12986,7 @@ index 245f319abf2595e154d03e1ee8b3250d7f46aafd..9cae87b23deade7c163f34aade2b2aed ${WPEBACKEND_FDO_INCLUDE_DIRS} ) diff --git a/Tools/MiniBrowser/wpe/main.cpp b/Tools/MiniBrowser/wpe/main.cpp -index 2d183d394123bd84545dc51f53eb9be796fb8873..07f31f2442bc957378dc6da026fa3c4802e1e2f9 100644 +index a0ca94ac2dcc005b403180aa11407ff7b33dcbc6..ad155edd606477ecfc4a72c524df1fa5af33bab8 100644 --- a/Tools/MiniBrowser/wpe/main.cpp +++ b/Tools/MiniBrowser/wpe/main.cpp @@ -25,7 +25,7 @@ @@ -13151,7 +13150,18 @@ index 2d183d394123bd84545dc51f53eb9be796fb8873..07f31f2442bc957378dc6da026fa3c48 auto* webView = WEBKIT_WEB_VIEW(g_object_new(WEBKIT_TYPE_WEB_VIEW, "backend", viewBackend, "web-context", webContext, -@@ -318,7 +399,7 @@ int main(int argc, char *argv[]) +@@ -300,7 +381,9 @@ int main(int argc, char *argv[]) + g_signal_connect(webContext, "automation-started", G_CALLBACK(automationStartedCallback), webView); + g_signal_connect(webView, "permission-request", G_CALLBACK(decidePermissionRequest), nullptr); + g_signal_connect(webView, "create", G_CALLBACK(createWebView), nullptr); +- g_signal_connect(webView, "close", G_CALLBACK(webViewClose), nullptr); ++ // FIXME(yurys): next line was added in https://trac.webkit.org/r256302 and causes ++ // use after free crashing in playwright. See https://webkit.org/b/207529#c7 ++ // g_signal_connect(webView, "close", G_CALLBACK(webViewClose), nullptr); + + if (ignoreTLSErrors) + webkit_web_context_set_tls_errors_policy(webContext, WEBKIT_TLS_ERRORS_POLICY_IGNORE); +@@ -319,7 +402,7 @@ int main(int argc, char *argv[]) g_object_unref(file); webkit_web_view_load_uri(webView, url); g_free(url); @@ -13160,7 +13170,7 @@ index 2d183d394123bd84545dc51f53eb9be796fb8873..07f31f2442bc957378dc6da026fa3c48 webkit_web_view_load_uri(webView, "about:blank"); else webkit_web_view_load_uri(webView, "https://wpewebkit.org"); -@@ -326,8 +407,7 @@ int main(int argc, char *argv[]) +@@ -327,8 +410,7 @@ int main(int argc, char *argv[]) g_main_loop_run(loop); g_object_unref(webView);