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

Unified Diff: views/controls/textfield/native_textfield_views.h

Issue 6267002: Implement double/triple click functionality in views textfield. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: minor refactoring Created 9 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 side-by-side diff with in-line comments
Download patch
Index: views/controls/textfield/native_textfield_views.h
diff --git a/views/controls/textfield/native_textfield_views.h b/views/controls/textfield/native_textfield_views.h
index 0344c853077ec06875883b895a025a2eeae59246..2010f60621ca15f50f6c0ff62c6f0108020c656f 100644
--- a/views/controls/textfield/native_textfield_views.h
+++ b/views/controls/textfield/native_textfield_views.h
@@ -14,6 +14,10 @@
#include "views/controls/textfield/native_textfield_wrapper.h"
#include "views/view.h"
+namespace base {
+class Time;
+}
+
namespace gfx {
class Canvas;
} // namespace
@@ -159,6 +163,10 @@ class NativeTextfieldViews : public views::View,
// Find a cusor position for given |point| in this views coordinates.
size_t FindCursorPosition(const gfx::Point& point) const;
+ // Double or tripple click handler. Returns true if a double/triple click is
+ // detected and handled.
+ bool DetectAndHandleDoubleAndTripleClick(const views::MouseEvent& e);
+
// Utility function to inform the parent textfield (and its controller if any)
// that the text in the textfield has changed.
void PropagateTextChange();
@@ -190,6 +198,12 @@ class NativeTextfieldViews : public views::View,
// A runnable method factory for callback to update the cursor.
ScopedRunnableMethodFactory<NativeTextfieldViews> cursor_timer_;
+ // Time of last mouse press. Used for tracking double/triple click.
+ base::Time last_mouse_press_time_;
+
+ // True if a double click has occured and we are waiting for a triple click.
+ bool tracking_triple_click_;
+
// Context menu and its content list for the textfield.
scoped_ptr<ui::SimpleMenuModel> context_menu_contents_;
scoped_ptr<Menu2> context_menu_menu_;
« no previous file with comments | « no previous file | views/controls/textfield/native_textfield_views.cc » ('j') | views/controls/textfield/native_textfield_views.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698