Changeset 259283 in webkit
- Timestamp:
- Mar 31, 2020 2:10:58 AM (4 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r259280 r259283 1 2020-03-31 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 REGRESSION(r258829): [CoordinatedGraphics] Web view not updated after cross site navigation with PSON enabled 4 https://bugs.webkit.org/show_bug.cgi?id=209741 5 6 Reviewed by Žan Doberšek. 7 8 Since r258829, the drawing area proxy of a provisional page ignores all messages until the load is 9 committed. This is causing 2 problems for coordinated graphics drawing area. When not in accelerated compositing 10 mode, Update message is sent before the commit is loaded, and the web process keeps waiting for the DidUpdate 11 response message forever. When accelerated compositing mode is forced, the EnterAcceleratedCompositing message 12 is also sent before the load is committed and ignored, so the UI process doesn't know it's in accelerated mode. 13 14 * WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp: 15 (WebKit::DrawingAreaCoordinatedGraphics::scheduleRenderingUpdate): Return early if layer tree is frozen. This 16 ensures that Update messages are not sent to the UI process while layer tree is frozen. 17 (WebKit::DrawingAreaCoordinatedGraphics::enterAcceleratedCompositingMode): Disable layer flush on the newly 18 created LayerTreeHost if layer tree is frozen. This ensures that EnterAcceleratedCompositing message is sent 19 after the first layer flush once the layer tree is no longer frozen. 20 1 21 2020-03-30 David Kilzer <ddkilzer@apple.com> 2 22 -
trunk/Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp
r256834 r259283 343 343 void DrawingAreaCoordinatedGraphics::scheduleRenderingUpdate() 344 344 { 345 if (m_layerTreeStateIsFrozen) 346 return; 347 345 348 if (m_layerTreeHost) 346 349 m_layerTreeHost->scheduleLayerFlush(); … … 595 598 return; 596 599 #endif 600 if (m_layerTreeStateIsFrozen) 601 m_layerTreeHost->setLayerFlushSchedulingEnabled(false); 597 602 if (m_isPaintingSuspended) 598 603 m_layerTreeHost->pauseRendering();
Note: See TracChangeset
for help on using the changeset viewer.