Index: chrome/browser/ui/panels/panel_browser_view_browsertest.cc |
diff --git a/chrome/browser/ui/panels/panel_browser_view_browsertest.cc b/chrome/browser/ui/panels/panel_browser_view_browsertest.cc |
index e4c46090d41a4223abad5fb49241975ef475a833..de58f12091b6375e4b26866ae0554ccdddc25641 100644 |
--- a/chrome/browser/ui/panels/panel_browser_view_browsertest.cc |
+++ b/chrome/browser/ui/panels/panel_browser_view_browsertest.cc |
@@ -95,94 +95,6 @@ class PanelBrowserViewTest : public InProcessBrowserTest { |
} |
} |
- void ValidateDragging(PanelBrowserView** browser_views, |
- size_t num_browser_views, |
- size_t index_to_drag, |
- int delta_x, |
- int delta_y, |
- int* expected_delta_x_after_drag, |
- int* expected_delta_x_after_release, |
- bool cancel_dragging) { |
- // Keep track of the initial bounds for comparison. |
- scoped_array<gfx::Rect> initial_bounds(new gfx::Rect[num_browser_views]); |
- for (size_t i = 0; i < num_browser_views; ++i) |
- initial_bounds[i] = browser_views[i]->panel()->GetRestoredBounds(); |
- |
- // Trigger the mouse-pressed event. |
- // All panels should remain in their original positions. |
- views::MouseEvent pressed(ui::ET_MOUSE_PRESSED, |
- initial_bounds[index_to_drag].x(), |
- initial_bounds[index_to_drag].y(), |
- ui::EF_LEFT_BUTTON_DOWN); |
- browser_views[index_to_drag]->OnTitleBarMousePressed(pressed); |
- gfx::Rect bounds_after_press = |
- browser_views[index_to_drag]->panel()->GetRestoredBounds(); |
- for (size_t i = 0; i < num_browser_views; ++i) { |
- EXPECT_EQ(initial_bounds[i], |
- browser_views[i]->panel()->GetRestoredBounds()); |
- } |
- |
- // Trigger the mouse_dragged event if delta_x or delta_y is not 0. |
- views::MouseEvent dragged(ui::ET_MOUSE_DRAGGED, |
- initial_bounds[index_to_drag].x() + delta_x, |
- initial_bounds[index_to_drag].y() + delta_y, |
- ui::EF_LEFT_BUTTON_DOWN); |
- if (delta_x || delta_y) { |
- browser_views[index_to_drag]->OnTitleBarMouseDragged(dragged); |
- |
- for (size_t i = 0; i < num_browser_views; ++i) { |
- gfx::Rect expected_bounds = initial_bounds[i]; |
- expected_bounds.Offset(expected_delta_x_after_drag[i], 0); |
- EXPECT_EQ(expected_bounds, |
- browser_views[i]->panel()->GetRestoredBounds()); |
- } |
- } |
- |
- // Cancel the dragging if asked. |
- // All panels should stay in their original positions. |
- if (cancel_dragging) { |
- browser_views[index_to_drag]->OnTitleBarMouseCaptureLost(); |
- for (size_t i = 0; i < num_browser_views; ++i) { |
- EXPECT_EQ(initial_bounds[i], |
- browser_views[i]->panel()->GetRestoredBounds()); |
- } |
- return; |
- } |
- |
- // Otherwise, trigger the mouse-released event. |
- views::MouseEvent released(ui::ET_MOUSE_RELEASED, 0, 0, 0); |
- browser_views[index_to_drag]->OnTitleBarMouseReleased(released); |
- for (size_t i = 0; i < num_browser_views; ++i) { |
- gfx::Rect expected_bounds = initial_bounds[i]; |
- expected_bounds.Offset(expected_delta_x_after_release[i], 0); |
- EXPECT_EQ(expected_bounds, |
- browser_views[i]->panel()->GetRestoredBounds()); |
- } |
- |
- // If releasing the drag causes the panels to swap, move these panels back |
- // so that the next test will not be affected. |
- if (initial_bounds[index_to_drag] != |
- browser_views[index_to_drag]->panel()->GetRestoredBounds()) { |
- // Find the index of the panel to swap with the dragging panel. |
- size_t swapped_index = 0; |
- for (; swapped_index < num_browser_views; ++swapped_index) { |
- if (initial_bounds[index_to_drag] == |
- browser_views[swapped_index]->panel()->GetRestoredBounds()) |
- break; |
- } |
- ASSERT_NE(swapped_index, index_to_drag); |
- |
- // Repeat the mouse events to this panel. |
- browser_views[swapped_index]->OnTitleBarMousePressed(pressed); |
- browser_views[swapped_index]->OnTitleBarMouseDragged(dragged); |
- browser_views[swapped_index]->OnTitleBarMouseReleased(released); |
- for (size_t i = 0; i < num_browser_views; ++i) { |
- EXPECT_EQ(initial_bounds[i], |
- browser_views[i]->panel()->GetRestoredBounds()); |
- } |
- } |
- } |
- |
void ValidateSettingsMenuItems(ui::SimpleMenuModel* settings_menu_contents, |
size_t num_expected_menu_items, |
const MenuItem* expected_menu_items) { |
@@ -538,175 +450,6 @@ IN_PROC_BROWSER_TEST_F(PanelBrowserViewTest, ShowOrHideSettingsButton) { |
EXPECT_FALSE(frame_view->settings_button_->IsVisible()); |
} |
-IN_PROC_BROWSER_TEST_F(PanelBrowserViewTest, TitleBarMouseEvent) { |
- // TODO(jianli): Move the test to platform-independent PanelManager unittest. |
- |
- // Creates the 1st panel. |
- PanelBrowserView* browser_view1 = CreatePanelBrowserView("PanelTest1", |
- SHOW_AS_ACTIVE); |
- |
- // The delta is from the pressed location which is the left-top corner of the |
- // panel to drag. |
- int small_negative_delta = -5; |
- int small_positive_delta = 5; |
- int big_negative_delta = |
- -(browser_view1->panel()->GetRestoredBounds().width() * 0.5 + 5); |
- int big_positive_delta = |
- browser_view1->panel()->GetRestoredBounds().width() * 1.5 + 5; |
- |
- // Tests dragging a panel in single-panel environment. |
- // We should get back to the original position after the dragging is ended. |
- int expected_single_delta_x_after_drag[] = { big_negative_delta }; |
- int expected_single_delta_x_after_release[] = { 0 }; |
- ValidateDragging(&browser_view1, |
- 1, |
- 0, |
- big_negative_delta, |
- big_negative_delta, |
- expected_single_delta_x_after_drag, |
- expected_single_delta_x_after_release, |
- false); |
- |
- expected_single_delta_x_after_drag[0] = big_positive_delta; |
- ValidateDragging(&browser_view1, |
- 1, |
- 0, |
- big_positive_delta, |
- big_positive_delta, |
- expected_single_delta_x_after_drag, |
- expected_single_delta_x_after_release, |
- false); |
- |
- // Creates 2 more panels to test dragging a panel in multi-panel environment. |
- PanelBrowserView* browser_view2 = CreatePanelBrowserView("PanelTest2", |
- SHOW_AS_ACTIVE); |
- PanelBrowserView* browser_view3 = CreatePanelBrowserView("PanelTest3", |
- SHOW_AS_ACTIVE); |
- PanelBrowserView* browser_views[] = |
- { browser_view1, browser_view2, browser_view3 }; |
- size_t browser_view_count = arraysize(browser_views); |
- int expected_delta_x_without_change[] = { 0, 0, 0 }; |
- |
- // Tests dragging a panel with small delta. |
- // We should get back to the original position after the dragging is ended. |
- for (size_t i = 0; i < browser_view_count; ++i) { |
- int expected_delta_x_after_drag[] = { 0, 0, 0 }; |
- |
- expected_delta_x_after_drag[i] = small_negative_delta; |
- ValidateDragging(browser_views, |
- browser_view_count, |
- i, |
- small_negative_delta, |
- small_negative_delta, |
- expected_delta_x_after_drag, |
- expected_delta_x_without_change, |
- false); |
- |
- expected_delta_x_after_drag[i] = small_positive_delta; |
- ValidateDragging(browser_views, |
- browser_view_count, |
- i, |
- small_positive_delta, |
- small_positive_delta, |
- expected_delta_x_after_drag, |
- expected_delta_x_without_change, |
- false); |
- } |
- |
- // Tests dragging a panel with big delta and then cancelling it. |
- // We should get back to the original position. |
- for (size_t i = 0; i < browser_view_count; ++i) { |
- int expected_delta_x_after_drag[] = { 0, 0, 0 }; |
- expected_delta_x_after_drag[i] = big_negative_delta; |
- if (i + 1 < browser_view_count) { |
- expected_delta_x_after_drag[i + 1] = |
- browser_views[i]->panel()->GetRestoredBounds().x() - |
- browser_views[i + 1]->panel()->GetRestoredBounds().x(); |
- } |
- ValidateDragging(browser_views, |
- browser_view_count, |
- i, |
- big_negative_delta, |
- big_negative_delta, |
- expected_delta_x_after_drag, |
- expected_delta_x_without_change, |
- true); |
- |
- int expected_delta_x_after_drag2[] = { 0, 0, 0 }; |
- expected_delta_x_after_drag2[i] = big_positive_delta; |
- if (static_cast<int>(i) - 1 >= 0) { |
- expected_delta_x_after_drag2[i - 1] = |
- browser_views[i]->panel()->GetRestoredBounds().x() - |
- browser_views[i - 1]->panel()->GetRestoredBounds().x(); |
- } |
- ValidateDragging(browser_views, |
- browser_view_count, |
- i, |
- big_positive_delta, |
- big_positive_delta, |
- expected_delta_x_after_drag2, |
- expected_delta_x_without_change, |
- true); |
- } |
- |
- // Tests dragging a panel with big delta. |
- // We should move to the new position after the dragging is ended. |
- for (size_t i = 0; i < browser_view_count; ++i) { |
- int expected_delta_x_after_drag[] = { 0, 0, 0 }; |
- int expected_delta_x_after_release[] = { 0, 0, 0 }; |
- expected_delta_x_after_drag[i] = big_negative_delta; |
- if (i + 1 < browser_view_count) { |
- expected_delta_x_after_drag[i + 1] = |
- browser_views[i]->panel()->GetRestoredBounds().x() - |
- browser_views[i + 1]->panel()->GetRestoredBounds().x(); |
- expected_delta_x_after_release[i + 1] = |
- expected_delta_x_after_drag[i + 1]; |
- expected_delta_x_after_release[i] = |
- browser_views[i + 1]->panel()->GetRestoredBounds().x() - |
- browser_views[i]->panel()->GetRestoredBounds().x(); |
- } |
- ValidateDragging(browser_views, |
- browser_view_count, |
- i, |
- big_negative_delta, |
- big_negative_delta, |
- expected_delta_x_after_drag, |
- expected_delta_x_after_release, |
- false); |
- |
- int expected_delta_x_after_drag2[] = { 0, 0, 0 }; |
- int expected_delta_x_after_release2[] = { 0, 0, 0 }; |
- expected_delta_x_after_drag2[i] = big_positive_delta; |
- if (static_cast<int>(i) - 1 >= 0) { |
- expected_delta_x_after_drag2[i - 1] = |
- browser_views[i]->panel()->GetRestoredBounds().x() - |
- browser_views[i - 1]->panel()->GetRestoredBounds().x(); |
- expected_delta_x_after_release2[i - 1] = |
- expected_delta_x_after_drag2[i - 1]; |
- expected_delta_x_after_release2[i] = |
- browser_views[i - 1]->panel()->GetRestoredBounds().x() - |
- browser_views[i]->panel()->GetRestoredBounds().x(); |
- } |
- ValidateDragging(browser_views, |
- browser_view_count, |
- i, |
- big_positive_delta, |
- big_positive_delta, |
- expected_delta_x_after_drag2, |
- expected_delta_x_after_release2, |
- false); |
- } |
- |
- // Closes all panels. |
- for (size_t i = 0; i < browser_view_count; ++i) { |
- browser_views[i]->panel()->Close(); |
- // We're only verifying that PanelBrowserView::Close has been called when |
- // a panel is closed. This is to make sure the dragging is ended and does |
- // not interfere the closing process. |
- EXPECT_TRUE(browser_views[i]->closed()); |
- } |
-} |
- |
IN_PROC_BROWSER_TEST_F(PanelBrowserViewTest, SetBoundsAnimation) { |
PanelBrowserView* browser_view = CreatePanelBrowserView("PanelTest", |
SHOW_AS_ACTIVE); |
@@ -725,17 +468,10 @@ IN_PROC_BROWSER_TEST_F(PanelBrowserViewTest, SetBoundsAnimation) { |
// Validates that no animation should be triggered for the panel currently |
// being dragged. |
- views::MouseEvent pressed(ui::ET_MOUSE_PRESSED, |
- target_bounds.x(), |
- target_bounds.y(), |
- ui::EF_LEFT_BUTTON_DOWN); |
- browser_view->OnTitleBarMousePressed(pressed); |
- |
- views::MouseEvent dragged(ui::ET_MOUSE_DRAGGED, |
- target_bounds.x() + 5, |
- target_bounds.y() + 5, |
- ui::EF_LEFT_BUTTON_DOWN); |
- browser_view->OnTitleBarMouseDragged(dragged); |
+ browser_view->OnTitleBarMousePressed(gfx::Point( |
+ target_bounds.x(), target_bounds.y())); |
+ browser_view->OnTitleBarMouseDragged(gfx::Point( |
+ target_bounds.x() + 5, target_bounds.y() + 5)); |
EXPECT_FALSE(browser_view->bounds_animator_->is_animating()); |
browser_view->OnTitleBarMouseCaptureLost(); |