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

Side by Side Diff: ui/events/blink/web_input_event_traits.cc

Issue 2250233002: Type->String helper function added to WebInputEvent. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Blink_Common_export instead of blink_export Created 4 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
OLDNEW
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 "ui/events/blink/web_input_event_traits.h" 5 #include "ui/events/blink/web_input_event_traits.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/strings/stringprintf.h" 8 #include "base/strings/stringprintf.h"
9 9
10 using base::StringAppendF; 10 using base::StringAppendF;
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 event.movedBeyondSlopRegion, event.uniqueTouchEventId); 101 event.movedBeyondSlopRegion, event.uniqueTouchEventId);
102 for (unsigned i = 0; i < event.touchesLength; ++i) 102 for (unsigned i = 0; i < event.touchesLength; ++i)
103 ApppendTouchPointDetails(event.touches[i], result); 103 ApppendTouchPointDetails(event.touches[i], result);
104 result->append(" ]\n}"); 104 result->append(" ]\n}");
105 } 105 }
106 106
107 struct WebInputEventToString { 107 struct WebInputEventToString {
108 template <class EventType> 108 template <class EventType>
109 bool Execute(const WebInputEvent& event, std::string* result) const { 109 bool Execute(const WebInputEvent& event, std::string* result) const {
110 SStringPrintf(result, "%s (Time: %lf, Modifiers: %d)\n", 110 SStringPrintf(result, "%s (Time: %lf, Modifiers: %d)\n",
111 WebInputEventTraits::GetName(event.type), 111 WebInputEvent::GetName(event.type), event.timeStampSeconds,
112 event.timeStampSeconds,
113 event.modifiers); 112 event.modifiers);
114 const EventType& typed_event = static_cast<const EventType&>(event); 113 const EventType& typed_event = static_cast<const EventType&>(event);
115 ApppendEventDetails(typed_event, result); 114 ApppendEventDetails(typed_event, result);
116 return true; 115 return true;
117 } 116 }
118 }; 117 };
119 118
120 struct WebInputEventSize { 119 struct WebInputEventSize {
121 template <class EventType> 120 template <class EventType>
122 bool Execute(WebInputEvent::Type /* type */, size_t* type_size) const { 121 bool Execute(WebInputEvent::Type /* type */, size_t* type_size) const {
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 return op.template Execute<WebTouchEvent>(arg_in, arg_out); 161 return op.template Execute<WebTouchEvent>(arg_in, arg_out);
163 else if (WebInputEvent::isGestureEventType(type)) 162 else if (WebInputEvent::isGestureEventType(type))
164 return op.template Execute<WebGestureEvent>(arg_in, arg_out); 163 return op.template Execute<WebGestureEvent>(arg_in, arg_out);
165 164
166 NOTREACHED() << "Unknown webkit event type " << type; 165 NOTREACHED() << "Unknown webkit event type " << type;
167 return false; 166 return false;
168 } 167 }
169 168
170 } // namespace 169 } // namespace
171 170
172 const char* WebInputEventTraits::GetName(WebInputEvent::Type type) {
173 #define CASE_TYPE(t) case WebInputEvent::t: return #t
174 switch(type) {
175 CASE_TYPE(Undefined);
176 CASE_TYPE(MouseDown);
177 CASE_TYPE(MouseUp);
178 CASE_TYPE(MouseMove);
179 CASE_TYPE(MouseEnter);
180 CASE_TYPE(MouseLeave);
181 CASE_TYPE(ContextMenu);
182 CASE_TYPE(MouseWheel);
183 CASE_TYPE(RawKeyDown);
184 CASE_TYPE(KeyDown);
185 CASE_TYPE(KeyUp);
186 CASE_TYPE(Char);
187 CASE_TYPE(GestureScrollBegin);
188 CASE_TYPE(GestureScrollEnd);
189 CASE_TYPE(GestureScrollUpdate);
190 CASE_TYPE(GestureFlingStart);
191 CASE_TYPE(GestureFlingCancel);
192 CASE_TYPE(GestureShowPress);
193 CASE_TYPE(GestureTap);
194 CASE_TYPE(GestureTapUnconfirmed);
195 CASE_TYPE(GestureTapDown);
196 CASE_TYPE(GestureTapCancel);
197 CASE_TYPE(GestureDoubleTap);
198 CASE_TYPE(GestureTwoFingerTap);
199 CASE_TYPE(GestureLongPress);
200 CASE_TYPE(GestureLongTap);
201 CASE_TYPE(GesturePinchBegin);
202 CASE_TYPE(GesturePinchEnd);
203 CASE_TYPE(GesturePinchUpdate);
204 CASE_TYPE(TouchStart);
205 CASE_TYPE(TouchMove);
206 CASE_TYPE(TouchEnd);
207 CASE_TYPE(TouchCancel);
208 CASE_TYPE(TouchScrollStarted);
209 default:
210 // Must include default to let blink::WebInputEvent add new event types
211 // before they're added here.
212 DLOG(WARNING) <<
213 "Unhandled WebInputEvent type in WebInputEventTraits::GetName.\n";
214 break;
215 }
216 #undef CASE_TYPE
217 return "";
218 }
219
220 std::string WebInputEventTraits::ToString(const WebInputEvent& event) { 171 std::string WebInputEventTraits::ToString(const WebInputEvent& event) {
221 std::string result; 172 std::string result;
222 Apply(WebInputEventToString(), event.type, event, &result); 173 Apply(WebInputEventToString(), event.type, event, &result);
223 return result; 174 return result;
224 } 175 }
225 176
226 size_t WebInputEventTraits::GetSize(WebInputEvent::Type type) { 177 size_t WebInputEventTraits::GetSize(WebInputEvent::Type type) {
227 size_t size = 0; 178 size_t size = 0;
228 Apply(WebInputEventSize(), type, type, &size); 179 Apply(WebInputEventSize(), type, type, &size);
229 return size; 180 return size;
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 246
296 uint32_t WebInputEventTraits::GetUniqueTouchEventId( 247 uint32_t WebInputEventTraits::GetUniqueTouchEventId(
297 const WebInputEvent& event) { 248 const WebInputEvent& event) {
298 if (WebInputEvent::isTouchEventType(event.type)) { 249 if (WebInputEvent::isTouchEventType(event.type)) {
299 return static_cast<const WebTouchEvent&>(event).uniqueTouchEventId; 250 return static_cast<const WebTouchEvent&>(event).uniqueTouchEventId;
300 } 251 }
301 return 0U; 252 return 0U;
302 } 253 }
303 254
304 } // namespace ui 255 } // namespace ui
OLDNEW
« content/browser/android/content_view_core_impl.cc ('K') | « ui/events/blink/web_input_event_traits.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698