| Index: Source/core/dom/Document.cpp
|
| diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp
|
| index 2805c26655f0d17f1a842b09222087e09353068f..cff2dc256274e675a021d08777efb73a00938c43 100644
|
| --- a/Source/core/dom/Document.cpp
|
| +++ b/Source/core/dom/Document.cpp
|
| @@ -2796,7 +2796,13 @@ MouseEventWithHitTestResults Document::prepareMouseEvent(const HitTestRequest& r
|
| {
|
| ASSERT(!renderer() || renderer()->isRenderView());
|
|
|
| - if (!renderer())
|
| + // RenderView::hitTest causes a layout, and we don't want to hit that until the first
|
| + // layout because until then, there is nothing shown on the screen - the user can't
|
| + // have intentionally clicked on something belonging to this page. Furthermore,
|
| + // mousemove events before the first layout should not lead to a premature layout()
|
| + // happening, which could show a flash of white.
|
| + // See also the similar code in EventHandler::hitTestResultAtPoint.
|
| + if (!renderer() || !view() || !view()->didFirstLayout())
|
| return MouseEventWithHitTestResults(event, HitTestResult(LayoutPoint()));
|
|
|
| HitTestResult result(documentPoint);
|
|
|