ANGLE: Invalidate client window area when resetting swap chain
Resizing a window larger results in the newly exposed region being invalidated but the old region is treated as valid. This can result in the old region no longer updating. This has been observed on Windows 7 64-bit with Aero theme using NVIDIA GeForce GTS 250 and driver version 301.42. Invalidate the entire client window area when resetting the swap chain so that it updates properly. Upstream patch: https://codereview.appspot.com/6812076/ Task-number: QTBUG-27822 Change-Id: I0f5d2004576019458baee74c35e52f69b893a219 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>bb10
parent
aeb566db73
commit
aa309b9677
|
|
@ -24,6 +24,7 @@ Ginn Chen
|
|||
James Hauxwell
|
||||
Sam Hocevar
|
||||
Pierre Leveille
|
||||
Jonathan Liu
|
||||
Boying Lu
|
||||
Aitor Moreno
|
||||
Yuri O'Donnell
|
||||
|
|
|
|||
|
|
@ -326,6 +326,7 @@ bool Surface::resetSwapChain(int backbufferWidth, int backbufferHeight)
|
|||
|
||||
result = mSwapChain->GetBackBuffer(0, D3DBACKBUFFER_TYPE_MONO, &mBackBuffer);
|
||||
ASSERT(SUCCEEDED(result));
|
||||
InvalidateRect(mWindow, NULL, FALSE);
|
||||
}
|
||||
|
||||
if (mConfig->mDepthStencilFormat != D3DFMT_UNKNOWN)
|
||||
|
|
|
|||
Loading…
Reference in New Issue