I have experienced this myself on windows and here is how i fixed it. I can't say if this will work
without other modifications but you could try it
in IGraphicsWin::WndProc()
replace
Code:
if (pGraphics->IsDirty(&dirtyR)) {
RECT r = { dirtyR.L, dirtyR.T, dirtyR.R, dirtyR.B };
InvalidateRect(hWnd, &r, FALSE);
UpdateWindow(hWnd);
if (pGraphics->mParamEditWnd) {
pGraphics->mParamEditMsg = kUpdate;
}
}
with
Code:
if (pGraphics->IsDirty(&dirtyR)) {
RECT r = { dirtyR.L, dirtyR.T, dirtyR.R, dirtyR.B };
InvalidateRect(hWnd, &r, FALSE);
if (pGraphics->mParamEditWnd) {
IRECT* notDirtyR = pGraphics->mEdControl->GetRECT();
RECT r2 = { notDirtyR->L, notDirtyR->T, notDirtyR->R, notDirtyR->B };
ValidateRect(hWnd, &r2); // make sure we dont redraw the edit box area
UpdateWindow(hWnd);
pGraphics->mParamEditMsg = kUpdate;
}
else
UpdateWindow(hWnd);
}