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

Side by Side Diff: third_party/WebKit/public/platform/WebInputEvent.h

Issue 2861373004: Add blink::WebInputEvent::IsPinchGestureEventType(). (Closed)
Patch Set: rebase Created 3 years, 7 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 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 kGestureScrollBegin, 123 kGestureScrollBegin,
124 kGestureTypeFirst = kGestureScrollBegin, 124 kGestureTypeFirst = kGestureScrollBegin,
125 kGestureScrollEnd, 125 kGestureScrollEnd,
126 kGestureScrollUpdate, 126 kGestureScrollUpdate,
127 // Fling is a high-velocity and quickly released finger movement. 127 // Fling is a high-velocity and quickly released finger movement.
128 // FlingStart is sent once and kicks off a scroll animation. 128 // FlingStart is sent once and kicks off a scroll animation.
129 kGestureFlingStart, 129 kGestureFlingStart,
130 kGestureFlingCancel, 130 kGestureFlingCancel,
131 // Pinch is two fingers moving closer or farther apart. 131 // Pinch is two fingers moving closer or farther apart.
132 kGesturePinchBegin, 132 kGesturePinchBegin,
133 kGesturePinchTypeFirst = kGesturePinchBegin,
133 kGesturePinchEnd, 134 kGesturePinchEnd,
134 kGesturePinchUpdate, 135 kGesturePinchUpdate,
136 kGesturePinchTypeLast = kGesturePinchUpdate,
135 137
136 // The following types are variations and subevents of single-taps. 138 // The following types are variations and subevents of single-taps.
137 // 139 //
138 // Sent the moment the user's finger hits the screen. 140 // Sent the moment the user's finger hits the screen.
139 kGestureTapDown, 141 kGestureTapDown,
140 // Sent a short interval later, after it seems the finger is staying in 142 // Sent a short interval later, after it seems the finger is staying in
141 // place. It's used to activate the link highlight ("show the press"). 143 // place. It's used to activate the link highlight ("show the press").
142 kGestureShowPress, 144 kGestureShowPress,
143 // Sent on finger lift for a simple, static, quick finger tap. This is the 145 // Sent on finger lift for a simple, static, quick finger tap. This is the
144 // "main" event which maps to a synthetic mouse click event. 146 // "main" event which maps to a synthetic mouse click event.
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 kRailsModeHorizontal = 1, 274 kRailsModeHorizontal = 1,
273 kRailsModeVertical = 2, 275 kRailsModeVertical = 2,
274 }; 276 };
275 277
276 static const int kInputModifiers = 278 static const int kInputModifiers =
277 kShiftKey | kControlKey | kAltKey | kMetaKey; 279 kShiftKey | kControlKey | kAltKey | kMetaKey;
278 280
279 static constexpr double kTimeStampForTesting = 123.0; 281 static constexpr double kTimeStampForTesting = 123.0;
280 282
281 // Returns true if the WebInputEvent |type| is a mouse event. 283 // Returns true if the WebInputEvent |type| is a mouse event.
282 static bool IsMouseEventType(int type) { 284 static bool IsMouseEventType(WebInputEvent::Type type) {
283 return kMouseTypeFirst <= type && type <= kMouseTypeLast; 285 return kMouseTypeFirst <= type && type <= kMouseTypeLast;
284 } 286 }
285 287
286 // Returns true if the WebInputEvent |type| is a keyboard event. 288 // Returns true if the WebInputEvent |type| is a keyboard event.
287 static bool IsKeyboardEventType(int type) { 289 static bool IsKeyboardEventType(WebInputEvent::Type type) {
288 return kKeyboardTypeFirst <= type && type <= kKeyboardTypeLast; 290 return kKeyboardTypeFirst <= type && type <= kKeyboardTypeLast;
289 } 291 }
290 292
291 // Returns true if the WebInputEvent |type| is a touch event. 293 // Returns true if the WebInputEvent |type| is a touch event.
292 static bool IsTouchEventType(int type) { 294 static bool IsTouchEventType(WebInputEvent::Type type) {
293 return kTouchTypeFirst <= type && type <= kTouchTypeLast; 295 return kTouchTypeFirst <= type && type <= kTouchTypeLast;
294 } 296 }
295 297
296 // Returns true if the WebInputEvent is a gesture event. 298 // Returns true if the WebInputEvent is a gesture event.
297 static bool IsGestureEventType(int type) { 299 static bool IsGestureEventType(WebInputEvent::Type type) {
298 return kGestureTypeFirst <= type && type <= kGestureTypeLast; 300 return kGestureTypeFirst <= type && type <= kGestureTypeLast;
299 } 301 }
300 302
301 bool IsSameEventClass(const WebInputEvent& other) const { 303 bool IsSameEventClass(const WebInputEvent& other) const {
302 if (IsMouseEventType(type_)) 304 if (IsMouseEventType(type_))
303 return IsMouseEventType(other.type_); 305 return IsMouseEventType(other.type_);
304 if (IsGestureEventType(type_)) 306 if (IsGestureEventType(type_))
305 return IsGestureEventType(other.type_); 307 return IsGestureEventType(other.type_);
306 if (IsTouchEventType(type_)) 308 if (IsTouchEventType(type_))
307 return IsTouchEventType(other.type_); 309 return IsTouchEventType(other.type_);
308 if (IsKeyboardEventType(type_)) 310 if (IsKeyboardEventType(type_))
309 return IsKeyboardEventType(other.type_); 311 return IsKeyboardEventType(other.type_);
310 return type_ == other.type_; 312 return type_ == other.type_;
311 } 313 }
312 314
315 // Returns true if the WebInputEvent |type| is a pinch gesture event.
316 static bool IsPinchGestureEventType(WebInputEvent::Type type) {
317 return kGesturePinchTypeFirst <= type && type <= kGesturePinchTypeLast;
318 }
319
313 static const char* GetName(WebInputEvent::Type type) { 320 static const char* GetName(WebInputEvent::Type type) {
314 #define CASE_TYPE(t) \ 321 #define CASE_TYPE(t) \
315 case WebInputEvent::k##t: \ 322 case WebInputEvent::k##t: \
316 return #t 323 return #t
317 switch (type) { 324 switch (type) {
318 CASE_TYPE(Undefined); 325 CASE_TYPE(Undefined);
319 CASE_TYPE(MouseDown); 326 CASE_TYPE(MouseDown);
320 CASE_TYPE(MouseUp); 327 CASE_TYPE(MouseUp);
321 CASE_TYPE(MouseMove); 328 CASE_TYPE(MouseMove);
322 CASE_TYPE(MouseEnter); 329 CASE_TYPE(MouseEnter);
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
395 modifiers_ = modifiers_param; 402 modifiers_ = modifiers_param;
396 #if DCHECK_IS_ON() 403 #if DCHECK_IS_ON()
397 // If dcheck is on force failures if frame scale is not initialized 404 // If dcheck is on force failures if frame scale is not initialized
398 // correctly by causing DIV0. 405 // correctly by causing DIV0.
399 frame_scale_ = 0; 406 frame_scale_ = 0;
400 #else 407 #else
401 frame_scale_ = 1; 408 frame_scale_ = 1;
402 #endif 409 #endif
403 } 410 }
404 411
405 WebInputEvent(unsigned size_param) { 412 explicit WebInputEvent(unsigned size_param) {
406 // TODO(dtapuska): Remove this memset when we remove the chrome IPC of this 413 // TODO(dtapuska): Remove this memset when we remove the chrome IPC of this
407 // struct. 414 // struct.
408 memset(this, 0, size_param); 415 memset(this, 0, size_param);
409 time_stamp_seconds_ = 0.0; 416 time_stamp_seconds_ = 0.0;
410 size_ = size_param; 417 size_ = size_param;
411 type_ = kUndefined; 418 type_ = kUndefined;
412 #if DCHECK_IS_ON() 419 #if DCHECK_IS_ON()
413 // If dcheck is on force failures if frame scale is not initialized 420 // If dcheck is on force failures if frame scale is not initialized
414 // correctly by causing DIV0. 421 // correctly by causing DIV0.
415 frame_scale_ = 0; 422 frame_scale_ = 0;
416 #else 423 #else
417 frame_scale_ = 1; 424 frame_scale_ = 1;
418 #endif 425 #endif
419 } 426 }
420 427
421 double time_stamp_seconds_; // Seconds since platform start with microsecond 428 double time_stamp_seconds_; // Seconds since platform start with microsecond
422 // resolution. 429 // resolution.
423 unsigned size_; // The size of this structure, for serialization. 430 unsigned size_; // The size of this structure, for serialization.
424 Type type_; 431 Type type_;
425 int modifiers_; 432 int modifiers_;
426 }; 433 };
427 434
428 #pragma pack(pop) 435 #pragma pack(pop)
429 436
430 } // namespace blink 437 } // namespace blink
431 438
432 #endif 439 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/DevToolsEmulator.cpp ('k') | ui/web_dialogs/web_dialog_web_contents_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698