Index: ash/touch_hud/touch_hud_renderer.h |
diff --git a/ash/touch_hud/touch_hud_renderer.h b/ash/touch_hud/touch_hud_renderer.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..9ee0377ff078da19eda1b11c39f6f81128b79cff |
--- /dev/null |
+++ b/ash/touch_hud/touch_hud_renderer.h |
@@ -0,0 +1,49 @@ |
+// Copyright 2016 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef ASH_TOUCH_HUD_TOUCH_HUD_RENDERER_H_ |
+#define ASH_TOUCH_HUD_TOUCH_HUD_RENDERER_H_ |
+ |
+#include <map> |
+#include <memory> |
+ |
+#include "base/macros.h" |
+ |
+namespace ui { |
+class LocatedEvent; |
+} |
+ |
+namespace views { |
+class Widget; |
+} |
+ |
+namespace ash { |
+class TouchHudProjectionTest; |
+class TouchPointView; |
+ |
+// Handles touch events to draw out touch points accordingly. |
+class TouchHudRenderer { |
+ public: |
+ TouchHudRenderer(); |
+ ~TouchHudRenderer(); |
+ |
+ // Called to clear touch points and traces from the screen. |
+ void Clear(); |
+ |
+ // Receives a touch event and draws its touch point under parent_widget. |
+ void HandleTouchEvent(const ui::LocatedEvent* event, |
+ views::Widget* parent_widget); |
sadrul
2016/07/11 18:41:05
Instead of sending the Widget here, can the Widget
riajiang
2016/07/11 20:39:34
Changed to set parent_widget in the ctor.
|
+ |
+ private: |
+ friend class TouchHudProjectionTest; |
+ |
+ // a map of touch ids to TouchPointView |
+ std::map<int, TouchPointView*> points_; |
+ |
+ DISALLOW_COPY_AND_ASSIGN(TouchHudRenderer); |
+}; |
+ |
+} // namespace ash |
+ |
+#endif // ASH_TOUCH_HUD_TOUCH_HUD_RENDERER_H_ |