summaryrefslogtreecommitdiff
path: root/Source/WebCore/page/PointerLockController.cpp
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2016-04-10 09:28:39 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2016-04-10 09:28:39 +0000
commit32761a6cee1d0dee366b885b7b9c777e67885688 (patch)
treed6bec92bebfb216f4126356e55518842c2f476a1 /Source/WebCore/page/PointerLockController.cpp
parenta4e969f4965059196ca948db781e52f7cfebf19e (diff)
downloadWebKitGtk-tarball-32761a6cee1d0dee366b885b7b9c777e67885688.tar.gz
webkitgtk-2.4.11webkitgtk-2.4.11
Diffstat (limited to 'Source/WebCore/page/PointerLockController.cpp')
-rw-r--r--Source/WebCore/page/PointerLockController.cpp40
1 files changed, 22 insertions, 18 deletions
diff --git a/Source/WebCore/page/PointerLockController.cpp b/Source/WebCore/page/PointerLockController.cpp
index 897a415d9..5d6f5a5ea 100644
--- a/Source/WebCore/page/PointerLockController.cpp
+++ b/Source/WebCore/page/PointerLockController.cpp
@@ -25,8 +25,6 @@
#include "config.h"
#include "PointerLockController.h"
-#if ENABLE(POINTER_LOCK)
-
#include "Chrome.h"
#include "ChromeClient.h"
#include "Element.h"
@@ -35,46 +33,52 @@
#include "PlatformMouseEvent.h"
#include "VoidCallback.h"
+#if ENABLE(POINTER_LOCK)
namespace WebCore {
-PointerLockController::PointerLockController(Page& page)
+PointerLockController::PointerLockController(Page* page)
: m_page(page)
- , m_lockPending(false)
{
}
+PassOwnPtr<PointerLockController> PointerLockController::create(Page* page)
+{
+ return adoptPtr(new PointerLockController(page));
+}
+
void PointerLockController::requestPointerLock(Element* target)
{
if (!target || !target->inDocument() || m_documentOfRemovedElementWhileWaitingForUnlock) {
- enqueueEvent(eventNames().pointerlockerrorEvent, target);
+ enqueueEvent(eventNames().webkitpointerlockerrorEvent, target);
return;
}
if (target->document().isSandboxed(SandboxPointerLock)) {
// FIXME: This message should be moved off the console once a solution to https://bugs.webkit.org/show_bug.cgi?id=103274 exists.
- target->document().addConsoleMessage(MessageSource::Security, MessageLevel::Error, ASCIILiteral("Blocked pointer lock on an element because the element's frame is sandboxed and the 'allow-pointer-lock' permission is not set."));
- enqueueEvent(eventNames().pointerlockerrorEvent, target);
+ target->document().addConsoleMessage(SecurityMessageSource, ErrorMessageLevel, "Blocked pointer lock on an element because the element's frame is sandboxed and the 'allow-pointer-lock' permission is not set.");
+ enqueueEvent(eventNames().webkitpointerlockerrorEvent, target);
return;
}
if (m_element) {
if (&m_element->document() != &target->document()) {
- enqueueEvent(eventNames().pointerlockerrorEvent, target);
+ enqueueEvent(eventNames().webkitpointerlockerrorEvent, target);
return;
}
- enqueueEvent(eventNames().pointerlockchangeEvent, target);
+ enqueueEvent(eventNames().webkitpointerlockchangeEvent, target);
m_element = target;
- } else if (m_page.chrome().client().requestPointerLock()) {
+ } else if (m_page->chrome().client().requestPointerLock()) {
m_lockPending = true;
m_element = target;
- } else
- enqueueEvent(eventNames().pointerlockerrorEvent, target);
+ } else {
+ enqueueEvent(eventNames().webkitpointerlockerrorEvent, target);
+ }
}
void PointerLockController::requestPointerUnlock()
{
- return m_page.chrome().client().requestPointerUnlock();
+ return m_page->chrome().client().requestPointerUnlock();
}
void PointerLockController::elementRemoved(Element* element)
@@ -108,21 +112,21 @@ Element* PointerLockController::element() const
void PointerLockController::didAcquirePointerLock()
{
- enqueueEvent(eventNames().pointerlockchangeEvent, m_element.get());
+ enqueueEvent(eventNames().webkitpointerlockchangeEvent, m_element.get());
m_lockPending = false;
}
void PointerLockController::didNotAcquirePointerLock()
{
- enqueueEvent(eventNames().pointerlockerrorEvent, m_element.get());
+ enqueueEvent(eventNames().webkitpointerlockerrorEvent, m_element.get());
clearElement();
}
void PointerLockController::didLosePointerLock()
{
- enqueueEvent(eventNames().pointerlockchangeEvent, m_element ? &m_element->document() : m_documentOfRemovedElementWhileWaitingForUnlock.get());
+ enqueueEvent(eventNames().webkitpointerlockchangeEvent, m_element ? &m_element->document() : m_documentOfRemovedElementWhileWaitingForUnlock.get());
clearElement();
- m_documentOfRemovedElementWhileWaitingForUnlock = nullptr;
+ m_documentOfRemovedElementWhileWaitingForUnlock = 0;
}
void PointerLockController::dispatchLockedMouseEvent(const PlatformMouseEvent& event, const AtomicString& eventType)
@@ -140,7 +144,7 @@ void PointerLockController::dispatchLockedMouseEvent(const PlatformMouseEvent& e
void PointerLockController::clearElement()
{
m_lockPending = false;
- m_element = nullptr;
+ m_element = 0;
}
void PointerLockController::enqueueEvent(const AtomicString& type, Element* element)