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

Side by Side Diff: content/browser/renderer_host/render_widget_host_impl.cc

Issue 10895024: Use new gesture event fields in more places (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix CL diff to be against ToT (not one of my other branches) Created 8 years, 3 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 | Annotate | Revision Log
OLDNEW
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_impl.h" 5 #include "content/browser/renderer_host/render_widget_host_impl.h"
6 6
7 #include <math.h> 7 #include <math.h>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after
744 } 744 }
745 745
746 void RenderWidgetHostImpl::EnableFullAccessibilityMode() { 746 void RenderWidgetHostImpl::EnableFullAccessibilityMode() {
747 SetAccessibilityMode(AccessibilityModeComplete); 747 SetAccessibilityMode(AccessibilityModeComplete);
748 } 748 }
749 749
750 static WebGestureEvent MakeGestureEvent(WebInputEvent::Type type, 750 static WebGestureEvent MakeGestureEvent(WebInputEvent::Type type,
751 double timestamp_seconds, 751 double timestamp_seconds,
752 int x, 752 int x,
753 int y, 753 int y,
754 float delta_x,
755 float delta_y,
756 int modifiers) { 754 int modifiers) {
757 WebGestureEvent result; 755 WebGestureEvent result;
758 756
759 result.type = type; 757 result.type = type;
760 result.x = x; 758 result.x = x;
761 result.y = y; 759 result.y = y;
762 result.deltaX = delta_x;
763 result.deltaY = delta_y;
764 result.timeStampSeconds = timestamp_seconds; 760 result.timeStampSeconds = timestamp_seconds;
765 result.modifiers = modifiers; 761 result.modifiers = modifiers;
766 762
767 return result; 763 return result;
768 } 764 }
769 765
770 void RenderWidgetHostImpl::SimulateTouchGestureWithMouse( 766 void RenderWidgetHostImpl::SimulateTouchGestureWithMouse(
771 const WebMouseEvent& mouse_event) { 767 const WebMouseEvent& mouse_event) {
772 int x = mouse_event.x, y = mouse_event.y; 768 int x = mouse_event.x, y = mouse_event.y;
773 float dx = mouse_event.movementX, dy = mouse_event.movementY; 769 float dx = mouse_event.movementX, dy = mouse_event.movementY;
774 static int startX = 0, startY = 0; 770 static int startX = 0, startY = 0;
775 771
776 switch (mouse_event.button) { 772 switch (mouse_event.button) {
777 case WebMouseEvent::ButtonLeft: 773 case WebMouseEvent::ButtonLeft:
778 if (mouse_event.type == WebInputEvent::MouseDown) { 774 if (mouse_event.type == WebInputEvent::MouseDown) {
779 startX = x; 775 startX = x;
780 startY = y; 776 startY = y;
781 ForwardGestureEvent(MakeGestureEvent( 777 ForwardGestureEvent(MakeGestureEvent(
782 WebInputEvent::GestureScrollBegin, mouse_event.timeStampSeconds, 778 WebInputEvent::GestureScrollBegin, mouse_event.timeStampSeconds,
783 x, y, 0, 0, 0)); 779 x, y, 0));
784 } 780 }
785 if (dx != 0 || dy != 0) { 781 if (dx != 0 || dy != 0) {
786 ForwardGestureEvent(MakeGestureEvent( 782 WebGestureEvent event = MakeGestureEvent(
787 WebInputEvent::GestureScrollUpdate, mouse_event.timeStampSeconds, 783 WebInputEvent::GestureScrollUpdate, mouse_event.timeStampSeconds,
788 x, y, dx, dy, 0)); 784 x, y, 0);
785 event.data.scrollUpdate.deltaX = dx;
786 event.data.scrollUpdate.deltaY = dy;
787 // TODO(rbyers): deltaX/deltaY fields going away. crbug.com/143237
788 event.deltaX = dx;
789 event.deltaY = dy;
790 ForwardGestureEvent(event);
789 } 791 }
790 if (mouse_event.type == WebInputEvent::MouseUp) { 792 if (mouse_event.type == WebInputEvent::MouseUp) {
791 ForwardGestureEvent(MakeGestureEvent( 793 ForwardGestureEvent(MakeGestureEvent(
792 WebInputEvent::GestureScrollEnd, mouse_event.timeStampSeconds, 794 WebInputEvent::GestureScrollEnd, mouse_event.timeStampSeconds,
793 x, y, dx, dy, 0)); 795 x, y, 0));
794 } 796 }
795 break; 797 break;
796 case WebMouseEvent::ButtonMiddle: 798 case WebMouseEvent::ButtonMiddle:
797 if (mouse_event.type == WebInputEvent::MouseDown) { 799 if (mouse_event.type == WebInputEvent::MouseDown) {
798 startX = x; 800 startX = x;
799 startY = y; 801 startY = y;
800 ForwardGestureEvent(MakeGestureEvent( 802 ForwardGestureEvent(MakeGestureEvent(
801 WebInputEvent::GestureTapDown, mouse_event.timeStampSeconds, 803 WebInputEvent::GestureTapDown, mouse_event.timeStampSeconds,
802 x, y, 0, 0, 0)); 804 x, y, 0));
803 } 805 }
804 if (mouse_event.type == WebInputEvent::MouseUp) { 806 if (mouse_event.type == WebInputEvent::MouseUp) {
805 ForwardGestureEvent(MakeGestureEvent( 807 ForwardGestureEvent(MakeGestureEvent(
806 WebInputEvent::GestureTap, mouse_event.timeStampSeconds, 808 WebInputEvent::GestureTap, mouse_event.timeStampSeconds,
807 x, y, dx, dy, 0)); 809 x, y, 0));
808 } 810 }
809 break; 811 break;
810 case WebMouseEvent::ButtonRight: 812 case WebMouseEvent::ButtonRight:
811 if (mouse_event.type == WebInputEvent::MouseDown) { 813 if (mouse_event.type == WebInputEvent::MouseDown) {
812 startX = x; 814 startX = x;
813 startY = y; 815 startY = y;
814 ForwardGestureEvent(MakeGestureEvent( 816 ForwardGestureEvent(MakeGestureEvent(
815 WebInputEvent::GesturePinchBegin, mouse_event.timeStampSeconds, 817 WebInputEvent::GesturePinchBegin, mouse_event.timeStampSeconds,
816 x, y, 1, 1, 0)); 818 x, y, 0));
817 } 819 }
818 if (dx != 0 || dy != 0) { 820 if (dx != 0 || dy != 0) {
819 dx = pow(dy < 0 ? 0.998f : 1.002f, fabs(dy)); 821 dx = pow(dy < 0 ? 0.998f : 1.002f, fabs(dy));
820 dy = dx; 822 WebGestureEvent event = MakeGestureEvent(
821 ForwardGestureEvent(MakeGestureEvent(
822 WebInputEvent::GesturePinchUpdate, mouse_event.timeStampSeconds, 823 WebInputEvent::GesturePinchUpdate, mouse_event.timeStampSeconds,
823 startX, startY, dx, dy, 0)); 824 startX, startY, 0);
825 event.data.pinchUpdate.scale = dx;
826 event.deltaX = dx;
827 ForwardGestureEvent(event);
824 } 828 }
825 if (mouse_event.type == WebInputEvent::MouseUp) { 829 if (mouse_event.type == WebInputEvent::MouseUp) {
826 ForwardGestureEvent(MakeGestureEvent( 830 ForwardGestureEvent(MakeGestureEvent(
827 WebInputEvent::GesturePinchEnd, mouse_event.timeStampSeconds, 831 WebInputEvent::GesturePinchEnd, mouse_event.timeStampSeconds,
828 x, y, dx, dy, 0)); 832 x, y, 0));
829 } 833 }
830 break; 834 break;
831 case WebMouseEvent::ButtonNone: 835 case WebMouseEvent::ButtonNone:
832 break; 836 break;
833 } 837 }
834 } 838 }
835 839
836 void RenderWidgetHostImpl::ForwardMouseEvent(const WebMouseEvent& mouse_event) { 840 void RenderWidgetHostImpl::ForwardMouseEvent(const WebMouseEvent& mouse_event) {
837 TRACE_EVENT2("renderer_host", "RenderWidgetHostImpl::ForwardMouseEvent", 841 TRACE_EVENT2("renderer_host", "RenderWidgetHostImpl::ForwardMouseEvent",
838 "x", mouse_event.x, "y", mouse_event.y); 842 "x", mouse_event.x, "y", mouse_event.y);
(...skipping 1199 matching lines...) Expand 10 before | Expand all | Expand 10 after
2038 // indicate that no callback is in progress (i.e. without this line 2042 // indicate that no callback is in progress (i.e. without this line
2039 // DelayedAutoResized will not get called again). 2043 // DelayedAutoResized will not get called again).
2040 new_auto_size_.SetSize(0, 0); 2044 new_auto_size_.SetSize(0, 0);
2041 if (!should_auto_resize_) 2045 if (!should_auto_resize_)
2042 return; 2046 return;
2043 2047
2044 OnRenderAutoResized(new_size); 2048 OnRenderAutoResized(new_size);
2045 } 2049 }
2046 2050
2047 } // namespace content 2051 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/gesture_event_filter.cc ('k') | content/browser/renderer_host/render_widget_host_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698