winemac: Invalidate window shadow on every draw for transparent windows.

This commit is contained in:
Ken Thomases 2013-03-28 23:33:59 -05:00 committed by Alexandre Julliard
parent 7ab76484c4
commit f7406e74ae
1 changed files with 9 additions and 7 deletions

View File

@ -231,18 +231,20 @@ - (void) drawRect:(NSRect)rect
CGContextDrawImage(context, imageRect, image);
CGImageRelease(image);
if (window.shapeChangedSinceLastDraw || window.colorKeyed ||
window.usePerPixelAlpha)
{
window.shapeChangedSinceLastDraw = FALSE;
[window invalidateShadow];
}
}
}
pthread_mutex_unlock(window.surface_mutex);
}
// If the window may be transparent, then we have to invalidate the
// shadow every time we draw. Also, if this is the first time we've
// drawn since changing from transparent to opaque.
if (![window isOpaque] || window.shapeChangedSinceLastDraw)
{
window.shapeChangedSinceLastDraw = FALSE;
[window invalidateShadow];
}
}
/* By default, NSView will swallow right-clicks in an attempt to support contextual