I tried to fix a flaky repaint test in Chromium by forcing a layout before a call to layoutTestController.display(). Darin suggested having DRT always call layout before display(). This might work, but we should see if 1) This is already happening on Mac (implicitly or explicitly). 2) Seeing if this regresses any tests on Chromium (it probably won't, but we'd want to verify). http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=fast%2Freplaced%2Fwidth100percent-textarea.html
This didn't actual work in fixing the test. Ojan points out that a layout doesn't force a paint, so maybe we need to fix DRT to both layout and paint in lTC.display() before drawing the grey box.
Hmm, it looks like we already do this. We layout and repaint before drawing the repaint mask. http://trac.webkit.org/browser/trunk/Tools/DumpRenderTree/chromium/LayoutTestController.cpp#L1206 http://trac.webkit.org/browser/trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp#L1577