Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(380)

Side by Side Diff: content/renderer/input/render_widget_input_handler.cc

Issue 2240983003: Move |ScopedWebInputEvent| and |WebInputEventTraits| from |content::| to "ui/events/blink" (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Move |ScopedWebInputEvent| and |WebInputEventTraits| from |content::| to |ui::| Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/input/render_widget_input_handler.h" 5 #include "content/renderer/input/render_widget_input_handler.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 #include <utility> 9 #include <utility>
10 10
11 #include "base/auto_reset.h" 11 #include "base/auto_reset.h"
12 #include "base/command_line.h" 12 #include "base/command_line.h"
13 #include "base/metrics/histogram_macros.h" 13 #include "base/metrics/histogram_macros.h"
14 #include "base/trace_event/trace_event_synthetic_delay.h" 14 #include "base/trace_event/trace_event_synthetic_delay.h"
15 #include "build/build_config.h" 15 #include "build/build_config.h"
16 #include "cc/trees/swap_promise_monitor.h" 16 #include "cc/trees/swap_promise_monitor.h"
17 #include "content/common/input/input_event_ack.h" 17 #include "content/common/input/input_event_ack.h"
18 #include "content/common/input/input_event_ack_state.h" 18 #include "content/common/input/input_event_ack_state.h"
19 #include "content/common/input/web_input_event_traits.h"
20 #include "content/public/common/content_switches.h" 19 #include "content/public/common/content_switches.h"
21 #include "content/renderer/gpu/render_widget_compositor.h" 20 #include "content/renderer/gpu/render_widget_compositor.h"
22 #include "content/renderer/ime_event_guard.h" 21 #include "content/renderer/ime_event_guard.h"
23 #include "content/renderer/input/render_widget_input_handler_delegate.h" 22 #include "content/renderer/input/render_widget_input_handler_delegate.h"
24 #include "content/renderer/render_thread_impl.h" 23 #include "content/renderer/render_thread_impl.h"
25 #include "content/renderer/render_widget.h" 24 #include "content/renderer/render_widget.h"
26 #include "third_party/WebKit/public/platform/WebFloatPoint.h" 25 #include "third_party/WebKit/public/platform/WebFloatPoint.h"
27 #include "third_party/WebKit/public/platform/WebFloatSize.h" 26 #include "third_party/WebKit/public/platform/WebFloatSize.h"
28 #include "third_party/WebKit/public/platform/scheduler/renderer/renderer_schedul er.h" 27 #include "third_party/WebKit/public/platform/scheduler/renderer/renderer_schedul er.h"
28 #include "ui/events/blink/web_input_event_traits.h"
29 #include "ui/events/latency_info.h" 29 #include "ui/events/latency_info.h"
30 #include "ui/gfx/geometry/point_conversions.h" 30 #include "ui/gfx/geometry/point_conversions.h"
31 31
32 #if defined(OS_ANDROID) 32 #if defined(OS_ANDROID)
33 #include <android/keycodes.h> 33 #include <android/keycodes.h>
34 #endif 34 #endif
35 35
36 using blink::WebFloatPoint; 36 using blink::WebFloatPoint;
37 using blink::WebFloatSize; 37 using blink::WebFloatSize;
38 using blink::WebGestureEvent; 38 using blink::WebGestureEvent;
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
238 ImeEventGuard guard(widget_); 238 ImeEventGuard guard(widget_);
239 guard.set_from_ime(from_ime); 239 guard.set_from_ime(from_ime);
240 #endif 240 #endif
241 241
242 base::TimeTicks start_time; 242 base::TimeTicks start_time;
243 if (base::TimeTicks::IsHighResolution()) 243 if (base::TimeTicks::IsHighResolution())
244 start_time = base::TimeTicks::Now(); 244 start_time = base::TimeTicks::Now();
245 245
246 TRACE_EVENT1("renderer,benchmark,rail", 246 TRACE_EVENT1("renderer,benchmark,rail",
247 "RenderWidgetInputHandler::OnHandleInputEvent", "event", 247 "RenderWidgetInputHandler::OnHandleInputEvent", "event",
248 WebInputEventTraits::GetName(input_event.type)); 248 ui::WebInputEventTraits::GetName(input_event.type));
249 TRACE_EVENT_SYNTHETIC_DELAY_BEGIN("blink.HandleInputEvent"); 249 TRACE_EVENT_SYNTHETIC_DELAY_BEGIN("blink.HandleInputEvent");
250 TRACE_EVENT_WITH_FLOW1("input,benchmark", "LatencyInfo.Flow", 250 TRACE_EVENT_WITH_FLOW1("input,benchmark", "LatencyInfo.Flow",
251 TRACE_ID_DONT_MANGLE(latency_info.trace_id()), 251 TRACE_ID_DONT_MANGLE(latency_info.trace_id()),
252 TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT, 252 TRACE_EVENT_FLAG_FLOW_IN | TRACE_EVENT_FLAG_FLOW_OUT,
253 "step", "HandleInputEventMain"); 253 "step", "HandleInputEventMain");
254 254
255 // If we don't have a high res timer, these metrics won't be accurate enough 255 // If we don't have a high res timer, these metrics won't be accurate enough
256 // to be worth collecting. Note that this does introduce some sampling bias. 256 // to be worth collecting. Note that this does introduce some sampling bias.
257 if (!start_time.is_null()) 257 if (!start_time.is_null())
258 LogInputEventLatencyUma(input_event, start_time); 258 LogInputEventLatencyUma(input_event, start_time);
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
429 // so let the delegate know the event has been handled. 429 // so let the delegate know the event has been handled.
430 delegate_->NotifyInputEventHandled(input_event.type, ack_result); 430 delegate_->NotifyInputEventHandled(input_event.type, ack_result);
431 } 431 }
432 432
433 if ((dispatch_type == DISPATCH_TYPE_BLOCKING || 433 if ((dispatch_type == DISPATCH_TYPE_BLOCKING ||
434 dispatch_type == DISPATCH_TYPE_BLOCKING_NOTIFY_MAIN) && 434 dispatch_type == DISPATCH_TYPE_BLOCKING_NOTIFY_MAIN) &&
435 can_send_ack) { 435 can_send_ack) {
436 std::unique_ptr<InputEventAck> response(new InputEventAck( 436 std::unique_ptr<InputEventAck> response(new InputEventAck(
437 input_event.type, ack_result, swap_latency_info, 437 input_event.type, ack_result, swap_latency_info,
438 std::move(event_overscroll), 438 std::move(event_overscroll),
439 WebInputEventTraits::GetUniqueTouchEventId(input_event))); 439 ui::WebInputEventTraits::GetUniqueTouchEventId(input_event)));
440 if (rate_limiting_wanted && frame_pending && !widget_->is_hidden()) { 440 if (rate_limiting_wanted && frame_pending && !widget_->is_hidden()) {
441 // We want to rate limit the input events in this case, so we'll wait for 441 // We want to rate limit the input events in this case, so we'll wait for
442 // painting to finish before ACKing this message. 442 // painting to finish before ACKing this message.
443 TRACE_EVENT_INSTANT0( 443 TRACE_EVENT_INSTANT0(
444 "renderer", 444 "renderer",
445 "RenderWidgetInputHandler::OnHandleInputEvent ack throttled", 445 "RenderWidgetInputHandler::OnHandleInputEvent ack throttled",
446 TRACE_EVENT_SCOPE_THREAD); 446 TRACE_EVENT_SCOPE_THREAD);
447 if (pending_input_event_ack_) { 447 if (pending_input_event_ack_) {
448 TRACE_EVENT_ASYNC_END0( 448 TRACE_EVENT_ASYNC_END0(
449 "input", "RenderWidgetInputHandler::ThrottledInputEventAck", 449 "input", "RenderWidgetInputHandler::ThrottledInputEventAck",
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
554 if (pending_input_event_ack_) { 554 if (pending_input_event_ack_) {
555 TRACE_EVENT_ASYNC_END0("input", 555 TRACE_EVENT_ASYNC_END0("input",
556 "RenderWidgetInputHandler::ThrottledInputEventAck", 556 "RenderWidgetInputHandler::ThrottledInputEventAck",
557 pending_input_event_ack_.get()); 557 pending_input_event_ack_.get());
558 delegate_->OnInputEventAck(std::move(pending_input_event_ack_)); 558 delegate_->OnInputEventAck(std::move(pending_input_event_ack_));
559 } 559 }
560 total_input_handling_time_this_frame_ = base::TimeDelta(); 560 total_input_handling_time_this_frame_ = base::TimeDelta();
561 } 561 }
562 562
563 } // namespace content 563 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698