Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: f938f81c9a7b341437e118fbd333f32da73875a2 https://github.com/WebKit/WebKit/commit/f938f81c9a7b341437e118fbd333f32da73875a2 Author: Carlos Garcia Campos <cgar...@igalia.com> Date: 2023-04-11 (Tue, 11 Apr 2023)
Changed paths: M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h M Source/WebKit/WebProcess/WebPage/DrawingArea.h M Source/WebKit/WebProcess/WebPage/WebPage.cpp M Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp Log Message: ----------- REGRESSION(262572@main): [GTK] No contents renderer after process swap for navigation https://bugs.webkit.org/show_bug.cgi?id=255221 Reviewed by Žan Doberšek. In case of process swap current drawing area is destroyed causing the AC mode to be exited, and the new drawing area sends the enter AC message before the UI process has switched drawing areas, so the message is just ignored. To be able to enter AC mode from the DrawingArea constructor this patch removes the enablePainting methods, since it's always called right after the drawing area is crewated and only used by coordinated graphics drawing area. * Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp: (WebKit::DrawingAreaCoordinatedGraphics::DrawingAreaCoordinatedGraphics): Enter AC mode here when always compositing. (WebKit::DrawingAreaCoordinatedGraphics::setNeedsDisplayInRect): Remove painting enabled check. (WebKit::DrawingAreaCoordinatedGraphics::scroll): Ditto. (WebKit::DrawingAreaCoordinatedGraphics::forceRepaint): Ditto. (WebKit::DrawingAreaCoordinatedGraphics::updatePreferences): Update async scrolling enabled here. (WebKit::DrawingAreaCoordinatedGraphics::enterAcceleratedCompositingMode): Create the LayerTreeHost with the display ID so that LayerTreeHost doesn't need to access the page drawing area that is being created. (WebKit::DrawingAreaCoordinatedGraphics::sendEnterAcceleratedCompositingModeIfNeeded): Implement this. (WebKit::DrawingAreaCoordinatedGraphics::enablePainting): Deleted. * Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h: * Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp: (WebKit::LayerTreeHost::LayerTreeHost): Use the given display ID. * Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h: * Source/WebKit/WebProcess/WebPage/DrawingArea.h: (WebKit::DrawingArea::enablePainting): Deleted. * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::reinitializeWebPage): Remove enablePainting calls. * Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp: (WebKit::AcceleratedSurfaceDMABuf::didCreateGLContext): Do not resize here that is too early in some cases, wait for the first frame to do the resize. Canonical link: https://commits.webkit.org/262812@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes