| Index: content/renderer/input/frame_input_handler_impl.cc
|
| diff --git a/content/renderer/input/frame_input_handler_impl.cc b/content/renderer/input/frame_input_handler_impl.cc
|
| index 79be47153609f975e5d780e26d8180e31d2b3405..7d71ee7964bf1936a26cb9164f6e1a0566d5e95b 100644
|
| --- a/content/renderer/input/frame_input_handler_impl.cc
|
| +++ b/content/renderer/input/frame_input_handler_impl.cc
|
| @@ -54,11 +54,11 @@ void FrameInputHandlerImpl::CreateMojoService(
|
| new FrameInputHandlerImpl(render_frame, std::move(request));
|
| }
|
|
|
| -void FrameInputHandlerImpl::RunOnMainThread(const base::Closure& closure) {
|
| +void FrameInputHandlerImpl::RunOnMainThread(base::OnceClosure closure) {
|
| if (input_event_queue_) {
|
| - input_event_queue_->QueueClosure(closure);
|
| + input_event_queue_->QueueClosure(std::move(closure));
|
| } else {
|
| - closure.Run();
|
| + std::move(closure).Run();
|
| }
|
| }
|
|
|
| @@ -247,6 +247,19 @@ void FrameInputHandlerImpl::SelectAll() {
|
| UpdateState::kIsSelectingRange));
|
| }
|
|
|
| +void FrameInputHandlerImpl::HitTestFrameAt(const gfx::PointF& point,
|
| + HitTestFrameAtCallback callback) {
|
| + RunOnMainThread(base::BindOnce(&FrameInputHandlerImpl::HitTestOnMainThread,
|
| + weak_this_, point, std::move(callback)));
|
| +}
|
| +
|
| +void FrameInputHandlerImpl::HitTestOnMainThread(
|
| + const gfx::PointF& point,
|
| + HitTestFrameAtCallback callback) {
|
| + std::move(callback).Run(
|
| + render_frame_->GetRenderWidget()->HitTestFrameAt(point));
|
| +}
|
| +
|
| void FrameInputHandlerImpl::CollapseSelection() {
|
| if (!main_thread_task_runner_->BelongsToCurrentThread()) {
|
| RunOnMainThread(
|
|
|