OLD | NEW |
---|---|
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "chrome/browser/android/vr_shell/vr_shell_gl.h" | 5 #include "chrome/browser/android/vr_shell/vr_shell_gl.h" |
6 | 6 |
7 #include <chrono> | 7 #include <chrono> |
8 #include <limits> | 8 #include <limits> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 635 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
646 | 646 |
647 for (auto& gesture : gesture_list) { | 647 for (auto& gesture : gesture_list) { |
648 gesture->x = pixel_x; | 648 gesture->x = pixel_x; |
649 gesture->y = pixel_y; | 649 gesture->y = pixel_y; |
650 auto movableGesture = base::MakeUnique<WebGestureEvent>(*gesture); | 650 auto movableGesture = base::MakeUnique<WebGestureEvent>(*gesture); |
651 | 651 |
652 switch (gesture->type()) { | 652 switch (gesture->type()) { |
653 // Once the user starts scrolling send all the scroll events to this | 653 // Once the user starts scrolling send all the scroll events to this |
654 // element until the scrolling stops. | 654 // element until the scrolling stops. |
655 case WebInputEvent::GestureScrollBegin: | 655 case WebInputEvent::GestureScrollBegin: |
656 current_scroll_target = input_target; | 656 current_scroll_target_ = input_target; |
657 if (current_scroll_target != InputTarget::NONE) { | 657 if (current_scroll_target_ != InputTarget::NONE) { |
658 SendGesture(current_scroll_target, std::move(movableGesture)); | 658 SendGesture(current_scroll_target_, std::move(movableGesture)); |
659 } | 659 } |
660 break; | 660 break; |
661 case WebInputEvent::GestureScrollEnd: | 661 case WebInputEvent::GestureScrollEnd: |
662 if (current_scroll_target != InputTarget::NONE) { | 662 if (current_scroll_target_ != InputTarget::NONE) { |
663 SendGesture(current_scroll_target, std::move(movableGesture)); | 663 SendGesture(current_scroll_target_, std::move(movableGesture)); |
664 } | 664 } |
665 current_scroll_target = InputTarget::NONE; | 665 current_fling_target_ = current_scroll_target_; |
666 current_scroll_target_ = InputTarget::NONE; | |
666 break; | 667 break; |
667 case WebInputEvent::GestureScrollUpdate: | 668 case WebInputEvent::GestureScrollUpdate: |
668 case WebInputEvent::GestureFlingCancel: | 669 if (current_scroll_target_ != InputTarget::NONE) { |
669 case WebInputEvent::GestureFlingStart: | 670 SendGesture(current_scroll_target_, std::move(movableGesture)); |
670 if (current_scroll_target != InputTarget::NONE) { | |
671 SendGesture(current_scroll_target, std::move(movableGesture)); | |
672 } | 671 } |
673 break; | 672 break; |
673 case WebInputEvent::GestureFlingStart: | |
674 if (current_fling_target_ != InputTarget::NONE) { | |
675 SendGesture(current_fling_target_, std::move(movableGesture)); | |
676 } | |
677 current_fling_target_ = InputTarget::NONE; | |
678 break; | |
679 case WebInputEvent::GestureFlingCancel: | |
mthiesse
2017/04/12 17:46:20
Shouldn't FlingCancel do something like sending a
asimjour
2017/04/12 18:00:58
Fling cancel happens when user start to touch the
mthiesse
2017/04/12 18:05:28
Sure, but now we're sending a FlingCancel gesture
asimjour1
2017/04/12 18:15:32
I repeated the code under FlingCancel and TapDown,
| |
674 case WebInputEvent::GestureTapDown: | 680 case WebInputEvent::GestureTapDown: |
681 current_fling_target_ = InputTarget::NONE; | |
675 if (input_target != InputTarget::NONE) { | 682 if (input_target != InputTarget::NONE) { |
676 SendGesture(input_target, std::move(movableGesture)); | 683 SendGesture(input_target, std::move(movableGesture)); |
677 } | 684 } |
678 break; | 685 break; |
679 case WebInputEvent::Undefined: | 686 case WebInputEvent::Undefined: |
680 break; | 687 break; |
681 default: | 688 default: |
682 NOTREACHED(); | 689 NOTREACHED(); |
683 } | 690 } |
684 } | 691 } |
(...skipping 591 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1276 // InitializeGl. Revisit if the initialization order changes. | 1283 // InitializeGl. Revisit if the initialization order changes. |
1277 device::mojom::VRDisplayInfoPtr info = | 1284 device::mojom::VRDisplayInfoPtr info = |
1278 device::GvrDelegate::CreateVRDisplayInfo(gvr_api_.get(), | 1285 device::GvrDelegate::CreateVRDisplayInfo(gvr_api_.get(), |
1279 webvr_surface_size_, device_id); | 1286 webvr_surface_size_, device_id); |
1280 main_thread_task_runner_->PostTask( | 1287 main_thread_task_runner_->PostTask( |
1281 FROM_HERE, | 1288 FROM_HERE, |
1282 base::Bind(&RunVRDisplayInfoCallback, callback, base::Passed(&info))); | 1289 base::Bind(&RunVRDisplayInfoCallback, callback, base::Passed(&info))); |
1283 } | 1290 } |
1284 | 1291 |
1285 } // namespace vr_shell | 1292 } // namespace vr_shell |
OLD | NEW |