Chromium Code Reviews| Index: third_party/WebKit/Source/core/page/PointerLockController.cpp |
| diff --git a/third_party/WebKit/Source/core/page/PointerLockController.cpp b/third_party/WebKit/Source/core/page/PointerLockController.cpp |
| index c5b6dbc000daa59ffe0b585c38c5c97a1250881b..361fbf325a038545ac823b2e3c7243f2996b6bed 100644 |
| --- a/third_party/WebKit/Source/core/page/PointerLockController.cpp |
| +++ b/third_party/WebKit/Source/core/page/PointerLockController.cpp |
| @@ -68,7 +68,7 @@ void PointerLockController::requestPointerLock(Element* target) |
| } |
| enqueueEvent(EventTypeNames::pointerlockchange, target); |
| m_element = target; |
| - } else if (m_page->chromeClient().requestPointerLock()) { |
| + } else if (m_page->chromeClient().requestPointerLock(target->document().frame())) { |
| m_lockPending = true; |
| m_element = target; |
| } else { |
| @@ -78,7 +78,7 @@ void PointerLockController::requestPointerLock(Element* target) |
| void PointerLockController::requestPointerUnlock() |
| { |
| - return m_page->chromeClient().requestPointerUnlock(); |
| + return m_page->chromeClient().requestPointerUnlock(m_element->document().frame()); |
| } |
| void PointerLockController::elementRemoved(Element* element) |
| @@ -87,16 +87,16 @@ void PointerLockController::elementRemoved(Element* element) |
| m_documentOfRemovedElementWhileWaitingForUnlock = &m_element->document(); |
| // Set element null immediately to block any future interaction with it |
|
scheib
2016/05/19 00:38:58
This comment should follow the clearElement call.
lfg
2016/05/19 23:54:06
Done.
|
| // including mouse events received before the unlock completes. |
| - clearElement(); |
| requestPointerUnlock(); |
| + clearElement(); |
| } |
| } |
| void PointerLockController::documentDetached(Document* document) |
| { |
| if (m_element && m_element->document() == document) { |
| - clearElement(); |
| requestPointerUnlock(); |
| + clearElement(); |
| } |
| } |