#include "base/functional/bind.h"
#include "base/memory/raw_ptr.h"
#include "base/run_loop.h"
#include "build/buildflag.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_window.h"
#include "chrome/browser/ui/views/frame/browser_view.h"
#include "chrome/test/base/interactive_test_utils.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/base/buildflags.h"
#include "ui/compositor/layer.h"
#include "ui/compositor/layer_animator.h"
#include "ui/gfx/geometry/point.h"
#include "ui/gfx/geometry/vector2d.h"
#include "ui/views/focus/focus_manager.h"
#include "ui/views/view.h"
#include "ui/views/view_observer.h"
#include "ui/views/widget/widget.h"
namespace ui_test_utils {
namespace {
class ViewFocusWaiter : public views::ViewObserver { … };
}
bool IsViewFocused(const Browser* browser, ViewID vid) { … }
void ClickOnView(views::View* view) { … }
void ClickOnView(const Browser* browser, ViewID vid) { … }
void FocusView(const Browser* browser, ViewID vid) { … }
void MoveMouseToCenterAndPress(views::View* view,
ui_controls::MouseButton button,
int button_state,
base::OnceClosure closure,
int accelerator_state) { … }
void MoveMouseToCenterWithOffsetAndPress(views::View* view,
const gfx::Vector2d& offset,
ui_controls::MouseButton button,
int button_state,
base::OnceClosure closure,
int accelerator_state) { … }
gfx::Point GetCenterInScreenCoordinates(const views::View* view) { … }
void WaitForViewFocus(Browser* browser, ViewID vid, bool focused) { … }
void WaitForViewFocus(Browser* browser, views::View* view, bool focused) { … }
}