#include "third_party/blink/renderer/core/page/pointer_lock_controller.h"
#include "services/network/public/mojom/web_sandbox_flags.mojom-blink.h"
#include "third_party/blink/public/common/input/web_mouse_event.h"
#include "third_party/blink/public/mojom/input/pointer_lock_result.mojom-blink.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise.h"
#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_pointer_lock_options.h"
#include "third_party/blink/renderer/core/dom/dom_exception.h"
#include "third_party/blink/renderer/core/dom/element.h"
#include "third_party/blink/renderer/core/dom/events/event.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/input/event_handler.h"
#include "third_party/blink/renderer/core/inspector/console_message.h"
#include "third_party/blink/renderer/core/page/chrome_client.h"
#include "third_party/blink/renderer/core/page/focus_controller.h"
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/widget/frame_widget.h"
namespace blink {
PointerLockController::PointerLockController(Page* page)
: … { … }
bool PointerLockController::RequestPointerLock(Element* target,
ResultCallback callback) { … }
void PointerLockController::RequestPointerLock(
ScriptPromiseResolver<IDLUndefined>* resolver,
Element* target,
const PointerLockOptions* options) { … }
void PointerLockController::ChangeLockRequestCallback(
Element* target,
ResultCallback callback,
bool unadjusted_movement_requested,
mojom::blink::PointerLockResult result) { … }
void PointerLockController::LockRequestCallback(
ResultCallback callback,
bool unadjusted_movement_requested,
mojom::blink::PointerLockResult result,
mojo::PendingRemote<blink::mojom::blink::PointerLockContext> context) { … }
void PointerLockController::ProcessResultPromise(
ScriptPromiseResolver<IDLUndefined>* resolver,
mojom::blink::PointerLockResult result) { … }
void PointerLockController::ProcessResult(
ResultCallback callback,
bool unadjusted_movement_requested,
mojom::blink::PointerLockResult result) { … }
DOMException* PointerLockController::ConvertResultToException(
mojom::blink::PointerLockResult result) { … }
void PointerLockController::ExitPointerLock() { … }
void PointerLockController::ElementRemoved(Element* element) { … }
void PointerLockController::DocumentDetached(Document* document) { … }
bool PointerLockController::LockPending() const { … }
bool PointerLockController::IsPointerLocked() const { … }
Element* PointerLockController::GetElement() const { … }
void PointerLockController::DidAcquirePointerLock() { … }
void PointerLockController::DidNotAcquirePointerLock() { … }
void PointerLockController::DispatchLockedMouseEvent(
const WebMouseEvent& event,
const Vector<WebMouseEvent>& coalesced_events,
const Vector<WebMouseEvent>& predicted_events,
const AtomicString& event_type) { … }
void PointerLockController::GetPointerLockPosition(
gfx::PointF* lock_position,
gfx::PointF* lock_screen_position) { … }
void PointerLockController::ClearElement() { … }
void PointerLockController::EnqueueEvent(const AtomicString& type,
Element* element) { … }
void PointerLockController::EnqueueEvent(const AtomicString& type,
Document* document) { … }
void PointerLockController::Trace(Visitor* visitor) const { … }
Element* PointerLockController::GetPointerLockedElement(LocalFrame* frame) { … }
}