DescriptionFix infinite paint loop on Linux.
In response to an invalidation, we call into WebKit to do layout.
On Windows, WM_PAINT is a virtual message so any extra Invalidates that come
up while it's doing layout are implicitly swallowed as soon as we actually do
drawing via BeginPaint.
Though GTK does know how to collapse multiple paint requests, it won't erase
paint requests from the future when we start drawing. So the solution is to
track whether we're currently handling a redraw, and during that if we get told
by WebKit that a region has become invalid, we still add that region to the
local dirty rect but *don't* enqueue yet another "do a paint" message.
Patch Set 1 #
Messages
Total messages: 1 (0 generated)
|