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

Side by Side Diff: content/common/input/event_with_latency_info.h

Issue 2576013002: Introducing WebCoalescedInputEvent and inclusion in content/common (Closed)
Patch Set: Fix a few DCHECK hits Created 3 years, 11 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 #ifndef CONTENT_COMMON_INPUT_EVENT_WITH_LATENCY_INFO_H_ 5 #ifndef CONTENT_COMMON_INPUT_EVENT_WITH_LATENCY_INFO_H_
6 #define CONTENT_COMMON_INPUT_EVENT_WITH_LATENCY_INFO_H_ 6 #define CONTENT_COMMON_INPUT_EVENT_WITH_LATENCY_INFO_H_
7 7
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "content/common/content_export.h" 10 #include "content/common/content_export.h"
11 #include "third_party/WebKit/public/platform/WebCoalescedInputEvent.h"
11 #include "third_party/WebKit/public/platform/WebGestureEvent.h" 12 #include "third_party/WebKit/public/platform/WebGestureEvent.h"
12 #include "third_party/WebKit/public/platform/WebInputEvent.h"
13 #include "third_party/WebKit/public/platform/WebMouseWheelEvent.h" 13 #include "third_party/WebKit/public/platform/WebMouseWheelEvent.h"
14 #include "ui/events/blink/blink_event_util.h" 14 #include "ui/events/blink/blink_event_util.h"
15 #include "ui/events/blink/scoped_web_input_event.h"
16 #include "ui/events/latency_info.h" 15 #include "ui/events/latency_info.h"
17 16
18 namespace content { 17 namespace content {
19 18
20 class ScopedWebInputEventWithLatencyInfo { 19 class ScopedWebInputEventWithLatencyInfo {
21 public: 20 public:
22 ScopedWebInputEventWithLatencyInfo(ui::ScopedWebInputEvent, 21 ScopedWebInputEventWithLatencyInfo(blink::WebScopedInputEvent,
23 const ui::LatencyInfo&); 22 const ui::LatencyInfo&);
24 23
25 ~ScopedWebInputEventWithLatencyInfo(); 24 ~ScopedWebInputEventWithLatencyInfo();
26 25
27 bool CanCoalesceWith(const ScopedWebInputEventWithLatencyInfo& other) const 26 bool CanCoalesceWith(const ScopedWebInputEventWithLatencyInfo& other) const
28 WARN_UNUSED_RESULT; 27 WARN_UNUSED_RESULT;
29 28
30 const blink::WebInputEvent& event() const; 29 const blink::WebInputEvent& event() const;
31 blink::WebInputEvent& event(); 30 blink::WebInputEvent& event();
32 const ui::LatencyInfo latencyInfo() const { return latency_; } 31 const ui::LatencyInfo latencyInfo() const { return latency_; }
33 32
34 void CoalesceWith(const ScopedWebInputEventWithLatencyInfo& other); 33 void CoalesceWith(const ScopedWebInputEventWithLatencyInfo& other);
35 34
36 private: 35 private:
37 ui::ScopedWebInputEvent event_; 36 blink::WebScopedInputEvent event_;
38 mutable ui::LatencyInfo latency_; 37 mutable ui::LatencyInfo latency_;
39 }; 38 };
40 39
41 template <typename T> 40 template <typename T>
42 class EventWithLatencyInfo { 41 class EventWithLatencyInfo {
43 public: 42 public:
44 T event; 43 T event;
45 mutable ui::LatencyInfo latency; 44 mutable ui::LatencyInfo latency;
46 45
47 explicit EventWithLatencyInfo(const T& e) : event(e) {} 46 explicit EventWithLatencyInfo(const T& e) : event(e) {}
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 typedef EventWithLatencyInfo<blink::WebMouseWheelEvent> 91 typedef EventWithLatencyInfo<blink::WebMouseWheelEvent>
93 MouseWheelEventWithLatencyInfo; 92 MouseWheelEventWithLatencyInfo;
94 typedef EventWithLatencyInfo<blink::WebMouseEvent> 93 typedef EventWithLatencyInfo<blink::WebMouseEvent>
95 MouseEventWithLatencyInfo; 94 MouseEventWithLatencyInfo;
96 typedef EventWithLatencyInfo<blink::WebTouchEvent> 95 typedef EventWithLatencyInfo<blink::WebTouchEvent>
97 TouchEventWithLatencyInfo; 96 TouchEventWithLatencyInfo;
98 97
99 } // namespace content 98 } // namespace content
100 99
101 #endif // CONTENT_COMMON_INPUT_EVENT_WITH_LATENCY_INFO_H_ 100 #endif // CONTENT_COMMON_INPUT_EVENT_WITH_LATENCY_INFO_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698