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

Side by Side Diff: components/exo/wayland/server.cc

Issue 2458853002: exo: Replace fling cancel with generic zero distance scroll
Patch Set: fixed unittest Created 4 years, 1 month 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "components/exo/wayland/server.h" 5 #include "components/exo/wayland/server.h"
6 6
7 #include <grp.h> 7 #include <grp.h>
8 #include <linux/input.h> 8 #include <linux/input.h>
9 #include <stddef.h> 9 #include <stddef.h>
10 #include <stdint.h> 10 #include <stdint.h>
(...skipping 2094 matching lines...) Expand 10 before | Expand all | Expand 10 after
2105 double x_value = offset.x() * kAxisStepDistance; 2105 double x_value = offset.x() * kAxisStepDistance;
2106 wl_pointer_send_axis(pointer_resource_, TimeTicksToMilliseconds(time_stamp), 2106 wl_pointer_send_axis(pointer_resource_, TimeTicksToMilliseconds(time_stamp),
2107 WL_POINTER_AXIS_HORIZONTAL_SCROLL, 2107 WL_POINTER_AXIS_HORIZONTAL_SCROLL,
2108 wl_fixed_from_double(-x_value)); 2108 wl_fixed_from_double(-x_value));
2109 2109
2110 double y_value = offset.y() * kAxisStepDistance; 2110 double y_value = offset.y() * kAxisStepDistance;
2111 wl_pointer_send_axis(pointer_resource_, TimeTicksToMilliseconds(time_stamp), 2111 wl_pointer_send_axis(pointer_resource_, TimeTicksToMilliseconds(time_stamp),
2112 WL_POINTER_AXIS_VERTICAL_SCROLL, 2112 WL_POINTER_AXIS_VERTICAL_SCROLL,
2113 wl_fixed_from_double(-y_value)); 2113 wl_fixed_from_double(-y_value));
2114 } 2114 }
2115 void OnPointerScrollCancel(base::TimeTicks time_stamp) override {
2116 // Wayland doesn't know the concept of a canceling kinetic scrolling.
2117 // But we can send a 0 distance scroll to emulate this behavior.
2118 OnPointerScroll(time_stamp, gfx::Vector2dF(0, 0), false);
2119 OnPointerScrollStop(time_stamp);
2120 }
2121 void OnPointerScrollStop(base::TimeTicks time_stamp) override { 2115 void OnPointerScrollStop(base::TimeTicks time_stamp) override {
2122 if (wl_resource_get_version(pointer_resource_) >= 2116 if (wl_resource_get_version(pointer_resource_) >=
2123 WL_POINTER_AXIS_STOP_SINCE_VERSION) { 2117 WL_POINTER_AXIS_STOP_SINCE_VERSION) {
2124 wl_pointer_send_axis_stop(pointer_resource_, 2118 wl_pointer_send_axis_stop(pointer_resource_,
2125 TimeTicksToMilliseconds(time_stamp), 2119 TimeTicksToMilliseconds(time_stamp),
2126 WL_POINTER_AXIS_HORIZONTAL_SCROLL); 2120 WL_POINTER_AXIS_HORIZONTAL_SCROLL);
2127 wl_pointer_send_axis_stop(pointer_resource_, 2121 wl_pointer_send_axis_stop(pointer_resource_,
2128 TimeTicksToMilliseconds(time_stamp), 2122 TimeTicksToMilliseconds(time_stamp),
2129 WL_POINTER_AXIS_VERTICAL_SCROLL); 2123 WL_POINTER_AXIS_VERTICAL_SCROLL);
2130 } 2124 }
(...skipping 941 matching lines...) Expand 10 before | Expand all | Expand 10 after
3072 DCHECK(event_loop); 3066 DCHECK(event_loop);
3073 wl_event_loop_dispatch(event_loop, timeout.InMilliseconds()); 3067 wl_event_loop_dispatch(event_loop, timeout.InMilliseconds());
3074 } 3068 }
3075 3069
3076 void Server::Flush() { 3070 void Server::Flush() {
3077 wl_display_flush_clients(wl_display_.get()); 3071 wl_display_flush_clients(wl_display_.get());
3078 } 3072 }
3079 3073
3080 } // namespace wayland 3074 } // namespace wayland
3081 } // namespace exo 3075 } // namespace exo
OLDNEW
« components/exo/pointer.cc ('K') | « components/exo/pointer_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698