| Index: ui/chromeos/touch_exploration_controller.h
|
| diff --git a/ui/chromeos/touch_exploration_controller.h b/ui/chromeos/touch_exploration_controller.h
|
| index ab07f2c26c707a346bebbb373405adb86dc49db8..aad8d4c5654611fca9cc1e2a6ae0d563282f4bf0 100644
|
| --- a/ui/chromeos/touch_exploration_controller.h
|
| +++ b/ui/chromeos/touch_exploration_controller.h
|
| @@ -60,6 +60,10 @@ class TouchEvent;
|
| // anywhere on the screen, hear its description, then double-tap anywhere
|
| // to activate it.
|
| //
|
| +// If the user enters touch exploration mode, they can click without lifting
|
| +// their touch exploration finger by tapping anywhere else on the screen with
|
| +// a second finger, while the touch exploration finger is still pressed.
|
| +//
|
| // If the user adds a second finger during the grace period, they enter
|
| // passthrough mode. In this mode, the first finger is ignored but all
|
| // additional touch events are mostly passed through unmodified. So a
|
| @@ -105,7 +109,8 @@ class UI_CHROMEOS_EXPORT TouchExplorationController :
|
| const ui::TouchEvent& event, scoped_ptr<ui::Event>* rewritten_event);
|
| ui::EventRewriteStatus InPassthroughMinusOne(
|
| const ui::TouchEvent& event, scoped_ptr<ui::Event>* rewritten_event);
|
| -
|
| + ui::EventRewriteStatus InTouchExploreSecondPress(
|
| + const ui::TouchEvent& event, scoped_ptr<ui::Event>* rewritten_event);
|
| // This timer is started every time we get the first press event, and
|
| // it fires after the double-click timeout elapses (300 ms by default).
|
| // If the user taps and releases within 300 ms and doesn't press again,
|
| @@ -159,6 +164,13 @@ class UI_CHROMEOS_EXPORT TouchExplorationController :
|
| // the user starts a scroll with 2 fingers, they can release either one
|
| // and continue the scrolling.
|
| PASSTHROUGH_MINUS_ONE,
|
| +
|
| + // The user was in touch exploration, but has placed down another finger.
|
| + // If the user releases the second finger, a touch press and release
|
| + // will go through at the last touch explore location. If the user
|
| + // releases the touch explore finger, the other finger will continue with
|
| + // touch explore. Any fingers pressed past the first two are ignored.
|
| + TOUCH_EXPLORE_SECOND_PRESS,
|
| };
|
|
|
| void VlogState(const char* function_name);
|
| @@ -190,9 +202,9 @@ class UI_CHROMEOS_EXPORT TouchExplorationController :
|
| // A copy of the event from the initial touch press.
|
| scoped_ptr<ui::TouchEvent> initial_press_;
|
|
|
| - // The last location where we synthesized a mouse move event.
|
| - // When the user double-taps, we send the passed-through tap here.
|
| - gfx::PointF last_touch_exploration_location_;
|
| + // The last synthesized mouse move event. When the user double-taps,
|
| + // we send the passed-through tap to the location of this event.
|
| + scoped_ptr<ui::TouchEvent> last_touch_exploration_;
|
|
|
| // A timer to fire the mouse move event after the double-tap delay.
|
| base::OneShotTimer<TouchExplorationController> tap_timer_;
|
|
|