diff options
author | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-31 23:42:36 +0000 |
---|---|---|
committer | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-01-31 23:42:36 +0000 |
commit | 7c58249fb9b170f84580900023aa74c326897e0a (patch) | |
tree | 68e1f37ec194194166ce5eb5b025bee08decc3f0 /ash/touch | |
parent | df504abd666b4f3cb29e595599da7b2eec9fc20c (diff) | |
download | chromium_src-7c58249fb9b170f84580900023aa74c326897e0a.zip chromium_src-7c58249fb9b170f84580900023aa74c326897e0a.tar.gz chromium_src-7c58249fb9b170f84580900023aa74c326897e0a.tar.bz2 |
ash: Add an accelerator to clear the HUD.
BUG=none
Review URL: https://codereview.chromium.org/12093094
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180005 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/touch')
-rw-r--r-- | ash/touch/touch_observer_hud.cc | 15 | ||||
-rw-r--r-- | ash/touch/touch_observer_hud.h | 4 |
2 files changed, 19 insertions, 0 deletions
diff --git a/ash/touch/touch_observer_hud.cc b/ash/touch/touch_observer_hud.cc index d6408c0..51809b0 100644 --- a/ash/touch/touch_observer_hud.cc +++ b/ash/touch/touch_observer_hud.cc @@ -87,6 +87,16 @@ class TouchHudCanvas : public views::View { SchedulePaint(); } + void Clear() { + path_index_ = 0; + color_index_ = 0; + for (size_t i = 0; i < arraysize(paths_); ++i) { + paths_[i].reset(); + } + + SchedulePaint(); + } + private: // Overridden from views::View. virtual void OnPaint(gfx::Canvas* canvas) OVERRIDE { @@ -186,6 +196,11 @@ void TouchObserverHUD::ChangeToNextMode() { } } +void TouchObserverHUD::Clear() { + if (widget_->IsVisible()) + canvas_->Clear(); +} + void TouchObserverHUD::UpdateTouchPointLabel(int index) { const char* status = NULL; switch (touch_status_[index]) { diff --git a/ash/touch/touch_observer_hud.h b/ash/touch/touch_observer_hud.h index 12dbe2b..3ae4e3d 100644 --- a/ash/touch/touch_observer_hud.h +++ b/ash/touch/touch_observer_hud.h @@ -36,6 +36,10 @@ class TouchObserverHUD : public ui::EventHandler, // cycles between a fixed number of display modes. void ChangeToNextMode(); + // Removes all existing touch points from the screen (only if the HUD is + // visible). + void Clear(); + private: void UpdateTouchPointLabel(int index); |