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

Unified Diff: ui/aura/test/event_generator.cc

Issue 296403011: Support double-tap to click in touch accessibility controller. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Update browser test for touch exploration too Created 6 years, 6 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
« no previous file with comments | « ui/aura/test/event_generator.h ('k') | ui/chromeos/touch_exploration_controller.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/aura/test/event_generator.cc
diff --git a/ui/aura/test/event_generator.cc b/ui/aura/test/event_generator.cc
index ecfa63becdef9535a9a8fc13d97a57bc24d3c661..162770e67d0d254513ec0cb39801ade8fba040e8 100644
--- a/ui/aura/test/event_generator.cc
+++ b/ui/aura/test/event_generator.cc
@@ -7,6 +7,7 @@
#include "base/bind.h"
#include "base/memory/scoped_ptr.h"
#include "base/message_loop/message_loop_proxy.h"
+#include "base/time/default_tick_clock.h"
#include "ui/aura/client/screen_position_client.h"
#include "ui/aura/window_event_dispatcher.h"
#include "ui/aura/window_tree_host.h"
@@ -69,8 +70,9 @@ class TestTouchEvent : public ui::TouchEvent {
TestTouchEvent(ui::EventType type,
const gfx::Point& root_location,
int touch_id,
- int flags)
- : TouchEvent(type, root_location, flags, touch_id, ui::EventTimeForNow(),
+ int flags,
+ base::TimeDelta timestamp)
+ : TouchEvent(type, root_location, flags, touch_id, timestamp,
1.0f, 1.0f, 1.0f, 1.0f) {
}
@@ -87,7 +89,8 @@ EventGenerator::EventGenerator(Window* root_window)
current_host_(delegate_->GetHostAt(current_location_)),
flags_(0),
grab_(false),
- async_(false) {
+ async_(false),
+ tick_clock_(new base::DefaultTickClock()) {
}
EventGenerator::EventGenerator(Window* root_window, const gfx::Point& point)
@@ -96,7 +99,8 @@ EventGenerator::EventGenerator(Window* root_window, const gfx::Point& point)
current_host_(delegate_->GetHostAt(current_location_)),
flags_(0),
grab_(false),
- async_(false) {
+ async_(false),
+ tick_clock_(new base::DefaultTickClock()) {
}
EventGenerator::EventGenerator(Window* root_window, Window* window)
@@ -105,7 +109,8 @@ EventGenerator::EventGenerator(Window* root_window, Window* window)
current_host_(delegate_->GetHostAt(current_location_)),
flags_(0),
grab_(false),
- async_(false) {
+ async_(false),
+ tick_clock_(new base::DefaultTickClock()) {
}
EventGenerator::EventGenerator(EventGeneratorDelegate* delegate)
@@ -113,7 +118,8 @@ EventGenerator::EventGenerator(EventGeneratorDelegate* delegate)
current_host_(delegate_->GetHostAt(current_location_)),
flags_(0),
grab_(false),
- async_(false) {
+ async_(false),
+ tick_clock_(new base::DefaultTickClock()) {
}
EventGenerator::~EventGenerator() {
@@ -219,7 +225,8 @@ void EventGenerator::PressTouch() {
void EventGenerator::PressTouchId(int touch_id) {
TestTouchEvent touchev(
- ui::ET_TOUCH_PRESSED, GetLocationInCurrentRoot(), touch_id, flags_);
+ ui::ET_TOUCH_PRESSED, GetLocationInCurrentRoot(), touch_id, flags_,
+ Now());
Dispatch(&touchev);
}
@@ -230,7 +237,8 @@ void EventGenerator::MoveTouch(const gfx::Point& point) {
void EventGenerator::MoveTouchId(const gfx::Point& point, int touch_id) {
current_location_ = point;
TestTouchEvent touchev(
- ui::ET_TOUCH_MOVED, GetLocationInCurrentRoot(), touch_id, flags_);
+ ui::ET_TOUCH_MOVED, GetLocationInCurrentRoot(), touch_id, flags_,
+ Now());
Dispatch(&touchev);
if (!grab_)
@@ -243,7 +251,8 @@ void EventGenerator::ReleaseTouch() {
void EventGenerator::ReleaseTouchId(int touch_id) {
TestTouchEvent touchev(
- ui::ET_TOUCH_RELEASED, GetLocationInCurrentRoot(), touch_id, flags_);
+ ui::ET_TOUCH_RELEASED, GetLocationInCurrentRoot(), touch_id, flags_,
+ Now());
Dispatch(&touchev);
}
@@ -263,7 +272,7 @@ void EventGenerator::GestureEdgeSwipe() {
0,
0,
0,
- ui::EventTimeForNow(),
+ Now(),
ui::GestureEventDetails(ui::ET_GESTURE_WIN8_EDGE_SWIPE, 0, 0),
0);
Dispatch(&gesture);
@@ -274,7 +283,7 @@ void EventGenerator::GestureTapAt(const gfx::Point& location) {
ui::TouchEvent press(ui::ET_TOUCH_PRESSED,
location,
kTouchId,
- ui::EventTimeForNow());
+ Now());
Dispatch(&press);
ui::TouchEvent release(
@@ -288,7 +297,7 @@ void EventGenerator::GestureTapDownAndUp(const gfx::Point& location) {
ui::TouchEvent press(ui::ET_TOUCH_PRESSED,
location,
kTouchId,
- ui::EventTimeForNow());
+ Now());
Dispatch(&press);
ui::TouchEvent release(
@@ -312,7 +321,7 @@ void EventGenerator::GestureScrollSequenceWithCallback(
int steps,
const ScrollStepCallback& callback) {
const int kTouchId = 5;
- base::TimeDelta timestamp = ui::EventTimeForNow();
+ base::TimeDelta timestamp = Now();
ui::TouchEvent press(ui::ET_TOUCH_PRESSED, start, kTouchId, timestamp);
Dispatch(&press);
@@ -367,7 +376,7 @@ void EventGenerator::GestureMultiFingerScrollWithDelays(
points[i] = start[i];
}
- base::TimeDelta press_time_first = ui::EventTimeForNow();
+ base::TimeDelta press_time_first = Now();
base::TimeDelta press_time[kMaxTouchPoints];
bool pressed[kMaxTouchPoints];
for (int i = 0; i < count; ++i) {
@@ -417,8 +426,7 @@ void EventGenerator::ScrollSequence(const gfx::Point& start,
float y_offset,
int steps,
int num_fingers) {
- base::TimeDelta timestamp = base::TimeDelta::FromInternalValue(
- base::TimeTicks::Now().ToInternalValue());
+ base::TimeDelta timestamp = Now();
ui::ScrollEvent fling_cancel(ui::ET_SCROLL_FLING_CANCEL,
start,
timestamp,
@@ -457,7 +465,7 @@ void EventGenerator::ScrollSequence(const gfx::Point& start,
const std::vector<gfx::Point>& offsets,
int num_fingers) {
int steps = offsets.size();
- base::TimeDelta timestamp = ui::EventTimeForNow();
+ base::TimeDelta timestamp = Now();
ui::ScrollEvent fling_cancel(ui::ET_SCROLL_FLING_CANCEL,
start,
timestamp,
@@ -501,6 +509,17 @@ void EventGenerator::Dispatch(ui::Event* event) {
DoDispatchEvent(event, async_);
}
+void EventGenerator::SetTickClock(scoped_ptr<base::TickClock> tick_clock) {
+ tick_clock_ = tick_clock.Pass();
+}
+
+base::TimeDelta EventGenerator::Now() {
+ // This is the same as what EventTimeForNow() does, but here we do it
+ // with a tick clock that can be replaced with a simulated clock for tests.
+ return base::TimeDelta::FromInternalValue(
+ tick_clock_->NowTicks().ToInternalValue());
+}
+
void EventGenerator::DispatchKeyEvent(bool is_press,
ui::KeyboardCode key_code,
int flags) {
@@ -638,6 +657,5 @@ void EventGenerator::DispatchNextPendingEvent() {
}
}
-
} // namespace test
} // namespace aura
« no previous file with comments | « ui/aura/test/event_generator.h ('k') | ui/chromeos/touch_exploration_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698