mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-16 04:46:45 +00:00
win32u: Reset draw_start_ticks for new window_surface.
Normally, a new window_surface has no damage so its draw_start_ticks value is reset at the time of the first lock_surface. However, if contents from the old window_surface are copied to the new one when the window_surface for a window is updated, the new window_surface will be initially damaged. We want to reset the draw_start_ticks value in this case too, to avoid flushes occuring soon after such updates, during the initial redraw of the window_surface. Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
This commit is contained in:
parent
aa72d7d42d
commit
6d2bd75c4a
|
@ -744,7 +744,8 @@ static inline void lock_surface( struct windrv_physdev *dev )
|
|||
{
|
||||
/* gdi_lock should not be locked */
|
||||
dev->surface->funcs->lock( dev->surface );
|
||||
if (IsRectEmpty( dev->dibdrv->bounds )) dev->surface->draw_start_ticks = NtGetTickCount();
|
||||
if (IsRectEmpty( dev->dibdrv->bounds ) || dev->surface->draw_start_ticks == 0)
|
||||
dev->surface->draw_start_ticks = NtGetTickCount();
|
||||
}
|
||||
|
||||
static inline void unlock_surface( struct windrv_physdev *dev )
|
||||
|
|
Loading…
Reference in a new issue