Index: chrome/browser/ui/panels/base_panel_browser_test.cc |
diff --git a/chrome/browser/ui/panels/base_panel_browser_test.cc b/chrome/browser/ui/panels/base_panel_browser_test.cc |
index 5abb51a8347ad7adc0b629cc0acb7d7e7dde301d..b67f48249a137ada69f07d788007a24b19bc9958 100644 |
--- a/chrome/browser/ui/panels/base_panel_browser_test.cc |
+++ b/chrome/browser/ui/panels/base_panel_browser_test.cc |
@@ -261,6 +261,17 @@ void BasePanelBrowserTest::WaitForBoundsAnimationFinished(Panel* panel) { |
EXPECT_TRUE(!panel_testing->IsAnimatingBounds()); |
} |
+void BasePanelBrowserTest::WaitForLayoutStateChanged( |
+ Panel* panel, Panel::LayoutState layout_state) { |
+ ui_test_utils::WindowedNotificationObserver signal( |
+ chrome::NOTIFICATION_PANEL_CHANGED_LAYOUT_STATE, |
+ content::Source<Panel>(panel)); |
+ if (panel->layout_state() == layout_state) |
+ return; |
+ signal.Wait(); |
+ EXPECT_EQ(layout_state, panel->layout_state()); |
+} |
+ |
void BasePanelBrowserTest::WaitForExpansionStateChanged( |
Panel* panel, Panel::ExpansionState expansion_state) { |
ui_test_utils::WindowedNotificationObserver signal( |
@@ -390,6 +401,14 @@ scoped_refptr<Extension> BasePanelBrowserTest::CreateExtension( |
return extension; |
} |
+void BasePanelBrowserTest::ClickPanelTitlebar(Panel* panel) { |
+ scoped_ptr<NativePanelTesting> native_panel_testing( |
+ NativePanelTesting::Create(panel->native_panel())); |
+ native_panel_testing->PressLeftMouseButtonTitlebar( |
+ panel->GetBounds().origin()); |
+ native_panel_testing->ReleaseMouseButtonTitlebar(); |
+} |
+ |
void BasePanelBrowserTest::CloseWindowAndWait(Browser* browser) { |
// Closing a browser window may involve several async tasks. Need to use |
// message pump and wait for the notification. |