| Index: chrome/browser/chromeos/system/ash_focus_cycle_browsertest.cc
|
| diff --git a/chrome/browser/chromeos/system/ash_focus_cycle_browsertest.cc b/chrome/browser/chromeos/system/ash_focus_cycle_browsertest.cc
|
| index b4e34e3562392f92172a0291e6c7f6bc2402f7c9..6a909cf9301d441ce839025eca6caf652f94df4f 100644
|
| --- a/chrome/browser/chromeos/system/ash_focus_cycle_browsertest.cc
|
| +++ b/chrome/browser/chromeos/system/ash_focus_cycle_browsertest.cc
|
| @@ -5,6 +5,9 @@
|
| #include "ash/focus_cycler.h"
|
| #include "ash/shell.h"
|
| #include "ash/wm/window_util.h"
|
| +#include "base/bind.h"
|
| +#include "base/memory/scoped_ptr.h"
|
| +#include "base/run_loop.h"
|
| #include "base/stringprintf.h"
|
| #include "chrome/browser/chromeos/cros/cros_in_process_browser_test.h"
|
| #include "chrome/test/base/ui_controls.h"
|
| @@ -44,9 +47,19 @@ class AshFocusCycleTest : public CrosInProcessBrowserTest {
|
| void PressEscape() {
|
| aura::Window* window = ash::wm::GetActiveWindow();
|
| CHECK(window);
|
| - ui_controls::SendKeyPress(window, ui::VKEY_ESCAPE,
|
| - false, false, false, false);
|
| - content::RunAllPendingInMessageLoop();
|
| + wait_for_key_press_.reset(new base::RunLoop());
|
| + ui_controls::SendKeyPressNotifyWhenDone(
|
| + window, ui::VKEY_ESCAPE,
|
| + false, false, false, false,
|
| + base::Bind(&AshFocusCycleTest::QuitWaiting, base::Unretained(this)));
|
| + wait_for_key_press_->Run();
|
| + }
|
| +
|
| + private:
|
| + scoped_ptr<base::RunLoop> wait_for_key_press_;
|
| +
|
| + void QuitWaiting() {
|
| + wait_for_key_press_->Quit();
|
| }
|
| };
|
|
|
|
|