Chromium Code Reviews| Index: ui/views/test/widget_event_generator.h |
| diff --git a/ui/views/test/widget_event_generator.h b/ui/views/test/widget_event_generator.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..d356b13bad0d36835bff9d494e7a627a10216f8b |
| --- /dev/null |
| +++ b/ui/views/test/widget_event_generator.h |
| @@ -0,0 +1,49 @@ |
| +// Copyright 2014 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_VIEWS_TEST_WIDGET_EVENT_GENERATOR_H_ |
| +#define UI_VIEWS_TEST_WIDGET_EVENT_GENERATOR_H_ |
| + |
| +#include "base/macros.h" |
| +#include "build/build_config.h" |
| +#include "ui/gfx/native_widget_types.h" |
| + |
| +#if defined(USE_AURA) |
| +#include "ui/aura/test/event_generator.h" |
| +#elif defined(OS_MACOSX) |
| +#include "ui/views/test/widget_event_generator_mac.h" |
| +#endif |
| + |
| +namespace views { |
| +class Widget; |
| + |
| +namespace test { |
| + |
| +#if defined(USE_AURA) |
| +typedef aura::test::EventGenerator PlatformEventGenerator; |
| +#elif defined(OS_MACOSX) |
| +typedef WidgetEventGeneratorMac PlatformEventGenerator; |
| +#endif |
| + |
| +// A cross-platform event generator that can dispatch events to a views::Widget |
| +// and will work correctly in a sharded non-interactive unit test. On Aura |
| +// builds, it is simply an aura::test::EventGenerator. On other platforms, |
| +// events are generated and dispatched to the native widget. |
| +class WidgetEventGenerator : public PlatformEventGenerator { |
|
Ben Goodger (Google)
2014/07/15 16:22:20
Now that you've managed to hide the platform diffe
tapted
2014/07/16 07:56:07
Done. Took some juggling, but getting rid of these
|
| + public: |
| + explicit WidgetEventGenerator(Widget* widget); |
| + explicit WidgetEventGenerator(gfx::NativeView context); |
| + WidgetEventGenerator(gfx::NativeView context, |
| + Widget* window_for_initial_location); |
| + |
| + virtual ~WidgetEventGenerator(); |
| + |
| + private: |
| + DISALLOW_COPY_AND_ASSIGN(WidgetEventGenerator); |
| +}; |
| + |
| +} // namespace test |
| +} // namespace views |
| + |
| +#endif // UI_VIEWS_TEST_WIDGET_EVENT_GENERATOR_H_ |