[webkit-changes] [WebKit/WebKit] 7fb2ad: REGRESSION (263917 at main): [ macOS ] 3 inspector/ti...

Simon Fraser noreply at github.com
Fri Oct 27 11:05:01 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7fb2ade98313266b70a981a8c7d15a53051823c0
      https://github.com/WebKit/WebKit/commit/7fb2ade98313266b70a981a8c7d15a53051823c0
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2023-10-27 (Fri, 27 Oct 2023)

  Changed paths:
    M LayoutTests/platform/mac-wk1/TestExpectations
    M Source/WebCore/platform/RunLoopObserver.h
    M Source/WebCore/platform/cf/RunLoopObserverCF.cpp
    M Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.h
    M Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.mm

  Log Message:
  -----------
  REGRESSION (263917 at main): [ macOS ] 3 inspector/timeline/timeline-event-Timer tests are a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=260360
rdar://114041968

Reviewed by Cameron McCormack.

In 258248 at main we started to use pre/post CoreAnimation commit handlers in WebKitLegacy to drive the
pre/post rendering update hooks that are used by Web Inspector to drive the frames timeline.

However, there is no guarantee that a given Page::updateRendering() results in a CA commit; it might
not trigger any drawing; the affected tests show this.

So stop using CA commit handlers in WebKitLegacy. Instead, call `[m_webView
_willStartRenderingUpdateDisplay]` right after `updateRendering()`, and use a new post-commit
runloop observer to track the end of the "commit" if one happened.

* LayoutTests/platform/mac-wk1/TestExpectations:
* Source/WebCore/platform/RunLoopObserver.h:
* Source/WebCore/platform/cf/RunLoopObserverCF.cpp:
(WebCore::cfRunLoopOrder):
* Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.h:
* Source/WebKitLegacy/mac/WebView/WebViewRenderingUpdateScheduler.mm:
(WebViewRenderingUpdateScheduler::WebViewRenderingUpdateScheduler):
(WebViewRenderingUpdateScheduler::didCompleteRenderingUpdateDisplay):
(WebViewRenderingUpdateScheduler::registerPostCommitObserver):
(WebViewRenderingUpdateScheduler::postCommitCallback):
(WebViewRenderingUpdateScheduler::renderingUpdateRunLoopObserverCallback):
(WebViewRenderingUpdateScheduler::registerCACommitHandlers): Deleted.

Canonical link: https://commits.webkit.org/269859@main




More information about the webkit-changes mailing list