Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 66783d616f3d0e3fd47f2a05e5ae7387ba5f5732
https://github.com/WebKit/WebKit/commit/66783d616f3d0e3fd47f2a05e5ae7387ba5f5732
Author: Simon Fraser <[email protected]>
Date: 2022-12-22 (Thu, 22 Dec 2022)
Changed paths:
M Source/WebKitLegacy/SourcesCocoa.txt
M Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj
M Source/WebKitLegacy/mac/WebView/WebView.mm
M Source/WebKitLegacy/mac/WebView/WebViewData.h
M Source/WebKitLegacy/mac/WebView/WebViewData.mm
M Source/WebKitLegacy/mac/WebView/WebViewInternal.h
A Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.h
A Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.mm
Log Message:
-----------
Clean up WebKitLegacy's LayerFlushController/WebViewLayerFlushScheduler
https://bugs.webkit.org/show_bug.cgi?id=249826
rdar://103653788
Reviewed by Tim Horton.
In WebKitLegacy, both LayerFlushController and WebViewLayerFlushScheduler
existed, where
LayerFlushController owned a WebViewLayerFlushScheduler. These classes can be
combined.
Confusingly, LayerFlushController was mostly implemented in WebViewData.mm, but
LayerFlushController::flushLayers()
was in WebView.mm, making it hard to find.
So combine the classes into WebViewRenderingUpdateScheduler which lives in its
own file. This class
does not need to be RefCounted. WebView methods that it calls are declared in
WebViewInternal.h.
An iBooks-specific quirk is removed since Books no longer uses UIWebView.
* Source/WebKitLegacy/SourcesCocoa.txt:
* Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj:
* Source/WebKitLegacy/mac/WebView/WebView.mm:
(-[WebView _close]):
(-[WebView close]):
(-[WebView _scheduleUpdateRendering]):
(-[WebView _updateRendering]):
(-[WebView _willStartRenderingUpdateDisplay]):
(-[WebView _didCompleteRenderingUpdateDisplay]):
(LayerFlushController::flushLayers): Deleted.
* Source/WebKitLegacy/mac/WebView/WebViewData.h:
(): Deleted.
(LayerFlushController::create): Deleted.
(LayerFlushController::didCompleteRenderingUpdateDisplay): Deleted.
* Source/WebKitLegacy/mac/WebView/WebViewData.mm:
(currentRunLoop): Deleted.
(LayerFlushController::scheduleLayerFlush): Deleted.
(LayerFlushController::invalidate): Deleted.
(LayerFlushController::LayerFlushController): Deleted.
(WebViewLayerFlushScheduler::WebViewLayerFlushScheduler): Deleted.
(WebViewLayerFlushScheduler::~WebViewLayerFlushScheduler): Deleted.
(WebViewLayerFlushScheduler::schedule): Deleted.
(WebViewLayerFlushScheduler::invalidate): Deleted.
(WebViewLayerFlushScheduler::layerFlushCallback): Deleted.
* Source/WebKitLegacy/mac/WebView/WebViewInternal.h:
* Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.h: Added.
* Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.mm: Added.
(currentRunLoop):
(WebViewRenderingUpdateScheduler::WebViewRenderingUpdateScheduler):
(WebViewRenderingUpdateScheduler::scheduleRenderingUpdate):
(WebViewRenderingUpdateScheduler::invalidate):
(WebViewRenderingUpdateScheduler::didCompleteRenderingUpdateDisplay):
(WebViewRenderingUpdateScheduler::registerCACommitHandlers):
(WebViewRenderingUpdateScheduler::renderingUpdateRunLoopObserverCallback):
(WebViewRenderingUpdateScheduler::updateRendering):
Canonical link: https://commits.webkit.org/258283@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes