blob: 4059b427a0f8c75b9850b25bac7061f697167f8b [file] [log] [blame]
// Copyright (c) 2012 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 CHROME_BROWSER_UI_PANELS_TEST_PANEL_ACTIVE_STATE_OBSERVER_H_
#define CHROME_BROWSER_UI_PANELS_TEST_PANEL_ACTIVE_STATE_OBSERVER_H_
#include "chrome/browser/ui/panels/test_panel_notification_observer.h"
class Panel;
// Custom notification observer for waiting on panel active state.
// Modeled after ui_test_utils notification observers.
class PanelActiveStateObserver : public TestPanelNotificationObserver {
public:
// Register to listen for panel active state change notifications
// for the specified panel to detect a change to the expected active
// state.
PanelActiveStateObserver(Panel* panel, bool expect_active);
~PanelActiveStateObserver() override;
private:
// TestNotificationObserver override:
bool AtExpectedState() override;
Panel* panel_;
bool expect_active_;
DISALLOW_COPY_AND_ASSIGN(PanelActiveStateObserver);
};
#endif // CHROME_BROWSER_UI_PANELS_TEST_PANEL_ACTIVE_STATE_OBSERVER_H_