Created attachment 419250 [details] debug-logging.patch [CoordinatedGraphics] The whole content is unnecessarily repainted by animations 1. Apply the debug logging patch and build GTK port 2. Start GTK MiniBrowser 3. Open the test content 4. the log indicates that the whole content is unnecessarily repainted
Created attachment 419252 [details] test case
Created attachment 419253 [details] WIP patch
Comment on attachment 419253 [details] WIP patch With this patch, layer animations don't work if AC mode is disabled. For example, https://webkit.org/ https://webkit.org/blog-files/3d-transforms/morphing-cubes.html
How can I know the dirty area for layer animations? GTK, PlayStation and WinCairo ports are still supporting non-AC mode for WebKit2. If AC is disabled, the dirty area should be notified by using WebChromeClient::invalidateContentsAndRootView.
Another example of a layer animation: attachment#409968 [details] This animation doesn't work if AC is disabled even without the WIP patch.
Created attachment 419331 [details] WIP patch
Created attachment 419339 [details] Patch
Committed r272476: <https://commits.webkit.org/r272476> All reviewed patches have been landed. Closing bug and clearing flags on attachment 419339 [details].
<rdar://problem/74207093>
Committed r272986 (234189@main): <https://commits.webkit.org/234189@main>
*** Bug 222026 has been marked as a duplicate of this bug. ***
GTK port was crashing since r272476 (See Bug 222026 for detail). r272986 reverted r272476. Reopened.
Created attachment 420603 [details] Patch
(In reply to Fujii Hironori from comment #13) > Created attachment 420603 [details] > Patch Tested locally and this version indeed does not trigger the crash reported in bug222026.
Committed r273019 (234220@main): <https://commits.webkit.org/234220@main>
Committed r273054 (234252@main): <https://commits.webkit.org/234252@main>
some tests were timing out after r273019. https://build.webkit.org/#/builders/57/builds/178 r273054 reverted r273019. Reopended.
(In reply to Fujii Hironori from comment #17) > some tests were timing out after r273019. requestAnimationFrame didn't work because m_dirtyRegion.isEmpty() is true. If DrawingAreaCoordinatedGraphics::triggerRenderingUpdate is called, DrawingAreaCoordinatedGraphics::display must be called. LayerTreeHost has m_scheduledWhileWaitingForRenderer. I think DrawingAreaCoordinatedGraphics also should have a flag (e.g. m_scheduledWhileWaitingForDidUpdate) for the same purpose.
Created attachment 420790 [details] Patch
Comment on attachment 420790 [details] Patch Clearing flags on attachment: 420790 Committed r273063 (234261@main): <https://commits.webkit.org/234261@main>
All reviewed patches have been landed. Closing bug.
It seems that r273063 added another timing out for GTK Debug. However, because GTK Debug was exiting early even without my patch, it's difficult to compare. GTK Release layout tests look fine even after r273063. I'm going to revert my patch again, and reland my patch after fixing other crashing and timeout bugs.
Committed r273095 (234293@main): <https://commits.webkit.org/234293@main>
r273095 reverted r273063. Reopened.
Created attachment 420928 [details] Patch
Comment on attachment 420928 [details] Patch Clearing flags on attachment: 420928 Committed r273327 (234480@main): <https://commits.webkit.org/234480@main>