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 "base/bind_helpers.h" | 5 #include "base/bind_helpers.h" |
6 #include "base/command_line.h" | 6 #include "base/command_line.h" |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
9 #include "content/browser/browser_plugin/browser_plugin_guest.h" | 9 #include "content/browser/browser_plugin/browser_plugin_guest.h" |
10 #include "content/browser/renderer_host/render_view_host_impl.h" | 10 #include "content/browser/renderer_host/render_view_host_impl.h" |
(...skipping 17 matching lines...) Expand all Loading... |
28 namespace content { | 28 namespace content { |
29 | 29 |
30 namespace { | 30 namespace { |
31 | 31 |
32 bool ShouldSendPinchGesture() { | 32 bool ShouldSendPinchGesture() { |
33 static bool pinch_allowed = | 33 static bool pinch_allowed = |
34 CommandLine::ForCurrentProcess()->HasSwitch(switches::kEnablePinch); | 34 CommandLine::ForCurrentProcess()->HasSwitch(switches::kEnablePinch); |
35 return pinch_allowed; | 35 return pinch_allowed; |
36 } | 36 } |
37 | 37 |
38 WebKit::WebGestureEvent CreateFlingCancelEvent(double time_stamp) { | 38 blink::WebGestureEvent CreateFlingCancelEvent(double time_stamp) { |
39 WebKit::WebGestureEvent gesture_event; | 39 blink::WebGestureEvent gesture_event; |
40 gesture_event.timeStampSeconds = time_stamp; | 40 gesture_event.timeStampSeconds = time_stamp; |
41 gesture_event.type = WebKit::WebGestureEvent::GestureFlingCancel; | 41 gesture_event.type = blink::WebGestureEvent::GestureFlingCancel; |
42 gesture_event.sourceDevice = WebKit::WebGestureEvent::Touchscreen; | 42 gesture_event.sourceDevice = blink::WebGestureEvent::Touchscreen; |
43 return gesture_event; | 43 return gesture_event; |
44 } | 44 } |
45 | 45 |
46 } // namespace | 46 } // namespace |
47 | 47 |
48 RenderWidgetHostViewGuest::RenderWidgetHostViewGuest( | 48 RenderWidgetHostViewGuest::RenderWidgetHostViewGuest( |
49 RenderWidgetHost* widget_host, | 49 RenderWidgetHost* widget_host, |
50 BrowserPluginGuest* guest, | 50 BrowserPluginGuest* guest, |
51 RenderWidgetHostView* platform_view) | 51 RenderWidgetHostView* platform_view) |
52 : host_(RenderWidgetHostImpl::From(widget_host)), | 52 : host_(RenderWidgetHostImpl::From(widget_host)), |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
391 } | 391 } |
392 | 392 |
393 bool RenderWidgetHostViewGuest::LockMouse() { | 393 bool RenderWidgetHostViewGuest::LockMouse() { |
394 return platform_view_->LockMouse(); | 394 return platform_view_->LockMouse(); |
395 } | 395 } |
396 | 396 |
397 void RenderWidgetHostViewGuest::UnlockMouse() { | 397 void RenderWidgetHostViewGuest::UnlockMouse() { |
398 return platform_view_->UnlockMouse(); | 398 return platform_view_->UnlockMouse(); |
399 } | 399 } |
400 | 400 |
401 void RenderWidgetHostViewGuest::GetScreenInfo(WebKit::WebScreenInfo* results) { | 401 void RenderWidgetHostViewGuest::GetScreenInfo(blink::WebScreenInfo* results) { |
402 RenderWidgetHostViewPort* embedder_view = | 402 RenderWidgetHostViewPort* embedder_view = |
403 RenderWidgetHostViewPort::FromRWHV( | 403 RenderWidgetHostViewPort::FromRWHV( |
404 guest_->GetEmbedderRenderWidgetHostView()); | 404 guest_->GetEmbedderRenderWidgetHostView()); |
405 if (embedder_view) | 405 if (embedder_view) |
406 embedder_view->GetScreenInfo(results); | 406 embedder_view->GetScreenInfo(results); |
407 } | 407 } |
408 | 408 |
409 void RenderWidgetHostViewGuest::OnAccessibilityEvents( | 409 void RenderWidgetHostViewGuest::OnAccessibilityEvents( |
410 const std::vector<AccessibilityHostMsg_EventParams>& params) { | 410 const std::vector<AccessibilityHostMsg_EventParams>& params) { |
411 } | 411 } |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
518 void RenderWidgetHostViewGuest::DispatchPostponedGestureEvent( | 518 void RenderWidgetHostViewGuest::DispatchPostponedGestureEvent( |
519 ui::GestureEvent* event) { | 519 ui::GestureEvent* event) { |
520 ForwardGestureEventToRenderer(event); | 520 ForwardGestureEventToRenderer(event); |
521 } | 521 } |
522 | 522 |
523 void RenderWidgetHostViewGuest::DispatchCancelTouchEvent( | 523 void RenderWidgetHostViewGuest::DispatchCancelTouchEvent( |
524 ui::TouchEvent* event) { | 524 ui::TouchEvent* event) { |
525 if (!host_) | 525 if (!host_) |
526 return; | 526 return; |
527 | 527 |
528 WebKit::WebTouchEvent cancel_event; | 528 blink::WebTouchEvent cancel_event; |
529 cancel_event.type = WebKit::WebInputEvent::TouchCancel; | 529 cancel_event.type = blink::WebInputEvent::TouchCancel; |
530 cancel_event.timeStampSeconds = event->time_stamp().InSecondsF(); | 530 cancel_event.timeStampSeconds = event->time_stamp().InSecondsF(); |
531 host_->ForwardTouchEventWithLatencyInfo(cancel_event, *event->latency()); | 531 host_->ForwardTouchEventWithLatencyInfo(cancel_event, *event->latency()); |
532 } | 532 } |
533 | 533 |
534 bool RenderWidgetHostViewGuest::ForwardGestureEventToRenderer( | 534 bool RenderWidgetHostViewGuest::ForwardGestureEventToRenderer( |
535 ui::GestureEvent* gesture) { | 535 ui::GestureEvent* gesture) { |
536 #if defined(OS_WIN) || defined(USE_AURA) | 536 #if defined(OS_WIN) || defined(USE_AURA) |
537 if (!host_) | 537 if (!host_) |
538 return false; | 538 return false; |
539 | 539 |
540 // Pinch gestures are disabled by default on windows desktop. See | 540 // Pinch gestures are disabled by default on windows desktop. See |
541 // crbug.com/128477 and crbug.com/148816 | 541 // crbug.com/128477 and crbug.com/148816 |
542 if ((gesture->type() == ui::ET_GESTURE_PINCH_BEGIN || | 542 if ((gesture->type() == ui::ET_GESTURE_PINCH_BEGIN || |
543 gesture->type() == ui::ET_GESTURE_PINCH_UPDATE || | 543 gesture->type() == ui::ET_GESTURE_PINCH_UPDATE || |
544 gesture->type() == ui::ET_GESTURE_PINCH_END) && | 544 gesture->type() == ui::ET_GESTURE_PINCH_END) && |
545 !ShouldSendPinchGesture()) { | 545 !ShouldSendPinchGesture()) { |
546 return true; | 546 return true; |
547 } | 547 } |
548 | 548 |
549 WebKit::WebGestureEvent web_gesture = | 549 blink::WebGestureEvent web_gesture = |
550 MakeWebGestureEventFromUIEvent(*gesture); | 550 MakeWebGestureEventFromUIEvent(*gesture); |
551 const gfx::Point& client_point = gesture->location(); | 551 const gfx::Point& client_point = gesture->location(); |
552 const gfx::Point& screen_point = gesture->location(); | 552 const gfx::Point& screen_point = gesture->location(); |
553 | 553 |
554 web_gesture.x = client_point.x(); | 554 web_gesture.x = client_point.x(); |
555 web_gesture.y = client_point.y(); | 555 web_gesture.y = client_point.y(); |
556 web_gesture.globalX = screen_point.x(); | 556 web_gesture.globalX = screen_point.x(); |
557 web_gesture.globalY = screen_point.y(); | 557 web_gesture.globalY = screen_point.y(); |
558 | 558 |
559 if (web_gesture.type == WebKit::WebGestureEvent::Undefined) | 559 if (web_gesture.type == blink::WebGestureEvent::Undefined) |
560 return false; | 560 return false; |
561 if (web_gesture.type == WebKit::WebGestureEvent::GestureTapDown) { | 561 if (web_gesture.type == blink::WebGestureEvent::GestureTapDown) { |
562 host_->ForwardGestureEvent( | 562 host_->ForwardGestureEvent( |
563 CreateFlingCancelEvent(gesture->time_stamp().InSecondsF())); | 563 CreateFlingCancelEvent(gesture->time_stamp().InSecondsF())); |
564 } | 564 } |
565 host_->ForwardGestureEvent(web_gesture); | 565 host_->ForwardGestureEvent(web_gesture); |
566 return true; | 566 return true; |
567 #else | 567 #else |
568 return false; | 568 return false; |
569 #endif | 569 #endif |
570 } | 570 } |
571 | 571 |
572 void RenderWidgetHostViewGuest::ProcessGestures( | 572 void RenderWidgetHostViewGuest::ProcessGestures( |
573 ui::GestureRecognizer::Gestures* gestures) { | 573 ui::GestureRecognizer::Gestures* gestures) { |
574 if ((gestures == NULL) || gestures->empty()) | 574 if ((gestures == NULL) || gestures->empty()) |
575 return; | 575 return; |
576 for (ui::GestureRecognizer::Gestures::iterator g_it = gestures->begin(); | 576 for (ui::GestureRecognizer::Gestures::iterator g_it = gestures->begin(); |
577 g_it != gestures->end(); | 577 g_it != gestures->end(); |
578 ++g_it) { | 578 ++g_it) { |
579 ForwardGestureEventToRenderer(*g_it); | 579 ForwardGestureEventToRenderer(*g_it); |
580 } | 580 } |
581 } | 581 } |
582 | 582 |
583 | 583 |
584 } // namespace content | 584 } // namespace content |
OLD | NEW |