Chromium Code Reviews| Index: Source/core/dom/Document.cpp |
| diff --git a/Source/core/dom/Document.cpp b/Source/core/dom/Document.cpp |
| index 84cdba6d01e4121cc747a449e173fd6034358797..7b83771f0c6dea6f01cf887491c243d048c85660 100644 |
| --- a/Source/core/dom/Document.cpp |
| +++ b/Source/core/dom/Document.cpp |
| @@ -3174,6 +3174,13 @@ bool Document::setFocusedElement(PassRefPtr<Element> prpNewFocusedElement, Focus |
| else |
| view()->setFocus(false); |
| } |
| + |
| + // Autofill client may have modified the value of newFocusNode, thus require |
|
falken
2013/07/31 18:27:01
nit: newFocusNode -> newFocusedNode
|
| + // a layout update here, otherwise it will assert at newFocusedNode->isFocusable(). |
| + // See crbug.com/251163. |
| + RenderObject* renderer = newFocusedNode ? newFocusedNode->renderer() : 0; |
|
tkent
2013/07/31 21:52:05
It looks this code is not compilable. There is no
|
| + if (renderer && renderer->needsLayout()) |
| + updateLayout(); |
|
esprehn
2013/07/31 22:20:25
You shouldn't reach into the render tree and inspe
|
| } |
| if (newFocusedElement && newFocusedElement->isFocusable()) { |