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

Unified Diff: ui/touch_selection/touch_handle_drawable_aura.h

Issue 698253004: Reland: Implement Aura side of unified touch text selection for contents (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased after addition of touch_handle_orientation file Created 5 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: ui/touch_selection/touch_handle_drawable_aura.h
diff --git a/ui/touch_selection/touch_handle_drawable_aura.h b/ui/touch_selection/touch_handle_drawable_aura.h
new file mode 100644
index 0000000000000000000000000000000000000000..026ad5a18874ab3a8d1e67b672096ed5e26ff81e
--- /dev/null
+++ b/ui/touch_selection/touch_handle_drawable_aura.h
@@ -0,0 +1,54 @@
+// Copyright 2015 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 UI_TOUCH_SELECTION_TOUCH_HANDLE_DRAWABLE_AURA_H_
+#define UI_TOUCH_SELECTION_TOUCH_HANDLE_DRAWABLE_AURA_H_
+
+#include "ui/aura_extra/image_window_delegate.h"
+#include "ui/touch_selection/touch_handle.h"
+#include "ui/touch_selection/touch_handle_orientation.h"
+
+namespace ui {
+
+class TouchHandleDrawableAura : public TouchHandleDrawable,
+ public aura_extra::ImageWindowDelegate {
sadrul 2015/03/05 12:37:03 Instead of making TouchHandleDrawableAura a subcla
mohsen 2015/03/06 23:10:08 Yeah. Done.
+ public:
+ explicit TouchHandleDrawableAura(aura::Window* parent);
+ ~TouchHandleDrawableAura() override;
+
+ // Returns the maximum width/height that can be occupied by a handle image.
+ static gfx::Size GetMaxHandleImageSize();
+
+ protected:
+ // aura_extra::ImageWindowDelegate:
+ void OnWindowDestroyed(aura::Window* window) override;
+
+ private:
+ void UpdateBounds();
+
+ // TouchHandleDrawable:
+ void SetEnabled(bool enabled) override;
+ void SetOrientation(TouchHandleOrientation orientation) override;
+ void SetAlpha(float alpha) override;
+ void SetFocus(const gfx::PointF& position) override;
+ gfx::RectF GetVisibleBounds() const override;
+
+ scoped_ptr<aura::Window> window_;
+ bool enabled_;
+ float alpha_;
+ TouchHandleOrientation orientation_;
+
+ // Focal position of the handle set via SetFocus (normally located on the
+ // intersection of the cursor line and the text base line).
+ gfx::PointF focal_position_;
+
+ // Window bounds relative to the focal position.
+ gfx::RectF relative_bounds_;
+
+ DISALLOW_COPY_AND_ASSIGN(TouchHandleDrawableAura);
+};
+
+} // namespace ui
+
+#endif // UI_TOUCH_SELECTION_TOUCH_HANDLE_DRAWABLE_AURA_H_

Powered by Google App Engine
This is Rietveld 408576698