Index: chrome/renderer/render_widget.cc |
diff --git a/chrome/renderer/render_widget.cc b/chrome/renderer/render_widget.cc |
index 3252097db10ae00b63ee39809fd52ba61abac78c..28385f5fd669d897c2465d92a9b3e6ac09581382 100644 |
--- a/chrome/renderer/render_widget.cc |
+++ b/chrome/renderer/render_widget.cc |
@@ -588,6 +588,14 @@ void RenderWidget::didInvalidateRect(const WebRect& rect) { |
} |
} |
+ // Painting a not-yet-ready page would cause flicker with white blank. |
+ // So InvalidateRect() and PostTask() should be skipped. |
+ // Because we expect at least one update after loading the page and |
+ // InvalidateRect() without PostTask() can miss it, |
+ // We skip both instead of skip only PostTask(). |
+ if (!IsReadyToPaint()) |
+ return; |
+ |
// We only want one pending DoDeferredUpdate call at any time... |
bool update_pending = paint_aggregator_.HasPendingUpdate(); |