| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/browser/renderer_host/render_widget_host_view_android.h" | 5 #include "content/browser/renderer_host/render_widget_host_view_android.h" |
| 6 | 6 |
| 7 #include <android/bitmap.h> | 7 #include <android/bitmap.h> |
| 8 | 8 |
| 9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 103 | 103 |
| 104 using_delegated_renderer |= CommandLine::ForCurrentProcess()->HasSwitch( | 104 using_delegated_renderer |= CommandLine::ForCurrentProcess()->HasSwitch( |
| 105 switches::kEnableDelegatedRenderer); | 105 switches::kEnableDelegatedRenderer); |
| 106 | 106 |
| 107 using_delegated_renderer &= !CommandLine::ForCurrentProcess()->HasSwitch( | 107 using_delegated_renderer &= !CommandLine::ForCurrentProcess()->HasSwitch( |
| 108 switches::kDisableDelegatedRenderer); | 108 switches::kDisableDelegatedRenderer); |
| 109 | 109 |
| 110 return using_delegated_renderer; | 110 return using_delegated_renderer; |
| 111 } | 111 } |
| 112 | 112 |
| 113 ui::LatencyInfo CreateLatencyInfo(const blink::WebInputEvent event) { |
| 114 ui::LatencyInfo latency_info; |
| 115 // The latency number should only be added if the timestamp is valid. |
| 116 if (event.timeStampSeconds) { |
| 117 const int64 time_micros = static_cast<int64>( |
| 118 event.timeStampSeconds * base::Time::kMicrosecondsPerSecond); |
| 119 latency_info.AddLatencyNumberWithTimestamp( |
| 120 ui::INPUT_EVENT_LATENCY_ORIGINAL_COMPONENT, |
| 121 0, |
| 122 0, |
| 123 base::TimeTicks() + base::TimeDelta::FromMicroseconds(time_micros), |
| 124 1, |
| 125 false); |
| 126 } |
| 127 return latency_info; |
| 128 } |
| 129 |
| 113 } // anonymous namespace | 130 } // anonymous namespace |
| 114 | 131 |
| 115 RenderWidgetHostViewAndroid::RenderWidgetHostViewAndroid( | 132 RenderWidgetHostViewAndroid::RenderWidgetHostViewAndroid( |
| 116 RenderWidgetHostImpl* widget_host, | 133 RenderWidgetHostImpl* widget_host, |
| 117 ContentViewCoreImpl* content_view_core) | 134 ContentViewCoreImpl* content_view_core) |
| 118 : host_(widget_host), | 135 : host_(widget_host), |
| 119 needs_begin_frame_(false), | 136 needs_begin_frame_(false), |
| 120 are_layers_attached_(!widget_host->is_hidden()), | 137 are_layers_attached_(!widget_host->is_hidden()), |
| 121 content_view_core_(NULL), | 138 content_view_core_(NULL), |
| 122 ime_adapter_android_(this), | 139 ime_adapter_android_(this), |
| (...skipping 1048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1171 | 1188 |
| 1172 void RenderWidgetHostViewAndroid::SendKeyEvent( | 1189 void RenderWidgetHostViewAndroid::SendKeyEvent( |
| 1173 const NativeWebKeyboardEvent& event) { | 1190 const NativeWebKeyboardEvent& event) { |
| 1174 if (host_) | 1191 if (host_) |
| 1175 host_->ForwardKeyboardEvent(event); | 1192 host_->ForwardKeyboardEvent(event); |
| 1176 } | 1193 } |
| 1177 | 1194 |
| 1178 void RenderWidgetHostViewAndroid::SendTouchEvent( | 1195 void RenderWidgetHostViewAndroid::SendTouchEvent( |
| 1179 const blink::WebTouchEvent& event) { | 1196 const blink::WebTouchEvent& event) { |
| 1180 if (host_) | 1197 if (host_) |
| 1181 host_->ForwardTouchEventWithLatencyInfo(event, ui::LatencyInfo()); | 1198 host_->ForwardTouchEventWithLatencyInfo(event, CreateLatencyInfo(event)); |
| 1182 } | 1199 } |
| 1183 | 1200 |
| 1184 | 1201 |
| 1185 void RenderWidgetHostViewAndroid::SendMouseEvent( | 1202 void RenderWidgetHostViewAndroid::SendMouseEvent( |
| 1186 const blink::WebMouseEvent& event) { | 1203 const blink::WebMouseEvent& event) { |
| 1187 if (host_) | 1204 if (host_) |
| 1188 host_->ForwardMouseEvent(event); | 1205 host_->ForwardMouseEvent(event); |
| 1189 } | 1206 } |
| 1190 | 1207 |
| 1191 void RenderWidgetHostViewAndroid::SendMouseWheelEvent( | 1208 void RenderWidgetHostViewAndroid::SendMouseWheelEvent( |
| 1192 const blink::WebMouseWheelEvent& event) { | 1209 const blink::WebMouseWheelEvent& event) { |
| 1193 if (host_) | 1210 if (host_) |
| 1194 host_->ForwardWheelEvent(event); | 1211 host_->ForwardWheelEvent(event); |
| 1195 } | 1212 } |
| 1196 | 1213 |
| 1197 void RenderWidgetHostViewAndroid::SendGestureEvent( | 1214 void RenderWidgetHostViewAndroid::SendGestureEvent( |
| 1198 const blink::WebGestureEvent& event) { | 1215 const blink::WebGestureEvent& event) { |
| 1199 // Sending a gesture that may trigger overscroll should resume the effect. | 1216 // Sending a gesture that may trigger overscroll should resume the effect. |
| 1200 if (overscroll_effect_enabled_) | 1217 if (overscroll_effect_enabled_) |
| 1201 overscroll_effect_->Enable(); | 1218 overscroll_effect_->Enable(); |
| 1202 | 1219 |
| 1203 if (host_) | 1220 if (host_) |
| 1204 host_->ForwardGestureEvent(event); | 1221 host_->ForwardGestureEventWithLatencyInfo(event, CreateLatencyInfo(event)); |
| 1205 } | 1222 } |
| 1206 | 1223 |
| 1207 void RenderWidgetHostViewAndroid::SelectRange(const gfx::Point& start, | 1224 void RenderWidgetHostViewAndroid::SelectRange(const gfx::Point& start, |
| 1208 const gfx::Point& end) { | 1225 const gfx::Point& end) { |
| 1209 if (host_) | 1226 if (host_) |
| 1210 host_->SelectRange(start, end); | 1227 host_->SelectRange(start, end); |
| 1211 } | 1228 } |
| 1212 | 1229 |
| 1213 void RenderWidgetHostViewAndroid::MoveCaret(const gfx::Point& point) { | 1230 void RenderWidgetHostViewAndroid::MoveCaret(const gfx::Point& point) { |
| 1214 if (host_) | 1231 if (host_) |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1431 // RenderWidgetHostView, public: | 1448 // RenderWidgetHostView, public: |
| 1432 | 1449 |
| 1433 // static | 1450 // static |
| 1434 RenderWidgetHostView* | 1451 RenderWidgetHostView* |
| 1435 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) { | 1452 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) { |
| 1436 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget); | 1453 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget); |
| 1437 return new RenderWidgetHostViewAndroid(rwhi, NULL); | 1454 return new RenderWidgetHostViewAndroid(rwhi, NULL); |
| 1438 } | 1455 } |
| 1439 | 1456 |
| 1440 } // namespace content | 1457 } // namespace content |
| OLD | NEW |