OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/command_line.h" | 5 #include "base/command_line.h" |
6 #include "base/file_util.h" | 6 #include "base/file_util.h" |
7 #include "base/gfx/rect.h" | 7 #include "base/gfx/rect.h" |
8 #include "chrome/app/chrome_dll_resource.h" | 8 #include "chrome/app/chrome_dll_resource.h" |
9 #include "chrome/browser/view_ids.h" | 9 #include "chrome/browser/view_ids.h" |
10 #include "chrome/common/chrome_paths.h" | 10 #include "chrome/common/chrome_paths.h" |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 // ____________ ____________ ____________ | 96 // ____________ ____________ ____________ |
97 // / \ / \ / \ | 97 // / \ / \ / \ |
98 // | Tab_1 | Tab_2 | Tab_3 | | 98 // | Tab_1 | Tab_2 | Tab_3 | |
99 // ---- ---- ---- ---- ---- ---- ---- ---- ---- | 99 // ---- ---- ---- ---- ---- ---- ---- ---- ---- |
100 // x---- ----> | 100 // x---- ----> |
101 // ____________ | 101 // ____________ |
102 // / X \ | 102 // / X \ |
103 // | Tab_1 | | 103 // | Tab_1 | |
104 // ---- ---- ---- | 104 // ---- ---- ---- |
105 | 105 |
106 POINT start; | 106 gfx::Point start(bounds1.x() + bounds1.width() / 2, |
107 POINT end; | 107 bounds1.y() + bounds1.height() / 2); |
108 start.x = bounds1.x() + bounds1.width()/2; | 108 gfx::Point end(start.x() + 2 * bounds1.width() / 3, start.y()); |
109 start.y = bounds1.y() + bounds1.height()/2; | |
110 end.x = start.x + 2*bounds1.width()/3; | |
111 end.y = start.y; | |
112 ASSERT_TRUE(browser->SimulateDrag(start, end, | 109 ASSERT_TRUE(browser->SimulateDrag(start, end, |
113 views::Event::EF_LEFT_BUTTON_DOWN, | 110 views::Event::EF_LEFT_BUTTON_DOWN, |
114 false)); | 111 false)); |
115 | 112 |
116 // Now check for expected results. | 113 // Now check for expected results. |
117 tab1 = browser->GetTab(0); | 114 tab1 = browser->GetTab(0); |
118 ASSERT_TRUE(tab1.get()); | 115 ASSERT_TRUE(tab1.get()); |
119 GURL tab1_new_url; | 116 GURL tab1_new_url; |
120 ASSERT_TRUE(tab1->GetCurrentURL(&tab1_new_url)); | 117 ASSERT_TRUE(tab1->GetCurrentURL(&tab1_new_url)); |
121 | 118 |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
197 // ____________ ____________ ____________ | 194 // ____________ ____________ ____________ |
198 // / \ / \ / \ | 195 // / \ / \ / \ |
199 // | Tab_1 | Tab_2 | Tab_3 | | 196 // | Tab_1 | Tab_2 | Tab_3 | |
200 // ---- ---- ---- ---- ---- ---- ---- ---- ---- | 197 // ---- ---- ---- ---- ---- ---- ---- ---- ---- |
201 // x---- ---- ---- ---- ---- ----> | 198 // x---- ---- ---- ---- ---- ----> |
202 // ____________ | 199 // ____________ |
203 // / X \ | 200 // / X \ |
204 // | Tab_1 | | 201 // | Tab_1 | |
205 // ---- ---- ---- | 202 // ---- ---- ---- |
206 | 203 |
207 POINT start; | 204 gfx::Point start(bounds1.x() + bounds1.width() / 2, |
208 POINT end; | 205 bounds1.y() + bounds1.height() / 2); |
209 start.x = bounds1.x() + bounds1.width()/2; | 206 gfx::Point end(start.x() + bounds1.width() / 2 + bounds2.width() + |
210 start.y = bounds1.y() + bounds1.height()/2; | 207 bounds3.width() / 2, |
211 end.x = start.x + bounds1.width()/2 + bounds2.width() + bounds3.width()/2; | 208 start.y()); |
212 end.y = start.y; | |
213 ASSERT_TRUE(browser->SimulateDrag(start, end, | 209 ASSERT_TRUE(browser->SimulateDrag(start, end, |
214 views::Event::EF_LEFT_BUTTON_DOWN, | 210 views::Event::EF_LEFT_BUTTON_DOWN, |
215 false)); | 211 false)); |
216 | 212 |
217 // Now check for expected results. | 213 // Now check for expected results. |
218 tab1 = browser->GetTab(0); | 214 tab1 = browser->GetTab(0); |
219 ASSERT_TRUE(tab1.get()); | 215 ASSERT_TRUE(tab1.get()); |
220 GURL tab1_new_url; | 216 GURL tab1_new_url; |
221 ASSERT_TRUE(tab1->GetCurrentURL(&tab1_new_url)); | 217 ASSERT_TRUE(tab1->GetCurrentURL(&tab1_new_url)); |
222 | 218 |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
305 // ____________ ____________ ____________ | 301 // ____________ ____________ ____________ |
306 // / \ / \ / \ | 302 // / \ / \ / \ |
307 // | Tab_1 | Tab_2 | Tab_3 | | 303 // | Tab_1 | Tab_2 | Tab_3 | |
308 // ---- ---- ---- ---- ---- ---- ---- ---- ---- | 304 // ---- ---- ---- ---- ---- ---- ---- ---- ---- |
309 // x---- ---- ---- ---- ---- ----> + ESCAPE | 305 // x---- ---- ---- ---- ---- ----> + ESCAPE |
310 // ____________ | 306 // ____________ |
311 // / X \ | 307 // / X \ |
312 // | Tab_1 | | 308 // | Tab_1 | |
313 // ---- ---- ---- | 309 // ---- ---- ---- |
314 | 310 |
315 POINT start; | 311 gfx::Point start(bounds1.x() + bounds1.width() / 2, |
316 POINT end; | 312 bounds1.y() + bounds1.height() / 2); |
317 start.x = bounds1.x() + bounds1.width()/2; | 313 gfx::Point end(start.x() + bounds1.width() / 2 + bounds2.width() + |
318 start.y = bounds1.y() + bounds1.height()/2; | 314 bounds3.width() / 2, |
319 end.x = start.x + bounds1.width()/2 + bounds2.width() + bounds3.width()/2; | 315 start.y()); |
320 end.y = start.y; | |
321 | 316 |
322 // Simulate drag with 'true' as the last parameter. This will interrupt | 317 // Simulate drag with 'true' as the last parameter. This will interrupt |
323 // in-flight with Escape. | 318 // in-flight with Escape. |
324 ASSERT_TRUE(browser->SimulateDrag(start, end, | 319 ASSERT_TRUE(browser->SimulateDrag(start, end, |
325 views::Event::EF_LEFT_BUTTON_DOWN, | 320 views::Event::EF_LEFT_BUTTON_DOWN, |
326 true)); | 321 true)); |
327 | 322 |
328 // Now check for expected results. | 323 // Now check for expected results. |
329 tab1 = browser->GetTab(0); | 324 tab1 = browser->GetTab(0); |
330 ASSERT_TRUE(tab1.get()); | 325 ASSERT_TRUE(tab1.get()); |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
428 // ---- ---- ---- ---- ---- ---- ---- ---- ---- | 423 // ---- ---- ---- ---- ---- ---- ---- ---- ---- |
429 // x | 424 // x |
430 // | | 425 // | |
431 // | (Drag this below, out of tab strip) | 426 // | (Drag this below, out of tab strip) |
432 // V | 427 // V |
433 // ____________ | 428 // ____________ |
434 // / X \ | 429 // / X \ |
435 // | Tab_2 | (New Window) | 430 // | Tab_2 | (New Window) |
436 // ---- ---- ---- ---- ---- ---- ---- | 431 // ---- ---- ---- ---- ---- ---- ---- |
437 | 432 |
438 POINT start; | 433 gfx::Point start(bounds2.x() + bounds2.width() / 2, |
439 POINT end; | 434 bounds2.y() + bounds2.height() / 2); |
440 start.x = bounds2.x() + bounds2.width()/2; | 435 gfx::Point end(start.x(), |
441 start.y = bounds2.y() + bounds2.height()/2; | 436 start.y() + 3 * urlbar_bounds.height()); |
442 end.x = start.x; | |
443 end.y = start.y + 3*urlbar_bounds.height(); | |
444 | 437 |
445 // Simulate tab drag. | 438 // Simulate tab drag. |
446 ASSERT_TRUE(browser->SimulateDrag(start, end, | 439 ASSERT_TRUE(browser->SimulateDrag(start, end, |
447 views::Event::EF_LEFT_BUTTON_DOWN, | 440 views::Event::EF_LEFT_BUTTON_DOWN, |
448 false)); | 441 false)); |
449 | 442 |
450 // Now, first make sure that the old window has only two tabs remaining. | 443 // Now, first make sure that the old window has only two tabs remaining. |
451 int new_tab_count = 0; | 444 int new_tab_count = 0; |
452 ASSERT_TRUE(browser->GetTabCount(&new_tab_count)); | 445 ASSERT_TRUE(browser->GetTabCount(&new_tab_count)); |
453 ASSERT_EQ(2, new_tab_count); | 446 ASSERT_EQ(2, new_tab_count); |
(...skipping 29 matching lines...) Expand all Loading... |
483 scoped_refptr<TabProxy> tab1_2(browser2->GetTab(0)); | 476 scoped_refptr<TabProxy> tab1_2(browser2->GetTab(0)); |
484 ASSERT_TRUE(tab1_2.get()); | 477 ASSERT_TRUE(tab1_2.get()); |
485 GURL tab1_2_url; | 478 GURL tab1_2_url; |
486 ASSERT_TRUE(tab1_2->GetCurrentURL(&tab1_2_url)); | 479 ASSERT_TRUE(tab1_2->GetCurrentURL(&tab1_2_url)); |
487 | 480 |
488 // Tab_1_2 of Window 2 should essentially be Tab_2 of Window 1. | 481 // Tab_1_2 of Window 2 should essentially be Tab_2 of Window 1. |
489 EXPECT_EQ(tab1_2_url.spec(), tab2_url.spec()); | 482 EXPECT_EQ(tab1_2_url.spec(), tab2_url.spec()); |
490 EXPECT_NE(tab1_2_url.spec(), tab1_url.spec()); | 483 EXPECT_NE(tab1_2_url.spec(), tab1_url.spec()); |
491 EXPECT_NE(tab1_2_url.spec(), tab3_url.spec()); | 484 EXPECT_NE(tab1_2_url.spec(), tab3_url.spec()); |
492 } | 485 } |
OLD | NEW |