Bug 249736
| Summary: | "Commit time" data is wrong with UI-side compositing | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> |
| Component: | Web Inspector | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | CC: | inspector-bugzilla-changes, pangle, simon.fraser, thorton, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: |
https://bugs.webkit.org/show_bug.cgi?id=249750 https://bugs.webkit.org/show_bug.cgi?id=249796 |
||
Simon Fraser (smfr)
When web inspecting iOS, or macOS with UI-side compositing enabled, the green "commit time" events in the timeline are always short. I think they only track the time in the fake CA commit triggers in RemoteLayerTreeDrawingArea::displayDidRefresh(), because they are registered like this:
void RemoteLayerTreeDrawingArea::addCommitHandlers()
{
if (m_webPage.firstFlushAfterCommit())
return;
[CATransaction addCommitHandler:[retainedPage = Ref { m_webPage }] {
if (Page* corePage = retainedPage->corePage()) {
if (Frame* coreFrame = retainedPage->mainFrame())
corePage->inspectorController().willComposite(*coreFrame);
}
} forPhase:kCATransactionPhasePreLayout];
[CATransaction addCommitHandler:[retainedPage = Ref { m_webPage }] {
if (Page* corePage = retainedPage->corePage()) {
if (Frame* coreFrame = retainedPage->mainFrame())
corePage->inspectorController().didComposite(*coreFrame);
}
retainedPage->setFirstFlushAfterCommit(false);
} forPhase:kCATransactionPhasePostCommit];
m_webPage.setFirstFlushAfterCommit(true);
}
This is wrong because there are no CA Commits (other than this garbage-collection one) in the web process.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/103608655>
Simon Fraser (smfr)
Bug 249750 fixed this but see also bug 249796.
*** This bug has been marked as a duplicate of bug 249750 ***