[Webkit-unassigned] [Bug 189743] REGRESSION(r??????): [GTK][AC] Resizing the window doesn't always update the visible rect

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Oct 17 02:59:30 PDT 2018


https://bugs.webkit.org/show_bug.cgi?id=189743

--- Comment #13 from Zan Dobersek <zan at falconsigh.net> ---
Comment on attachment 352559
  --> https://bugs.webkit.org/attachment.cgi?id=352559
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=352559&action=review

> Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:206
> -    if (m_surface && m_surface->resize(size))
> +    // if (m_surface && m_surface->resize(size))

When the page and its connected layer tree host is being resized, the associated AcceleratedSurface is resized right here, on the main thread, whereas the composition (which would be affected by the resize) is all done in a separate thread. So this is just an inappropriate cross-thread access into the wl_egl_window object that's managed in the derived AcceleratedSurfaceWayland class. This patch moves the resizing operation over to the composition thread, with the underlying resizing issue disappearing.

Reason why this is done on the main thread is the X11-specific implementation of AcceleratedSurface. That one respawns a pixmap object on each resize and retrieves its address as the surface ID that's here assigned to the m_layerTreeContext.contextID variable, which I guess is necessary.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20181017/634fcc72/attachment.html>


More information about the webkit-unassigned mailing list