Diff
Modified: branches/safari-611-branch/Source/WebCore/ChangeLog (276150 => 276151)
--- branches/safari-611-branch/Source/WebCore/ChangeLog 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebCore/ChangeLog 2021-04-16 19:04:10 UTC (rev 276151)
@@ -574,97 +574,6 @@
2021-04-15 Russell Epstein <[email protected]>
- Cherry-pick r275485. rdar://problem/76412930
-
- Make sure we no longer show the previous page when running a JS prompt
- https://bugs.webkit.org/show_bug.cgi?id=215782
- <rdar://problem/67698601>
-
- Reviewed by Darin Adler.
-
- Source/WebCore:
-
- Add linked-on-after check for the behavior change to minimize the risk of
- breakage.
-
- * platform/cocoa/VersionChecks.h:
-
- Source/WebKit:
-
- Make sure we no longer show the previous page when running a JS prompt.
- If we have not yet done a layer tree commit since the last load commit, then
- we are likely still showing the previous page. If we are asked to run a JS
- prompt / alert / confirm at this point, it would be confusing to still show
- the previous page. In order to address the issue, we now make the view blank
- in such scenario (ideally, we'd have painted the new page but this is
- currently not a trivial thing to do).
-
- To make the view blank, the approach chosen is the set the opacity of our
- root layer to 0 when the JS prompt is requested (before the first paint) and
- set the opacity back to 1 after the first paint.
-
- To minimize the risks of breakage, the behavior change is behind a
- linked-on-after check. Also, we only trigger this behavior if the WKWebView
- client actually implements the corresponding JS prompt delegate.
-
- * UIProcess/Cocoa/UIDelegate.mm:
- (WebKit::UIDelegate::UIClient::runJavaScriptAlert):
- (WebKit::UIDelegate::UIClient::runJavaScriptConfirm):
- (WebKit::UIDelegate::UIClient::runJavaScriptPrompt):
- * UIProcess/PageClient.h:
- (WebKit::PageClient::makeViewBlank):
- * UIProcess/WebPageProxy.cpp:
- (WebKit::WebPageProxy::stopMakingViewBlankDueToLackOfRenderingUpdate):
- (WebKit::WebPageProxy::makeViewBlankIfUnpaintedSinceLastLoadCommit):
- (WebKit::WebPageProxy::didCommitLoadForFrame):
- (WebKit::WebPageProxy::runJavaScriptAlert):
- * UIProcess/WebPageProxy.h:
- * UIProcess/WebPageProxy.messages.in:
- * UIProcess/ios/PageClientImplIOS.h:
- * UIProcess/ios/PageClientImplIOS.mm:
- (WebKit::PageClientImpl::makeViewBlank):
- * UIProcess/ios/WebPageProxyIOS.mm:
- (WebKit::WebPageProxy::didCommitLayerTree):
- * UIProcess/mac/PageClientImplMac.h:
- * UIProcess/mac/PageClientImplMac.mm:
- (WebKit::PageClientImpl::makeViewBlank):
- * UIProcess/mac/WebPageProxyMac.mm:
- (WebKit::WebPageProxy::didUpdateRenderingAfterCommittingLoad):
- * WebProcess/WebCoreSupport/WebChromeClient.cpp:
- (WebKit::WebChromeClient::runJavaScriptAlert):
- (WebKit::WebChromeClient::runJavaScriptConfirm):
- (WebKit::WebChromeClient::runJavaScriptPrompt):
- Add flag to make sure pending async messages are processed *before* the JS prompt sync IPCs.
- Without this, it was possible for the UIProcess to receive the JS prompt IPC *before* the
- DidCommitLoadForFrame IPC, which would confuse our logic, since we would think this is a JS
- prompt for the previous page.
-
- * WebProcess/WebPage/WebPage.cpp:
- (WebKit::WebPage::didCommitLoad):
- * WebProcess/WebPage/WebPage.h:
- (WebKit::WebPage::sendSyncWithDelayedReply):
- * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
- (WebKit::TiledCoreAnimationDrawingArea::updateRendering):
- * WebProcess/WebPage/mac/WebPageMac.mm:
- (WebKit::WebPage::didUpdateRendering):
-
- git-svn-id: https://svn.webkit.org/repository/webkit/trunk@275485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 2021-04-05 Chris Dumez <[email protected]>
-
- Make sure we no longer show the previous page when running a JS prompt
- https://bugs.webkit.org/show_bug.cgi?id=215782
- <rdar://problem/67698601>
-
- Reviewed by Darin Adler.
-
- Add linked-on-after check for the behavior change to minimize the risk of
- breakage.
-
- * platform/cocoa/VersionChecks.h:
-
-2021-04-15 Russell Epstein <[email protected]>
-
Cherry-pick r274862. rdar://problem/76416505
Nullptr crash in HTMLConverter::convert
Modified: branches/safari-611-branch/Source/WebCore/platform/cocoa/VersionChecks.h (276150 => 276151)
--- branches/safari-611-branch/Source/WebCore/platform/cocoa/VersionChecks.h 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebCore/platform/cocoa/VersionChecks.h 2021-04-16 19:04:10 UTC (rev 276151)
@@ -69,7 +69,6 @@
FirstThatObservesClassProperty = DYLD_IOS_VERSION_14_5,
FirstWithoutWeChatScrollingQuirk = DYLD_IOS_VERSION_14_5,
FirstWithSharedNetworkProcess = DYLD_IOS_VERSION_14_5,
- FirstWithBlankViewOnJSPrompt = DYLD_IOS_VERSION_14_5,
#elif PLATFORM(MAC)
FirstWithNetworkCache = DYLD_MACOSX_VERSION_10_11,
FirstWithExceptionsForDuplicateCompletionHandlerCalls = DYLD_MACOSX_VERSION_10_13,
@@ -89,7 +88,6 @@
FirstWithWKWebsiteDataStoreInitReturningNil = DYLD_MACOSX_VERSION_10_16,
FirstWithDataURLFragmentRemoval = DYLD_MACOSX_VERSION_11_3,
FirstWithHTMLDocumentSupportedPropertyNames = DYLD_MACOSX_VERSION_11_3,
- FirstWithBlankViewOnJSPrompt = DYLD_MACOSX_VERSION_11_3,
#endif
};
Modified: branches/safari-611-branch/Source/WebKit/ChangeLog (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/ChangeLog 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/ChangeLog 2021-04-16 19:04:10 UTC (rev 276151)
@@ -155,149 +155,6 @@
2021-04-15 Russell Epstein <[email protected]>
- Cherry-pick r275485. rdar://problem/76412930
-
- Make sure we no longer show the previous page when running a JS prompt
- https://bugs.webkit.org/show_bug.cgi?id=215782
- <rdar://problem/67698601>
-
- Reviewed by Darin Adler.
-
- Source/WebCore:
-
- Add linked-on-after check for the behavior change to minimize the risk of
- breakage.
-
- * platform/cocoa/VersionChecks.h:
-
- Source/WebKit:
-
- Make sure we no longer show the previous page when running a JS prompt.
- If we have not yet done a layer tree commit since the last load commit, then
- we are likely still showing the previous page. If we are asked to run a JS
- prompt / alert / confirm at this point, it would be confusing to still show
- the previous page. In order to address the issue, we now make the view blank
- in such scenario (ideally, we'd have painted the new page but this is
- currently not a trivial thing to do).
-
- To make the view blank, the approach chosen is the set the opacity of our
- root layer to 0 when the JS prompt is requested (before the first paint) and
- set the opacity back to 1 after the first paint.
-
- To minimize the risks of breakage, the behavior change is behind a
- linked-on-after check. Also, we only trigger this behavior if the WKWebView
- client actually implements the corresponding JS prompt delegate.
-
- * UIProcess/Cocoa/UIDelegate.mm:
- (WebKit::UIDelegate::UIClient::runJavaScriptAlert):
- (WebKit::UIDelegate::UIClient::runJavaScriptConfirm):
- (WebKit::UIDelegate::UIClient::runJavaScriptPrompt):
- * UIProcess/PageClient.h:
- (WebKit::PageClient::makeViewBlank):
- * UIProcess/WebPageProxy.cpp:
- (WebKit::WebPageProxy::stopMakingViewBlankDueToLackOfRenderingUpdate):
- (WebKit::WebPageProxy::makeViewBlankIfUnpaintedSinceLastLoadCommit):
- (WebKit::WebPageProxy::didCommitLoadForFrame):
- (WebKit::WebPageProxy::runJavaScriptAlert):
- * UIProcess/WebPageProxy.h:
- * UIProcess/WebPageProxy.messages.in:
- * UIProcess/ios/PageClientImplIOS.h:
- * UIProcess/ios/PageClientImplIOS.mm:
- (WebKit::PageClientImpl::makeViewBlank):
- * UIProcess/ios/WebPageProxyIOS.mm:
- (WebKit::WebPageProxy::didCommitLayerTree):
- * UIProcess/mac/PageClientImplMac.h:
- * UIProcess/mac/PageClientImplMac.mm:
- (WebKit::PageClientImpl::makeViewBlank):
- * UIProcess/mac/WebPageProxyMac.mm:
- (WebKit::WebPageProxy::didUpdateRenderingAfterCommittingLoad):
- * WebProcess/WebCoreSupport/WebChromeClient.cpp:
- (WebKit::WebChromeClient::runJavaScriptAlert):
- (WebKit::WebChromeClient::runJavaScriptConfirm):
- (WebKit::WebChromeClient::runJavaScriptPrompt):
- Add flag to make sure pending async messages are processed *before* the JS prompt sync IPCs.
- Without this, it was possible for the UIProcess to receive the JS prompt IPC *before* the
- DidCommitLoadForFrame IPC, which would confuse our logic, since we would think this is a JS
- prompt for the previous page.
-
- * WebProcess/WebPage/WebPage.cpp:
- (WebKit::WebPage::didCommitLoad):
- * WebProcess/WebPage/WebPage.h:
- (WebKit::WebPage::sendSyncWithDelayedReply):
- * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
- (WebKit::TiledCoreAnimationDrawingArea::updateRendering):
- * WebProcess/WebPage/mac/WebPageMac.mm:
- (WebKit::WebPage::didUpdateRendering):
-
- git-svn-id: https://svn.webkit.org/repository/webkit/trunk@275485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 2021-04-05 Chris Dumez <[email protected]>
-
- Make sure we no longer show the previous page when running a JS prompt
- https://bugs.webkit.org/show_bug.cgi?id=215782
- <rdar://problem/67698601>
-
- Reviewed by Darin Adler.
-
- Make sure we no longer show the previous page when running a JS prompt.
- If we have not yet done a layer tree commit since the last load commit, then
- we are likely still showing the previous page. If we are asked to run a JS
- prompt / alert / confirm at this point, it would be confusing to still show
- the previous page. In order to address the issue, we now make the view blank
- in such scenario (ideally, we'd have painted the new page but this is
- currently not a trivial thing to do).
-
- To make the view blank, the approach chosen is the set the opacity of our
- root layer to 0 when the JS prompt is requested (before the first paint) and
- set the opacity back to 1 after the first paint.
-
- To minimize the risks of breakage, the behavior change is behind a
- linked-on-after check. Also, we only trigger this behavior if the WKWebView
- client actually implements the corresponding JS prompt delegate.
-
- * UIProcess/Cocoa/UIDelegate.mm:
- (WebKit::UIDelegate::UIClient::runJavaScriptAlert):
- (WebKit::UIDelegate::UIClient::runJavaScriptConfirm):
- (WebKit::UIDelegate::UIClient::runJavaScriptPrompt):
- * UIProcess/PageClient.h:
- (WebKit::PageClient::makeViewBlank):
- * UIProcess/WebPageProxy.cpp:
- (WebKit::WebPageProxy::stopMakingViewBlankDueToLackOfRenderingUpdate):
- (WebKit::WebPageProxy::makeViewBlankIfUnpaintedSinceLastLoadCommit):
- (WebKit::WebPageProxy::didCommitLoadForFrame):
- (WebKit::WebPageProxy::runJavaScriptAlert):
- * UIProcess/WebPageProxy.h:
- * UIProcess/WebPageProxy.messages.in:
- * UIProcess/ios/PageClientImplIOS.h:
- * UIProcess/ios/PageClientImplIOS.mm:
- (WebKit::PageClientImpl::makeViewBlank):
- * UIProcess/ios/WebPageProxyIOS.mm:
- (WebKit::WebPageProxy::didCommitLayerTree):
- * UIProcess/mac/PageClientImplMac.h:
- * UIProcess/mac/PageClientImplMac.mm:
- (WebKit::PageClientImpl::makeViewBlank):
- * UIProcess/mac/WebPageProxyMac.mm:
- (WebKit::WebPageProxy::didUpdateRenderingAfterCommittingLoad):
- * WebProcess/WebCoreSupport/WebChromeClient.cpp:
- (WebKit::WebChromeClient::runJavaScriptAlert):
- (WebKit::WebChromeClient::runJavaScriptConfirm):
- (WebKit::WebChromeClient::runJavaScriptPrompt):
- Add flag to make sure pending async messages are processed *before* the JS prompt sync IPCs.
- Without this, it was possible for the UIProcess to receive the JS prompt IPC *before* the
- DidCommitLoadForFrame IPC, which would confuse our logic, since we would think this is a JS
- prompt for the previous page.
-
- * WebProcess/WebPage/WebPage.cpp:
- (WebKit::WebPage::didCommitLoad):
- * WebProcess/WebPage/WebPage.h:
- (WebKit::WebPage::sendSyncWithDelayedReply):
- * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
- (WebKit::TiledCoreAnimationDrawingArea::updateRendering):
- * WebProcess/WebPage/mac/WebPageMac.mm:
- (WebKit::WebPage::didUpdateRendering):
-
-2021-04-15 Russell Epstein <[email protected]>
-
Cherry-pick r274377. rdar://problem/76412582
AX: PDF frame conversion routines need to be updated
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/Cocoa/UIDelegate.mm 2021-04-16 19:04:10 UTC (rev 276151)
@@ -301,8 +301,6 @@
return;
}
- page.makeViewBlankIfUnpaintedSinceLastLoadCommit();
-
auto checker = CompletionHandlerCallChecker::create(delegate.get(), @selector(webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:));
[delegate webView:m_uiDelegate->m_webView.get().get() runJavaScriptAlertPanelWithMessage:message initiatedByFrame:wrapper(API::FrameInfo::create(WTFMove(frameInfo), &page)) completionHandler:makeBlockPtr([completionHandler = WTFMove(completionHandler), checker = WTFMove(checker)] {
if (checker->completionHandlerHasBeenCalled())
@@ -328,8 +326,6 @@
return;
}
- page.makeViewBlankIfUnpaintedSinceLastLoadCommit();
-
auto checker = CompletionHandlerCallChecker::create(delegate.get(), @selector(webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:));
[delegate webView:m_uiDelegate->m_webView.get().get() runJavaScriptConfirmPanelWithMessage:message initiatedByFrame:wrapper(API::FrameInfo::create(WTFMove(frameInfo), &page)) completionHandler:makeBlockPtr([completionHandler = WTFMove(completionHandler), checker = WTFMove(checker)] (BOOL result) mutable {
if (checker->completionHandlerHasBeenCalled())
@@ -355,8 +351,6 @@
return;
}
- page.makeViewBlankIfUnpaintedSinceLastLoadCommit();
-
auto checker = CompletionHandlerCallChecker::create(delegate.get(), @selector(webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:completionHandler:));
[delegate webView:m_uiDelegate->m_webView.get().get() runJavaScriptTextInputPanelWithPrompt:message defaultText:defaultValue initiatedByFrame:wrapper(API::FrameInfo::create(WTFMove(frameInfo), &page)) completionHandler:makeBlockPtr([completionHandler = WTFMove(completionHandler), checker = WTFMove(checker)] (NSString *result) mutable {
if (checker->completionHandlerHasBeenCalled())
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/PageClient.h (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/PageClient.h 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/PageClient.h 2021-04-16 19:04:10 UTC (rev 276151)
@@ -503,8 +503,6 @@
virtual void setMouseEventPolicy(WebCore::MouseEventPolicy) { }
- virtual void makeViewBlank(bool) { }
-
#if PLATFORM(MAC)
virtual void didPerformImmediateActionHitTest(const WebHitTestResultData&, bool contentPreventsDefault, API::Object*) = 0;
virtual NSObject *immediateActionAnimationControllerForHitTestResult(RefPtr<API::HitTestResult>, uint64_t, RefPtr<API::Object>) = 0;
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.cpp (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.cpp 2021-04-16 19:04:10 UTC (rev 276151)
@@ -2395,31 +2395,6 @@
}
#endif
-void WebPageProxy::stopMakingViewBlankDueToLackOfRenderingUpdate()
-{
-#if PLATFORM(COCOA)
- ASSERT(m_hasUpdatedRenderingAfterDidCommitLoad);
- RELEASE_LOG_IF_ALLOWED(Process, "stopMakingViewBlankDueToLackOfRenderingUpdate:");
- pageClient().makeViewBlank(false);
-#endif
-}
-
-// If we have not painted yet since the last load commit, then we are likely still displaying the previous page.
-// Displaying a JS prompt for the new page with the old page behind would be confusing so we make the view blank
-// until the next paint in such case.
-void WebPageProxy::makeViewBlankIfUnpaintedSinceLastLoadCommit()
-{
-#if PLATFORM(COCOA)
- if (!m_hasUpdatedRenderingAfterDidCommitLoad) {
- static bool shouldMakeViewBlank = linkedOnOrAfter(WebCore::SDKVersion::FirstWithBlankViewOnJSPrompt);
- if (shouldMakeViewBlank) {
- RELEASE_LOG_IF_ALLOWED(Process, "makeViewBlankIfUnpaintedSinceLastLoadCommit: Making the view blank because of a JS prompt before the first paint for its page");
- pageClient().makeViewBlank(true);
- }
- }
-#endif
-}
-
void WebPageProxy::discardQueuedMouseEvents()
{
while (m_mouseEventQueue.size() > 1)
@@ -4653,12 +4628,10 @@
m_hasCommittedAnyProvisionalLoads = true;
m_process->didCommitProvisionalLoad();
-#if PLATFORM(COCOA)
+#if PLATFORM(IOS_FAMILY)
if (frame->isMainFrame()) {
- m_hasUpdatedRenderingAfterDidCommitLoad = false;
-#if PLATFORM(IOS_FAMILY)
+ m_hasReceivedLayerTreeTransactionAfterDidCommitLoad = false;
m_firstLayerTreeTransactionIdAfterDidCommitLoad = downcast<RemoteLayerTreeDrawingAreaProxy>(*drawingArea()).nextLayerTreeTransactionID();
-#endif
}
#endif
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.h (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.h 2021-04-16 19:04:10 UTC (rev 276151)
@@ -574,8 +574,6 @@
void setDrawingArea(std::unique_ptr<DrawingAreaProxy>&&);
WeakPtr<SecKeyProxyStore> secKeyProxyStore(const WebCore::AuthenticationChallenge&);
-
- void makeViewBlankIfUnpaintedSinceLastLoadCommit();
void close();
bool tryClose();
@@ -2120,8 +2118,6 @@
void didPerformDictionaryLookup(const WebCore::DictionaryPopupInfo&);
#endif
- void stopMakingViewBlankDueToLackOfRenderingUpdate();
-
// Spelling and grammar.
void checkSpellingOfString(const String& text, CompletionHandler<void(int32_t misspellingLocation, int32_t misspellingLength)>&&);
void checkGrammarOfString(const String& text, CompletionHandler<void(Vector<WebCore::GrammarDetail>&&, int32_t badGrammarLocation, int32_t badGrammarLength)>&&);
@@ -2153,7 +2149,6 @@
void applicationManifestCallback(const Optional<WebCore::ApplicationManifest>&, CallbackID);
#endif
#if PLATFORM(MAC)
- void didUpdateRenderingAfterCommittingLoad();
void fontAtSelectionCallback(const FontInfo&, double, bool, CallbackID);
#endif
#if PLATFORM(IOS_FAMILY)
@@ -2454,6 +2449,7 @@
Optional<WebCore::InputMode> m_pendingInputModeChange;
TransactionID m_firstLayerTreeTransactionIdAfterDidCommitLoad;
int32_t m_deviceOrientation { 0 };
+ bool m_hasReceivedLayerTreeTransactionAfterDidCommitLoad { true };
bool m_hasNetworkRequestsOnSuspended { false };
bool m_isKeyboardAnimatingIn { false };
bool m_isScrollingOrZooming { false };
@@ -2578,10 +2574,6 @@
bool m_isInPrintingMode { false };
bool m_isPerformingDOMPrintOperation { false };
-#if PLATFORM(COCOA)
- bool m_hasUpdatedRenderingAfterDidCommitLoad { true };
-#endif
-
WebCore::ResourceRequest m_decidePolicyForResponseRequest;
bool m_shouldSuppressAppLinksInNextNavigationPolicyDecision { false };
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.messages.in (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.messages.in 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/WebPageProxy.messages.in 2021-04-16 19:04:10 UTC (rev 276151)
@@ -376,7 +376,6 @@
RecordAutocorrectionResponse(int32_t response, String replacedString, String replacementString);
SetEditableElementIsFocused(bool editableElementIsFocused)
- DidUpdateRenderingAfterCommittingLoad()
#endif
#if USE(DICTATION_ALTERNATIVES)
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/ios/PageClientImplIOS.h (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/ios/PageClientImplIOS.h 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/ios/PageClientImplIOS.h 2021-04-16 19:04:10 UTC (rev 276151)
@@ -144,8 +144,6 @@
CALayer* acceleratedCompositingRootLayer() const override;
LayerHostingMode viewLayerHostingMode() override { return LayerHostingMode::OutOfProcess; }
- void makeViewBlank(bool) final;
-
RefPtr<ViewSnapshot> takeViewSnapshot(Optional<WebCore::IntRect>&&) override;
void wheelEventWasNotHandledByWebCore(const NativeWebWheelEvent&) override;
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/ios/PageClientImplIOS.mm 2021-04-16 19:04:10 UTC (rev 276151)
@@ -475,11 +475,6 @@
{
}
-void PageClientImpl::makeViewBlank(bool makeBlank)
-{
- [m_contentView layer].opacity = makeBlank ? 0 : 1;
-}
-
void PageClientImpl::showSafeBrowsingWarning(const SafeBrowsingWarning& warning, CompletionHandler<void(Variant<WebKit::ContinueUnsafeLoad, URL>&&)>&& completionHandler)
{
if (auto webView = m_webView.get())
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm 2021-04-16 19:04:10 UTC (rev 276151)
@@ -337,10 +337,9 @@
{
m_pageExtendedBackgroundColor = layerTreeTransaction.pageExtendedBackgroundColor();
- if (!m_hasUpdatedRenderingAfterDidCommitLoad) {
+ if (!m_hasReceivedLayerTreeTransactionAfterDidCommitLoad) {
if (layerTreeTransaction.transactionID() >= m_firstLayerTreeTransactionIdAfterDidCommitLoad) {
- m_hasUpdatedRenderingAfterDidCommitLoad = true;
- stopMakingViewBlankDueToLackOfRenderingUpdate();
+ m_hasReceivedLayerTreeTransactionAfterDidCommitLoad = true;
m_lastVisibleContentRectUpdate = VisibleContentRectUpdateInfo();
}
}
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/mac/PageClientImplMac.h (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/mac/PageClientImplMac.h 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/mac/PageClientImplMac.h 2021-04-16 19:04:10 UTC (rev 276151)
@@ -221,8 +221,6 @@
void requestDOMPasteAccess(const WebCore::IntRect&, const String&, CompletionHandler<void(WebCore::DOMPasteAccessResponse)>&&) final;
- void makeViewBlank(bool) final;
-
NSView *activeView() const;
NSWindow *activeWindow() const;
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/mac/PageClientImplMac.mm (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/mac/PageClientImplMac.mm 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/mac/PageClientImplMac.mm 2021-04-16 19:04:10 UTC (rev 276151)
@@ -976,12 +976,6 @@
m_impl->requestDOMPasteAccess(elementRect, originIdentifier, WTFMove(completion));
}
-
-void PageClientImpl::makeViewBlank(bool makeBlank)
-{
- m_impl->acceleratedCompositingRootLayer().opacity = makeBlank ? 0 : 1;
-}
-
#if HAVE(APP_ACCENT_COLORS)
WebCore::Color PageClientImpl::accentColor()
{
Modified: branches/safari-611-branch/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm 2021-04-16 19:04:10 UTC (rev 276151)
@@ -651,15 +651,6 @@
return [pageClient().platformWindow() contentView];
}
-void WebPageProxy::didUpdateRenderingAfterCommittingLoad()
-{
- if (m_hasUpdatedRenderingAfterDidCommitLoad)
- return;
-
- m_hasUpdatedRenderingAfterDidCommitLoad = true;
- stopMakingViewBlankDueToLackOfRenderingUpdate();
-}
-
#if ENABLE(UI_PROCESS_PDF_HUD)
void WebPageProxy::createPDFHUD(PDFPluginIdentifier identifier, const WebCore::IntRect& rect)
Modified: branches/safari-611-branch/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp 2021-04-16 19:04:10 UTC (rev 276151)
@@ -457,7 +457,7 @@
HangDetectionDisabler hangDetectionDisabler;
IPC::UnboundedSynchronousIPCScope unboundedSynchronousIPCScope;
- m_page.sendSyncWithDelayedReply(Messages::WebPageProxy::RunJavaScriptAlert(webFrame->frameID(), webFrame->info(), alertText), Messages::WebPageProxy::RunJavaScriptAlert::Reply(), IPC::SendSyncOption::MaintainOrderingWithAsyncMessages);
+ m_page.sendSyncWithDelayedReply(Messages::WebPageProxy::RunJavaScriptAlert(webFrame->frameID(), webFrame->info(), alertText), Messages::WebPageProxy::RunJavaScriptAlert::Reply());
}
bool WebChromeClient::runJavaScriptConfirm(Frame& frame, const String& message)
@@ -475,7 +475,7 @@
IPC::UnboundedSynchronousIPCScope unboundedSynchronousIPCScope;
bool result = false;
- if (!m_page.sendSyncWithDelayedReply(Messages::WebPageProxy::RunJavaScriptConfirm(webFrame->frameID(), webFrame->info(), message), Messages::WebPageProxy::RunJavaScriptConfirm::Reply(result), IPC::SendSyncOption::MaintainOrderingWithAsyncMessages))
+ if (!m_page.sendSyncWithDelayedReply(Messages::WebPageProxy::RunJavaScriptConfirm(webFrame->frameID(), webFrame->info(), message), Messages::WebPageProxy::RunJavaScriptConfirm::Reply(result)))
return false;
return result;
@@ -495,7 +495,7 @@
HangDetectionDisabler hangDetectionDisabler;
IPC::UnboundedSynchronousIPCScope unboundedSynchronousIPCScope;
- if (!m_page.sendSyncWithDelayedReply(Messages::WebPageProxy::RunJavaScriptPrompt(webFrame->frameID(), webFrame->info(), message, defaultValue), Messages::WebPageProxy::RunJavaScriptPrompt::Reply(result), IPC::SendSyncOption::MaintainOrderingWithAsyncMessages))
+ if (!m_page.sendSyncWithDelayedReply(Messages::WebPageProxy::RunJavaScriptPrompt(webFrame->frameID(), webFrame->info(), message, defaultValue), Messages::WebPageProxy::RunJavaScriptPrompt::Reply(result)))
return false;
return !result.isNull();
Modified: branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/WebPage.cpp (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/WebPage.cpp 2021-04-16 19:04:10 UTC (rev 276151)
@@ -6085,9 +6085,6 @@
scalePage(1, IntPoint());
}
-#if PLATFORM(MAC)
- m_didUpdateRenderingAfterCommittingLoad = false;
-#endif
#if PLATFORM(IOS_FAMILY)
m_hasReceivedVisibleContentRectsAfterDidCommitLoad = false;
m_hasRestoredExposedContentRectAfterDidCommitLoad = false;
Modified: branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/WebPage.h (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/WebPage.h 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/WebPage.h 2021-04-16 19:04:10 UTC (rev 276151)
@@ -623,8 +623,6 @@
#if PLATFORM(MAC)
void setTopOverhangImage(WebImage*);
void setBottomOverhangImage(WebImage*);
-
- void didUpdateRendering();
void setUseSystemAppearance(bool);
@@ -1266,11 +1264,10 @@
void didReceiveWebPageMessage(IPC::Connection&, IPC::Decoder&);
template<typename T>
- SendSyncResult sendSyncWithDelayedReply(T&& message, typename T::Reply&& reply, OptionSet<IPC::SendSyncOption> sendSyncOptions = { })
+ SendSyncResult sendSyncWithDelayedReply(T&& message, typename T::Reply&& reply)
{
cancelGesturesBlockedOnSynchronousReplies();
- sendSyncOptions = sendSyncOptions | IPC::SendSyncOption::InformPlatformProcessWillSuspend;
- return sendSync(WTFMove(message), WTFMove(reply), Seconds::infinity(), sendSyncOptions);
+ return sendSync(WTFMove(message), WTFMove(reply), Seconds::infinity(), IPC::SendSyncOption::InformPlatformProcessWillSuspend);
}
WebCore::DOMPasteAccessResponse requestDOMPasteAccess(const String& originIdentifier);
@@ -2190,10 +2187,6 @@
#endif
bool m_canUseCredentialStorage { true };
-#if PLATFORM(MAC)
- bool m_didUpdateRenderingAfterCommittingLoad { false };
-#endif
-
Vector<String> m_corsDisablingPatterns;
#if ENABLE(IPC_TESTING_API)
Modified: branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm 2021-04-16 19:04:10 UTC (rev 276151)
@@ -481,7 +481,6 @@
}
sendDidFirstLayerFlushIfNeeded();
- m_webPage.didUpdateRendering();
handleActivityStateChangeCallbacksIfNeeded();
invalidateRenderingUpdateRunLoopObserver();
}
Modified: branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm (276150 => 276151)
--- branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm 2021-04-16 19:04:02 UTC (rev 276150)
+++ branches/safari-611-branch/Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm 2021-04-16 19:04:10 UTC (rev 276151)
@@ -1028,15 +1028,6 @@
{
}
-void WebPage::didUpdateRendering()
-{
- if (m_didUpdateRenderingAfterCommittingLoad)
- return;
-
- m_didUpdateRenderingAfterCommittingLoad = true;
- send(Messages::WebPageProxy::DidUpdateRenderingAfterCommittingLoad());
-}
-
#if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS_FAMILY)
void WebPage::playbackTargetSelected(PlaybackTargetClientContextIdentifier contextId, const WebCore::MediaPlaybackTargetContext& targetContext) const
{