Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(37)

Side by Side Diff: ash/drag_drop/drag_drop_controller_unittest.cc

Issue 1867223004: Convert //ash from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: address comments Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ash/drag_drop/drag_drop_controller.cc ('k') | ash/drag_drop/drag_drop_tracker.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "ash/drag_drop/drag_drop_controller.h" 5 #include "ash/drag_drop/drag_drop_controller.h"
6 6
7 #include "ash/drag_drop/drag_drop_tracker.h" 7 #include "ash/drag_drop/drag_drop_tracker.h"
8 #include "ash/drag_drop/drag_image_view.h" 8 #include "ash/drag_drop/drag_image_view.h"
9 #include "ash/shell.h" 9 #include "ash/shell.h"
10 #include "ash/test/ash_test_base.h" 10 #include "ash/test/ash_test_base.h"
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after
322 } 322 }
323 323
324 void CompleteCancelAnimation() { 324 void CompleteCancelAnimation() {
325 CompletableLinearAnimation* animation = 325 CompletableLinearAnimation* animation =
326 static_cast<CompletableLinearAnimation*>( 326 static_cast<CompletableLinearAnimation*>(
327 drag_drop_controller_->cancel_animation_.get()); 327 drag_drop_controller_->cancel_animation_.get());
328 animation->Complete(); 328 animation->Complete();
329 } 329 }
330 330
331 protected: 331 protected:
332 scoped_ptr<TestDragDropController> drag_drop_controller_; 332 std::unique_ptr<TestDragDropController> drag_drop_controller_;
333 333
334 private: 334 private:
335 DISALLOW_COPY_AND_ASSIGN(DragDropControllerTest); 335 DISALLOW_COPY_AND_ASSIGN(DragDropControllerTest);
336 }; 336 };
337 337
338 // TODO(win_aura) http://crbug.com/154081 338 // TODO(win_aura) http://crbug.com/154081
339 #if defined(OS_WIN) 339 #if defined(OS_WIN)
340 #define MAYBE_DragDropInSingleViewTest DISABLED_DragDropInSingleViewTest 340 #define MAYBE_DragDropInSingleViewTest DISABLED_DragDropInSingleViewTest
341 #else 341 #else
342 #define MAYBE_DragDropInSingleViewTest DragDropInSingleViewTest 342 #define MAYBE_DragDropInSingleViewTest DragDropInSingleViewTest
343 #endif 343 #endif
344 TEST_F(DragDropControllerTest, MAYBE_DragDropInSingleViewTest) { 344 TEST_F(DragDropControllerTest, MAYBE_DragDropInSingleViewTest) {
345 scoped_ptr<views::Widget> widget(CreateNewWidget()); 345 std::unique_ptr<views::Widget> widget(CreateNewWidget());
346 DragTestView* drag_view = new DragTestView; 346 DragTestView* drag_view = new DragTestView;
347 AddViewToWidgetAndResize(widget.get(), drag_view); 347 AddViewToWidgetAndResize(widget.get(), drag_view);
348 ui::OSExchangeData data; 348 ui::OSExchangeData data;
349 data.SetString(base::UTF8ToUTF16("I am being dragged")); 349 data.SetString(base::UTF8ToUTF16("I am being dragged"));
350 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 350 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
351 widget->GetNativeView()); 351 widget->GetNativeView());
352 generator.PressLeftButton(); 352 generator.PressLeftButton();
353 353
354 int num_drags = 17; 354 int num_drags = 17;
355 SetCheckIfCaptureLost(widget.get(), true); 355 SetCheckIfCaptureLost(widget.get(), true);
(...skipping 25 matching lines...) Expand all
381 381
382 EXPECT_EQ(1, drag_view->num_drag_enters_); 382 EXPECT_EQ(1, drag_view->num_drag_enters_);
383 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(), 383 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(),
384 drag_view->num_drag_updates_); 384 drag_view->num_drag_updates_);
385 EXPECT_EQ(1, drag_view->num_drops_); 385 EXPECT_EQ(1, drag_view->num_drops_);
386 EXPECT_EQ(0, drag_view->num_drag_exits_); 386 EXPECT_EQ(0, drag_view->num_drag_exits_);
387 EXPECT_TRUE(drag_view->drag_done_received_); 387 EXPECT_TRUE(drag_view->drag_done_received_);
388 } 388 }
389 389
390 TEST_F(DragDropControllerTest, DragDropWithZeroDragUpdates) { 390 TEST_F(DragDropControllerTest, DragDropWithZeroDragUpdates) {
391 scoped_ptr<views::Widget> widget(CreateNewWidget()); 391 std::unique_ptr<views::Widget> widget(CreateNewWidget());
392 DragTestView* drag_view = new DragTestView; 392 DragTestView* drag_view = new DragTestView;
393 AddViewToWidgetAndResize(widget.get(), drag_view); 393 AddViewToWidgetAndResize(widget.get(), drag_view);
394 ui::OSExchangeData data; 394 ui::OSExchangeData data;
395 data.SetString(base::UTF8ToUTF16("I am being dragged")); 395 data.SetString(base::UTF8ToUTF16("I am being dragged"));
396 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 396 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
397 widget->GetNativeView()); 397 widget->GetNativeView());
398 generator.PressLeftButton(); 398 generator.PressLeftButton();
399 399
400 int num_drags = drag_view->VerticalDragThreshold() + 1; 400 int num_drags = drag_view->VerticalDragThreshold() + 1;
401 for (int i = 0; i < num_drags; ++i) { 401 for (int i = 0; i < num_drags; ++i) {
(...skipping 23 matching lines...) Expand all
425 EXPECT_TRUE(drag_view->drag_done_received_); 425 EXPECT_TRUE(drag_view->drag_done_received_);
426 } 426 }
427 427
428 // TODO(win_aura) http://crbug.com/154081 428 // TODO(win_aura) http://crbug.com/154081
429 #if defined(OS_WIN) 429 #if defined(OS_WIN)
430 #define MAYBE_DragDropInMultipleViewsSingleWidgetTest DISABLED_DragDropInMultipl eViewsSingleWidgetTest 430 #define MAYBE_DragDropInMultipleViewsSingleWidgetTest DISABLED_DragDropInMultipl eViewsSingleWidgetTest
431 #else 431 #else
432 #define MAYBE_DragDropInMultipleViewsSingleWidgetTest DragDropInMultipleViewsSin gleWidgetTest 432 #define MAYBE_DragDropInMultipleViewsSingleWidgetTest DragDropInMultipleViewsSin gleWidgetTest
433 #endif 433 #endif
434 TEST_F(DragDropControllerTest, MAYBE_DragDropInMultipleViewsSingleWidgetTest) { 434 TEST_F(DragDropControllerTest, MAYBE_DragDropInMultipleViewsSingleWidgetTest) {
435 scoped_ptr<views::Widget> widget(CreateNewWidget()); 435 std::unique_ptr<views::Widget> widget(CreateNewWidget());
436 DragTestView* drag_view1 = new DragTestView; 436 DragTestView* drag_view1 = new DragTestView;
437 AddViewToWidgetAndResize(widget.get(), drag_view1); 437 AddViewToWidgetAndResize(widget.get(), drag_view1);
438 DragTestView* drag_view2 = new DragTestView; 438 DragTestView* drag_view2 = new DragTestView;
439 AddViewToWidgetAndResize(widget.get(), drag_view2); 439 AddViewToWidgetAndResize(widget.get(), drag_view2);
440 440
441 ui::OSExchangeData data; 441 ui::OSExchangeData data;
442 data.SetString(base::UTF8ToUTF16("I am being dragged")); 442 data.SetString(base::UTF8ToUTF16("I am being dragged"));
443 443
444 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); 444 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow());
445 generator.MoveMouseRelativeTo(widget->GetNativeView(), 445 generator.MoveMouseRelativeTo(widget->GetNativeView(),
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
486 EXPECT_FALSE(drag_view2->drag_done_received_); 486 EXPECT_FALSE(drag_view2->drag_done_received_);
487 } 487 }
488 488
489 // TODO(win_aura) http://crbug.com/154081 489 // TODO(win_aura) http://crbug.com/154081
490 #if defined(OS_WIN) 490 #if defined(OS_WIN)
491 #define MAYBE_DragDropInMultipleViewsMultipleWidgetsTest DISABLED_DragDropInMult ipleViewsMultipleWidgetsTest 491 #define MAYBE_DragDropInMultipleViewsMultipleWidgetsTest DISABLED_DragDropInMult ipleViewsMultipleWidgetsTest
492 #else 492 #else
493 #define MAYBE_DragDropInMultipleViewsMultipleWidgetsTest DragDropInMultipleViews MultipleWidgetsTest 493 #define MAYBE_DragDropInMultipleViewsMultipleWidgetsTest DragDropInMultipleViews MultipleWidgetsTest
494 #endif 494 #endif
495 TEST_F(DragDropControllerTest, MAYBE_DragDropInMultipleViewsMultipleWidgetsTest) { 495 TEST_F(DragDropControllerTest, MAYBE_DragDropInMultipleViewsMultipleWidgetsTest) {
496 scoped_ptr<views::Widget> widget1(CreateNewWidget()); 496 std::unique_ptr<views::Widget> widget1(CreateNewWidget());
497 DragTestView* drag_view1 = new DragTestView; 497 DragTestView* drag_view1 = new DragTestView;
498 AddViewToWidgetAndResize(widget1.get(), drag_view1); 498 AddViewToWidgetAndResize(widget1.get(), drag_view1);
499 scoped_ptr<views::Widget> widget2(CreateNewWidget()); 499 std::unique_ptr<views::Widget> widget2(CreateNewWidget());
500 DragTestView* drag_view2 = new DragTestView; 500 DragTestView* drag_view2 = new DragTestView;
501 AddViewToWidgetAndResize(widget2.get(), drag_view2); 501 AddViewToWidgetAndResize(widget2.get(), drag_view2);
502 gfx::Rect widget1_bounds = widget1->GetClientAreaBoundsInScreen(); 502 gfx::Rect widget1_bounds = widget1->GetClientAreaBoundsInScreen();
503 gfx::Rect widget2_bounds = widget2->GetClientAreaBoundsInScreen(); 503 gfx::Rect widget2_bounds = widget2->GetClientAreaBoundsInScreen();
504 widget2->SetBounds(gfx::Rect(widget1_bounds.width(), 0, 504 widget2->SetBounds(gfx::Rect(widget1_bounds.width(), 0,
505 widget2_bounds.width(), widget2_bounds.height())); 505 widget2_bounds.width(), widget2_bounds.height()));
506 506
507 ui::OSExchangeData data; 507 ui::OSExchangeData data;
508 data.SetString(base::UTF8ToUTF16("I am being dragged")); 508 data.SetString(base::UTF8ToUTF16("I am being dragged"));
509 509
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
551 EXPECT_FALSE(drag_view2->drag_done_received_); 551 EXPECT_FALSE(drag_view2->drag_done_received_);
552 } 552 }
553 553
554 // TODO(win_aura) http://crbug.com/154081 554 // TODO(win_aura) http://crbug.com/154081
555 #if defined(OS_WIN) 555 #if defined(OS_WIN)
556 #define MAYBE_ViewRemovedWhileInDragDropTest DISABLED_ViewRemovedWhileInDragDrop Test 556 #define MAYBE_ViewRemovedWhileInDragDropTest DISABLED_ViewRemovedWhileInDragDrop Test
557 #else 557 #else
558 #define MAYBE_ViewRemovedWhileInDragDropTest ViewRemovedWhileInDragDropTest 558 #define MAYBE_ViewRemovedWhileInDragDropTest ViewRemovedWhileInDragDropTest
559 #endif 559 #endif
560 TEST_F(DragDropControllerTest, MAYBE_ViewRemovedWhileInDragDropTest) { 560 TEST_F(DragDropControllerTest, MAYBE_ViewRemovedWhileInDragDropTest) {
561 scoped_ptr<views::Widget> widget(CreateNewWidget()); 561 std::unique_ptr<views::Widget> widget(CreateNewWidget());
562 scoped_ptr<DragTestView> drag_view(new DragTestView); 562 std::unique_ptr<DragTestView> drag_view(new DragTestView);
563 AddViewToWidgetAndResize(widget.get(), drag_view.get()); 563 AddViewToWidgetAndResize(widget.get(), drag_view.get());
564 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint(); 564 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint();
565 ui::OSExchangeData data; 565 ui::OSExchangeData data;
566 data.SetString(base::UTF8ToUTF16("I am being dragged")); 566 data.SetString(base::UTF8ToUTF16("I am being dragged"));
567 567
568 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); 568 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow());
569 generator.MoveMouseToCenterOf(widget->GetNativeView()); 569 generator.MoveMouseToCenterOf(widget->GetNativeView());
570 generator.PressLeftButton(); 570 generator.PressLeftButton();
571 571
572 int num_drags_1 = 17; 572 int num_drags_1 = 17;
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
615 ui::Clipboard* cb = ui::Clipboard::GetForCurrentThread(); 615 ui::Clipboard* cb = ui::Clipboard::GetForCurrentThread();
616 std::string clip_str("I am on the clipboard"); 616 std::string clip_str("I am on the clipboard");
617 { 617 {
618 // We first copy some text to the clipboard. 618 // We first copy some text to the clipboard.
619 ui::ScopedClipboardWriter scw(ui::CLIPBOARD_TYPE_COPY_PASTE); 619 ui::ScopedClipboardWriter scw(ui::CLIPBOARD_TYPE_COPY_PASTE);
620 scw.WriteText(base::ASCIIToUTF16(clip_str)); 620 scw.WriteText(base::ASCIIToUTF16(clip_str));
621 } 621 }
622 EXPECT_TRUE(cb->IsFormatAvailable(ui::Clipboard::GetPlainTextFormatType(), 622 EXPECT_TRUE(cb->IsFormatAvailable(ui::Clipboard::GetPlainTextFormatType(),
623 ui::CLIPBOARD_TYPE_COPY_PASTE)); 623 ui::CLIPBOARD_TYPE_COPY_PASTE));
624 624
625 scoped_ptr<views::Widget> widget(CreateNewWidget()); 625 std::unique_ptr<views::Widget> widget(CreateNewWidget());
626 DragTestView* drag_view = new DragTestView; 626 DragTestView* drag_view = new DragTestView;
627 AddViewToWidgetAndResize(widget.get(), drag_view); 627 AddViewToWidgetAndResize(widget.get(), drag_view);
628 628
629 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 629 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
630 widget->GetNativeView()); 630 widget->GetNativeView());
631 ui::OSExchangeData data; 631 ui::OSExchangeData data;
632 std::string data_str("I am being dragged"); 632 std::string data_str("I am being dragged");
633 data.SetString(base::ASCIIToUTF16(data_str)); 633 data.SetString(base::ASCIIToUTF16(data_str));
634 634
635 generator.PressLeftButton(); 635 generator.PressLeftButton();
636 generator.MoveMouseBy(0, drag_view->VerticalDragThreshold() + 1); 636 generator.MoveMouseBy(0, drag_view->VerticalDragThreshold() + 1);
637 637
638 // Execute any scheduled draws to process deferred mouse events. 638 // Execute any scheduled draws to process deferred mouse events.
639 RunAllPendingInMessageLoop(); 639 RunAllPendingInMessageLoop();
640 640
641 // Verify the clipboard contents haven't changed 641 // Verify the clipboard contents haven't changed
642 std::string result; 642 std::string result;
643 EXPECT_TRUE(cb->IsFormatAvailable(ui::Clipboard::GetPlainTextFormatType(), 643 EXPECT_TRUE(cb->IsFormatAvailable(ui::Clipboard::GetPlainTextFormatType(),
644 ui::CLIPBOARD_TYPE_COPY_PASTE)); 644 ui::CLIPBOARD_TYPE_COPY_PASTE));
645 cb->ReadAsciiText(ui::CLIPBOARD_TYPE_COPY_PASTE, &result); 645 cb->ReadAsciiText(ui::CLIPBOARD_TYPE_COPY_PASTE, &result);
646 EXPECT_EQ(clip_str, result); 646 EXPECT_EQ(clip_str, result);
647 // Destory the clipboard here because ash doesn't delete it. 647 // Destory the clipboard here because ash doesn't delete it.
648 // crbug.com/158150. 648 // crbug.com/158150.
649 ui::Clipboard::DestroyClipboardForCurrentThread(); 649 ui::Clipboard::DestroyClipboardForCurrentThread();
650 } 650 }
651 651
652 TEST_F(DragDropControllerTest, WindowDestroyedDuringDragDrop) { 652 TEST_F(DragDropControllerTest, WindowDestroyedDuringDragDrop) {
653 scoped_ptr<views::Widget> widget(CreateNewWidget()); 653 std::unique_ptr<views::Widget> widget(CreateNewWidget());
654 DragTestView* drag_view = new DragTestView; 654 DragTestView* drag_view = new DragTestView;
655 AddViewToWidgetAndResize(widget.get(), drag_view); 655 AddViewToWidgetAndResize(widget.get(), drag_view);
656 aura::Window* window = widget->GetNativeView(); 656 aura::Window* window = widget->GetNativeView();
657 657
658 ui::OSExchangeData data; 658 ui::OSExchangeData data;
659 data.SetString(base::UTF8ToUTF16("I am being dragged")); 659 data.SetString(base::UTF8ToUTF16("I am being dragged"));
660 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 660 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
661 widget->GetNativeView()); 661 widget->GetNativeView());
662 generator.PressLeftButton(); 662 generator.PressLeftButton();
663 663
(...skipping 25 matching lines...) Expand all
689 // We should not crash here. 689 // We should not crash here.
690 } 690 }
691 691
692 generator.ReleaseLeftButton(); 692 generator.ReleaseLeftButton();
693 693
694 EXPECT_TRUE(drag_drop_controller_->drag_start_received_); 694 EXPECT_TRUE(drag_drop_controller_->drag_start_received_);
695 EXPECT_TRUE(drag_drop_controller_->drop_received_); 695 EXPECT_TRUE(drag_drop_controller_->drop_received_);
696 } 696 }
697 697
698 TEST_F(DragDropControllerTest, SyntheticEventsDuringDragDrop) { 698 TEST_F(DragDropControllerTest, SyntheticEventsDuringDragDrop) {
699 scoped_ptr<views::Widget> widget(CreateNewWidget()); 699 std::unique_ptr<views::Widget> widget(CreateNewWidget());
700 DragTestView* drag_view = new DragTestView; 700 DragTestView* drag_view = new DragTestView;
701 AddViewToWidgetAndResize(widget.get(), drag_view); 701 AddViewToWidgetAndResize(widget.get(), drag_view);
702 ui::OSExchangeData data; 702 ui::OSExchangeData data;
703 data.SetString(base::UTF8ToUTF16("I am being dragged")); 703 data.SetString(base::UTF8ToUTF16("I am being dragged"));
704 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 704 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
705 widget->GetNativeView()); 705 widget->GetNativeView());
706 generator.PressLeftButton(); 706 generator.PressLeftButton();
707 707
708 int num_drags = 17; 708 int num_drags = 17;
709 for (int i = 0; i < num_drags; ++i) { 709 for (int i = 0; i < num_drags; ++i) {
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
745 745
746 // TODO(win_aura) http://crbug.com/154081 746 // TODO(win_aura) http://crbug.com/154081
747 #if defined(OS_WIN) 747 #if defined(OS_WIN)
748 #define MAYBE_PressingEscapeCancelsDragDrop DISABLED_PressingEscapeCancelsDragDr op 748 #define MAYBE_PressingEscapeCancelsDragDrop DISABLED_PressingEscapeCancelsDragDr op
749 #define MAYBE_CaptureLostCancelsDragDrop DISABLED_CaptureLostCancelsDragDrop 749 #define MAYBE_CaptureLostCancelsDragDrop DISABLED_CaptureLostCancelsDragDrop
750 #else 750 #else
751 #define MAYBE_PressingEscapeCancelsDragDrop PressingEscapeCancelsDragDrop 751 #define MAYBE_PressingEscapeCancelsDragDrop PressingEscapeCancelsDragDrop
752 #define MAYBE_CaptureLostCancelsDragDrop CaptureLostCancelsDragDrop 752 #define MAYBE_CaptureLostCancelsDragDrop CaptureLostCancelsDragDrop
753 #endif 753 #endif
754 TEST_F(DragDropControllerTest, MAYBE_PressingEscapeCancelsDragDrop) { 754 TEST_F(DragDropControllerTest, MAYBE_PressingEscapeCancelsDragDrop) {
755 scoped_ptr<views::Widget> widget(CreateNewWidget()); 755 std::unique_ptr<views::Widget> widget(CreateNewWidget());
756 DragTestView* drag_view = new DragTestView; 756 DragTestView* drag_view = new DragTestView;
757 AddViewToWidgetAndResize(widget.get(), drag_view); 757 AddViewToWidgetAndResize(widget.get(), drag_view);
758 ui::OSExchangeData data; 758 ui::OSExchangeData data;
759 data.SetString(base::UTF8ToUTF16("I am being dragged")); 759 data.SetString(base::UTF8ToUTF16("I am being dragged"));
760 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 760 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
761 widget->GetNativeView()); 761 widget->GetNativeView());
762 generator.PressLeftButton(); 762 generator.PressLeftButton();
763 763
764 int num_drags = 17; 764 int num_drags = 17;
765 for (int i = 0; i < num_drags; ++i) { 765 for (int i = 0; i < num_drags; ++i) {
(...skipping 21 matching lines...) Expand all
787 787
788 EXPECT_EQ(1, drag_view->num_drag_enters_); 788 EXPECT_EQ(1, drag_view->num_drag_enters_);
789 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(), 789 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(),
790 drag_view->num_drag_updates_); 790 drag_view->num_drag_updates_);
791 EXPECT_EQ(0, drag_view->num_drops_); 791 EXPECT_EQ(0, drag_view->num_drops_);
792 EXPECT_EQ(1, drag_view->num_drag_exits_); 792 EXPECT_EQ(1, drag_view->num_drag_exits_);
793 EXPECT_TRUE(drag_view->drag_done_received_); 793 EXPECT_TRUE(drag_view->drag_done_received_);
794 } 794 }
795 795
796 TEST_F(DragDropControllerTest, MAYBE_CaptureLostCancelsDragDrop) { 796 TEST_F(DragDropControllerTest, MAYBE_CaptureLostCancelsDragDrop) {
797 scoped_ptr<views::Widget> widget(CreateNewWidget()); 797 std::unique_ptr<views::Widget> widget(CreateNewWidget());
798 DragTestView* drag_view = new DragTestView; 798 DragTestView* drag_view = new DragTestView;
799 AddViewToWidgetAndResize(widget.get(), drag_view); 799 AddViewToWidgetAndResize(widget.get(), drag_view);
800 ui::OSExchangeData data; 800 ui::OSExchangeData data;
801 data.SetString(base::UTF8ToUTF16("I am being dragged")); 801 data.SetString(base::UTF8ToUTF16("I am being dragged"));
802 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 802 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
803 widget->GetNativeView()); 803 widget->GetNativeView());
804 generator.PressLeftButton(); 804 generator.PressLeftButton();
805 805
806 int num_drags = 17; 806 int num_drags = 17;
807 for (int i = 0; i < num_drags; ++i) { 807 for (int i = 0; i < num_drags; ++i) {
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
840 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(), 840 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(),
841 drag_view->num_drag_updates_); 841 drag_view->num_drag_updates_);
842 EXPECT_EQ(0, drag_view->num_drops_); 842 EXPECT_EQ(0, drag_view->num_drops_);
843 EXPECT_EQ(1, drag_view->num_drag_exits_); 843 EXPECT_EQ(1, drag_view->num_drag_exits_);
844 EXPECT_TRUE(drag_view->drag_done_received_); 844 EXPECT_TRUE(drag_view->drag_done_received_);
845 } 845 }
846 846
847 TEST_F(DragDropControllerTest, TouchDragDropInMultipleWindows) { 847 TEST_F(DragDropControllerTest, TouchDragDropInMultipleWindows) {
848 base::CommandLine::ForCurrentProcess()->AppendSwitch( 848 base::CommandLine::ForCurrentProcess()->AppendSwitch(
849 switches::kEnableTouchDragDrop); 849 switches::kEnableTouchDragDrop);
850 scoped_ptr<views::Widget> widget1(CreateNewWidget()); 850 std::unique_ptr<views::Widget> widget1(CreateNewWidget());
851 DragTestView* drag_view1 = new DragTestView; 851 DragTestView* drag_view1 = new DragTestView;
852 AddViewToWidgetAndResize(widget1.get(), drag_view1); 852 AddViewToWidgetAndResize(widget1.get(), drag_view1);
853 scoped_ptr<views::Widget> widget2(CreateNewWidget()); 853 std::unique_ptr<views::Widget> widget2(CreateNewWidget());
854 DragTestView* drag_view2 = new DragTestView; 854 DragTestView* drag_view2 = new DragTestView;
855 AddViewToWidgetAndResize(widget2.get(), drag_view2); 855 AddViewToWidgetAndResize(widget2.get(), drag_view2);
856 gfx::Rect widget1_bounds = widget1->GetClientAreaBoundsInScreen(); 856 gfx::Rect widget1_bounds = widget1->GetClientAreaBoundsInScreen();
857 gfx::Rect widget2_bounds = widget2->GetClientAreaBoundsInScreen(); 857 gfx::Rect widget2_bounds = widget2->GetClientAreaBoundsInScreen();
858 widget2->SetBounds(gfx::Rect(widget1_bounds.width(), 0, 858 widget2->SetBounds(gfx::Rect(widget1_bounds.width(), 0,
859 widget2_bounds.width(), widget2_bounds.height())); 859 widget2_bounds.width(), widget2_bounds.height()));
860 860
861 ui::OSExchangeData data; 861 ui::OSExchangeData data;
862 data.SetString(base::UTF8ToUTF16("I am being dragged")); 862 data.SetString(base::UTF8ToUTF16("I am being dragged"));
863 863
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
901 num_expected_updates = num_drags - num_expected_updates; 901 num_expected_updates = num_drags - num_expected_updates;
902 EXPECT_EQ(num_expected_updates, drag_view2->num_drag_updates_); 902 EXPECT_EQ(num_expected_updates, drag_view2->num_drag_updates_);
903 EXPECT_EQ(1, drag_view2->num_drops_); 903 EXPECT_EQ(1, drag_view2->num_drops_);
904 EXPECT_EQ(0, drag_view2->num_drag_exits_); 904 EXPECT_EQ(0, drag_view2->num_drag_exits_);
905 EXPECT_FALSE(drag_view2->drag_done_received_); 905 EXPECT_FALSE(drag_view2->drag_done_received_);
906 } 906 }
907 907
908 TEST_F(DragDropControllerTest, TouchDragDropCancelsOnLongTap) { 908 TEST_F(DragDropControllerTest, TouchDragDropCancelsOnLongTap) {
909 base::CommandLine::ForCurrentProcess()->AppendSwitch( 909 base::CommandLine::ForCurrentProcess()->AppendSwitch(
910 switches::kEnableTouchDragDrop); 910 switches::kEnableTouchDragDrop);
911 scoped_ptr<views::Widget> widget(CreateNewWidget()); 911 std::unique_ptr<views::Widget> widget(CreateNewWidget());
912 DragTestView* drag_view = new DragTestView; 912 DragTestView* drag_view = new DragTestView;
913 AddViewToWidgetAndResize(widget.get(), drag_view); 913 AddViewToWidgetAndResize(widget.get(), drag_view);
914 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 914 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
915 widget->GetNativeView()); 915 widget->GetNativeView());
916 916
917 generator.PressTouch(); 917 generator.PressTouch();
918 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint(); 918 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint();
919 DispatchGesture(ui::ET_GESTURE_LONG_PRESS, point); 919 DispatchGesture(ui::ET_GESTURE_LONG_PRESS, point);
920 DispatchGesture(ui::ET_GESTURE_LONG_TAP, point); 920 DispatchGesture(ui::ET_GESTURE_LONG_TAP, point);
921 921
922 EXPECT_TRUE(drag_drop_controller_->drag_start_received_); 922 EXPECT_TRUE(drag_drop_controller_->drag_start_received_);
923 EXPECT_TRUE(drag_drop_controller_->drag_canceled_); 923 EXPECT_TRUE(drag_drop_controller_->drag_canceled_);
924 EXPECT_EQ(0, drag_drop_controller_->num_drag_updates_); 924 EXPECT_EQ(0, drag_drop_controller_->num_drag_updates_);
925 EXPECT_FALSE(drag_drop_controller_->drop_received_); 925 EXPECT_FALSE(drag_drop_controller_->drop_received_);
926 EXPECT_EQ(base::UTF8ToUTF16("I am being dragged"), 926 EXPECT_EQ(base::UTF8ToUTF16("I am being dragged"),
927 drag_drop_controller_->drag_string_); 927 drag_drop_controller_->drag_string_);
928 EXPECT_EQ(0, drag_view->num_drag_enters_); 928 EXPECT_EQ(0, drag_view->num_drag_enters_);
929 EXPECT_EQ(0, drag_view->num_drops_); 929 EXPECT_EQ(0, drag_view->num_drops_);
930 EXPECT_EQ(0, drag_view->num_drag_exits_); 930 EXPECT_EQ(0, drag_view->num_drag_exits_);
931 EXPECT_TRUE(drag_view->drag_done_received_); 931 EXPECT_TRUE(drag_view->drag_done_received_);
932 } 932 }
933 933
934 TEST_F(DragDropControllerTest, TouchDragDropLongTapGestureIsForwarded) { 934 TEST_F(DragDropControllerTest, TouchDragDropLongTapGestureIsForwarded) {
935 base::CommandLine::ForCurrentProcess()->AppendSwitch( 935 base::CommandLine::ForCurrentProcess()->AppendSwitch(
936 switches::kEnableTouchDragDrop); 936 switches::kEnableTouchDragDrop);
937 scoped_ptr<views::Widget> widget(CreateNewWidget()); 937 std::unique_ptr<views::Widget> widget(CreateNewWidget());
938 DragTestView* drag_view = new DragTestView; 938 DragTestView* drag_view = new DragTestView;
939 AddViewToWidgetAndResize(widget.get(), drag_view); 939 AddViewToWidgetAndResize(widget.get(), drag_view);
940 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 940 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
941 widget->GetNativeView()); 941 widget->GetNativeView());
942 942
943 generator.PressTouch(); 943 generator.PressTouch();
944 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint(); 944 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint();
945 DispatchGesture(ui::ET_GESTURE_LONG_PRESS, point); 945 DispatchGesture(ui::ET_GESTURE_LONG_PRESS, point);
946 946
947 // Since we are not running inside a nested loop, the |drag_source_window_| 947 // Since we are not running inside a nested loop, the |drag_source_window_|
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
982 aura::Window::Windows root_windows = 982 aura::Window::Windows root_windows =
983 Shell::GetInstance()->GetAllRootWindows(); 983 Shell::GetInstance()->GetAllRootWindows();
984 for (aura::Window::Windows::iterator iter = root_windows.begin(); 984 for (aura::Window::Windows::iterator iter = root_windows.begin();
985 iter != root_windows.end(); ++iter) { 985 iter != root_windows.end(); ++iter) {
986 aura::client::SetDragDropClient(*iter, drag_drop_controller_.get()); 986 aura::client::SetDragDropClient(*iter, drag_drop_controller_.get());
987 } 987 }
988 988
989 ui::OSExchangeData data; 989 ui::OSExchangeData data;
990 data.SetString(base::UTF8ToUTF16("I am being dragged")); 990 data.SetString(base::UTF8ToUTF16("I am being dragged"));
991 { 991 {
992 scoped_ptr<views::Widget> widget(CreateNewWidget()); 992 std::unique_ptr<views::Widget> widget(CreateNewWidget());
993 aura::Window* window = widget->GetNativeWindow(); 993 aura::Window* window = widget->GetNativeWindow();
994 drag_drop_controller_->StartDragAndDrop( 994 drag_drop_controller_->StartDragAndDrop(
995 data, 995 data,
996 window->GetRootWindow(), 996 window->GetRootWindow(),
997 window, 997 window,
998 gfx::Point(5, 5), 998 gfx::Point(5, 5),
999 ui::DragDropTypes::DRAG_MOVE, 999 ui::DragDropTypes::DRAG_MOVE,
1000 ui::DragDropTypes::DRAG_EVENT_SOURCE_MOUSE); 1000 ui::DragDropTypes::DRAG_EVENT_SOURCE_MOUSE);
1001 1001
1002 DragImageWindowObserver observer; 1002 DragImageWindowObserver observer;
(...skipping 13 matching lines...) Expand all
1016 drag_drop_controller_->DragUpdate(window, e); 1016 drag_drop_controller_->DragUpdate(window, e);
1017 } 1017 }
1018 1018
1019 drag_drop_controller_->DragCancel(); 1019 drag_drop_controller_->DragCancel();
1020 CompleteCancelAnimation(); 1020 CompleteCancelAnimation();
1021 1021
1022 EXPECT_EQ("5,5", observer.window_location_on_destroying().ToString()); 1022 EXPECT_EQ("5,5", observer.window_location_on_destroying().ToString());
1023 } 1023 }
1024 1024
1025 { 1025 {
1026 scoped_ptr<views::Widget> widget(CreateNewWidget()); 1026 std::unique_ptr<views::Widget> widget(CreateNewWidget());
1027 aura::Window* window = widget->GetNativeWindow(); 1027 aura::Window* window = widget->GetNativeWindow();
1028 drag_drop_controller_->StartDragAndDrop( 1028 drag_drop_controller_->StartDragAndDrop(
1029 data, 1029 data,
1030 window->GetRootWindow(), 1030 window->GetRootWindow(),
1031 window, 1031 window,
1032 gfx::Point(405, 405), 1032 gfx::Point(405, 405),
1033 ui::DragDropTypes::DRAG_MOVE, 1033 ui::DragDropTypes::DRAG_MOVE,
1034 ui::DragDropTypes::DRAG_EVENT_SOURCE_MOUSE); 1034 ui::DragDropTypes::DRAG_EVENT_SOURCE_MOUSE);
1035 DragImageWindowObserver observer; 1035 DragImageWindowObserver observer;
1036 ASSERT_TRUE(GetDragImageWindow()); 1036 ASSERT_TRUE(GetDragImageWindow());
(...skipping 21 matching lines...) Expand all
1058 iter != root_windows.end(); ++iter) { 1058 iter != root_windows.end(); ++iter) {
1059 aura::client::SetDragDropClient(*iter, NULL); 1059 aura::client::SetDragDropClient(*iter, NULL);
1060 } 1060 }
1061 } 1061 }
1062 1062
1063 TEST_F(DragDropControllerTest, TouchDragDropCompletesOnFling) { 1063 TEST_F(DragDropControllerTest, TouchDragDropCompletesOnFling) {
1064 base::CommandLine::ForCurrentProcess()->AppendSwitch( 1064 base::CommandLine::ForCurrentProcess()->AppendSwitch(
1065 switches::kEnableTouchDragDrop); 1065 switches::kEnableTouchDragDrop);
1066 ui::GestureConfiguration::GetInstance() 1066 ui::GestureConfiguration::GetInstance()
1067 ->set_max_touch_move_in_pixels_for_click(1); 1067 ->set_max_touch_move_in_pixels_for_click(1);
1068 scoped_ptr<views::Widget> widget(CreateNewWidget()); 1068 std::unique_ptr<views::Widget> widget(CreateNewWidget());
1069 DragTestView* drag_view = new DragTestView; 1069 DragTestView* drag_view = new DragTestView;
1070 AddViewToWidgetAndResize(widget.get(), drag_view); 1070 AddViewToWidgetAndResize(widget.get(), drag_view);
1071 ui::OSExchangeData data; 1071 ui::OSExchangeData data;
1072 data.SetString(base::UTF8ToUTF16("I am being dragged")); 1072 data.SetString(base::UTF8ToUTF16("I am being dragged"));
1073 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), 1073 ui::test::EventGenerator generator(Shell::GetPrimaryRootWindow(),
1074 widget->GetNativeView()); 1074 widget->GetNativeView());
1075 1075
1076 gfx::Point start = gfx::Rect(drag_view->bounds()).CenterPoint(); 1076 gfx::Point start = gfx::Rect(drag_view->bounds()).CenterPoint();
1077 gfx::Point mid = start + gfx::Vector2d(drag_view->bounds().width() / 6, 0); 1077 gfx::Point mid = start + gfx::Vector2d(drag_view->bounds().width() / 6, 0);
1078 gfx::Point end = start + gfx::Vector2d(drag_view->bounds().width() / 3, 0); 1078 gfx::Point end = start + gfx::Vector2d(drag_view->bounds().width() / 3, 0);
(...skipping 23 matching lines...) Expand all
1102 drag_drop_controller_->drag_string_); 1102 drag_drop_controller_->drag_string_);
1103 EXPECT_EQ(1, drag_view->num_drag_enters_); 1103 EXPECT_EQ(1, drag_view->num_drag_enters_);
1104 EXPECT_EQ(2, drag_view->num_drag_updates_); 1104 EXPECT_EQ(2, drag_view->num_drag_updates_);
1105 EXPECT_EQ(1, drag_view->num_drops_); 1105 EXPECT_EQ(1, drag_view->num_drops_);
1106 EXPECT_EQ(0, drag_view->num_drag_exits_); 1106 EXPECT_EQ(0, drag_view->num_drag_exits_);
1107 EXPECT_TRUE(drag_view->drag_done_received_); 1107 EXPECT_TRUE(drag_view->drag_done_received_);
1108 } 1108 }
1109 1109
1110 } // namespace test 1110 } // namespace test
1111 } // namespace ash 1111 } // namespace ash
OLDNEW
« no previous file with comments | « ash/drag_drop/drag_drop_controller.cc ('k') | ash/drag_drop/drag_drop_tracker.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698