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/android/build_info.h" | 9 #include "base/android/build_info.h" |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 797 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
808 | 808 |
809 return true; | 809 return true; |
810 } | 810 } |
811 | 811 |
812 bool RenderWidgetHostViewAndroid::OnTouchHandleEvent( | 812 bool RenderWidgetHostViewAndroid::OnTouchHandleEvent( |
813 const ui::MotionEvent& event) { | 813 const ui::MotionEvent& event) { |
814 return selection_controller_ && | 814 return selection_controller_ && |
815 selection_controller_->WillHandleTouchEvent(event); | 815 selection_controller_->WillHandleTouchEvent(event); |
816 } | 816 } |
817 | 817 |
818 void RenderWidgetHostViewAndroid::ResetGestureDetection() { | 818 void RenderWidgetHostViewAndroid::OnMainFrameNavigation() { |
819 const ui::MotionEvent* current_down_event = | 819 const ui::MotionEvent* current_down_event = |
820 gesture_provider_.GetCurrentDownEvent(); | 820 gesture_provider_.GetCurrentDownEvent(); |
821 if (current_down_event) { | 821 if (current_down_event) { |
822 scoped_ptr<ui::MotionEvent> cancel_event = current_down_event->Cancel(); | 822 scoped_ptr<ui::MotionEvent> cancel_event = current_down_event->Cancel(); |
823 OnTouchEvent(*cancel_event); | 823 OnTouchEvent(*cancel_event); |
824 } | 824 } |
825 | 825 |
826 // A hard reset ensures prevention of any timer-based events. | 826 // A hard reset ensures prevention of any timer-based events. |
827 gesture_provider_.ResetDetection(); | 827 gesture_provider_.ResetDetection(); |
828 } | 828 } |
(...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1251 | 1251 |
1252 void RenderWidgetHostViewAndroid::OnSelectionEvent( | 1252 void RenderWidgetHostViewAndroid::OnSelectionEvent( |
1253 ui::SelectionEventType event, | 1253 ui::SelectionEventType event, |
1254 const gfx::PointF& position) { | 1254 const gfx::PointF& position) { |
1255 DCHECK(content_view_core_); | 1255 DCHECK(content_view_core_); |
1256 // Showing the selection action bar can alter the current View coordinates in | 1256 // Showing the selection action bar can alter the current View coordinates in |
1257 // such a way that the current MotionEvent stream is suddenly shifted in | 1257 // such a way that the current MotionEvent stream is suddenly shifted in |
1258 // space. Avoid the associated scroll jump by pre-emptively cancelling gesture | 1258 // space. Avoid the associated scroll jump by pre-emptively cancelling gesture |
1259 // detection; scrolling after the selection is activated is unnecessary. | 1259 // detection; scrolling after the selection is activated is unnecessary. |
1260 if (event == ui::SelectionEventType::SELECTION_SHOWN) | 1260 if (event == ui::SelectionEventType::SELECTION_SHOWN) |
1261 ResetGestureDetection(); | 1261 OnMainFrameNavigation(); |
sadrul
2015/02/03 01:26:16
This feels wrong? Perhaps have ResetGestureDetecto
lanwei
2015/02/04 21:10:05
Done.
| |
1262 content_view_core_->OnSelectionEvent(event, position); | 1262 content_view_core_->OnSelectionEvent(event, position); |
1263 } | 1263 } |
1264 | 1264 |
1265 scoped_ptr<ui::TouchHandleDrawable> | 1265 scoped_ptr<ui::TouchHandleDrawable> |
1266 RenderWidgetHostViewAndroid::CreateDrawable() { | 1266 RenderWidgetHostViewAndroid::CreateDrawable() { |
1267 DCHECK(content_view_core_); | 1267 DCHECK(content_view_core_); |
1268 if (!using_browser_compositor_) | 1268 if (!using_browser_compositor_) |
1269 return content_view_core_->CreatePopupTouchHandleDrawable(); | 1269 return content_view_core_->CreatePopupTouchHandleDrawable(); |
1270 | 1270 |
1271 return scoped_ptr<ui::TouchHandleDrawable>(new CompositedTouchHandleDrawable( | 1271 return scoped_ptr<ui::TouchHandleDrawable>(new CompositedTouchHandleDrawable( |
(...skipping 644 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1916 results->orientationAngle = display.RotationAsDegree(); | 1916 results->orientationAngle = display.RotationAsDegree(); |
1917 results->orientationType = | 1917 results->orientationType = |
1918 RenderWidgetHostViewBase::GetOrientationTypeForMobile(display); | 1918 RenderWidgetHostViewBase::GetOrientationTypeForMobile(display); |
1919 gfx::DeviceDisplayInfo info; | 1919 gfx::DeviceDisplayInfo info; |
1920 results->depth = info.GetBitsPerPixel(); | 1920 results->depth = info.GetBitsPerPixel(); |
1921 results->depthPerComponent = info.GetBitsPerComponent(); | 1921 results->depthPerComponent = info.GetBitsPerComponent(); |
1922 results->isMonochrome = (results->depthPerComponent == 0); | 1922 results->isMonochrome = (results->depthPerComponent == 0); |
1923 } | 1923 } |
1924 | 1924 |
1925 } // namespace content | 1925 } // namespace content |
OLD | NEW |