OLD | NEW |
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 "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/bind.h" | 6 #include "base/bind.h" |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/memory/shared_memory.h" | 9 #include "base/memory/shared_memory.h" |
10 #include "base/timer/timer.h" | 10 #include "base/timer/timer.h" |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
132 MockRenderWidgetHost( | 132 MockRenderWidgetHost( |
133 RenderWidgetHostDelegate* delegate, | 133 RenderWidgetHostDelegate* delegate, |
134 RenderProcessHost* process, | 134 RenderProcessHost* process, |
135 int routing_id) | 135 int routing_id) |
136 : RenderWidgetHostImpl(delegate, process, routing_id, false), | 136 : RenderWidgetHostImpl(delegate, process, routing_id, false), |
137 unresponsive_timer_fired_(false) { | 137 unresponsive_timer_fired_(false) { |
138 acked_touch_event_type_ = blink::WebInputEvent::Undefined; | 138 acked_touch_event_type_ = blink::WebInputEvent::Undefined; |
139 } | 139 } |
140 | 140 |
141 // Allow poking at a few private members. | 141 // Allow poking at a few private members. |
| 142 using RenderWidgetHostImpl::GetResizeParams; |
142 using RenderWidgetHostImpl::OnUpdateRect; | 143 using RenderWidgetHostImpl::OnUpdateRect; |
143 using RenderWidgetHostImpl::RendererExited; | 144 using RenderWidgetHostImpl::RendererExited; |
144 using RenderWidgetHostImpl::last_requested_size_; | 145 using RenderWidgetHostImpl::SetInitialRenderSizeParams; |
| 146 using RenderWidgetHostImpl::old_resize_params_; |
145 using RenderWidgetHostImpl::is_hidden_; | 147 using RenderWidgetHostImpl::is_hidden_; |
146 using RenderWidgetHostImpl::resize_ack_pending_; | 148 using RenderWidgetHostImpl::resize_ack_pending_; |
147 using RenderWidgetHostImpl::input_router_; | 149 using RenderWidgetHostImpl::input_router_; |
148 | 150 |
149 void OnTouchEventAck(const TouchEventWithLatencyInfo& event, | 151 void OnTouchEventAck(const TouchEventWithLatencyInfo& event, |
150 InputEventAckState ack_result) override { | 152 InputEventAckState ack_result) override { |
151 // Sniff touch acks. | 153 // Sniff touch acks. |
152 acked_touch_event_type_ = event.event.type; | 154 acked_touch_event_type_ = event.event.type; |
153 RenderWidgetHostImpl::OnTouchEventAck(event, ack_result); | 155 RenderWidgetHostImpl::OnTouchEventAck(event, ack_result); |
154 } | 156 } |
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
433 } | 435 } |
434 #endif | 436 #endif |
435 #if defined(USE_AURA) | 437 #if defined(USE_AURA) |
436 aura::Env::CreateInstance(true); | 438 aura::Env::CreateInstance(true); |
437 screen_.reset(aura::TestScreen::Create(gfx::Size())); | 439 screen_.reset(aura::TestScreen::Create(gfx::Size())); |
438 gfx::Screen::SetScreenInstance(gfx::SCREEN_TYPE_NATIVE, screen_.get()); | 440 gfx::Screen::SetScreenInstance(gfx::SCREEN_TYPE_NATIVE, screen_.get()); |
439 #endif | 441 #endif |
440 host_.reset( | 442 host_.reset( |
441 new MockRenderWidgetHost(delegate_.get(), process_, MSG_ROUTING_NONE)); | 443 new MockRenderWidgetHost(delegate_.get(), process_, MSG_ROUTING_NONE)); |
442 view_.reset(new TestView(host_.get())); | 444 view_.reset(new TestView(host_.get())); |
| 445 ConfigureView(view_.get()); |
443 host_->SetView(view_.get()); | 446 host_->SetView(view_.get()); |
| 447 SetInitialRenderSizeParams(); |
444 host_->Init(); | 448 host_->Init(); |
445 host_->DisableGestureDebounce(); | 449 host_->DisableGestureDebounce(); |
446 } | 450 } |
| 451 |
447 void TearDown() override { | 452 void TearDown() override { |
448 view_.reset(); | 453 view_.reset(); |
449 host_.reset(); | 454 host_.reset(); |
450 delegate_.reset(); | 455 delegate_.reset(); |
451 process_ = NULL; | 456 process_ = NULL; |
452 browser_context_.reset(); | 457 browser_context_.reset(); |
453 | 458 |
454 #if defined(USE_AURA) | 459 #if defined(USE_AURA) |
455 aura::Env::DeleteInstance(); | 460 aura::Env::DeleteInstance(); |
456 screen_.reset(); | 461 screen_.reset(); |
457 #endif | 462 #endif |
458 #if defined(USE_AURA) || (defined(OS_MACOSX) && !defined(OS_IOS)) | 463 #if defined(USE_AURA) || (defined(OS_MACOSX) && !defined(OS_IOS)) |
459 if (IsDelegatedRendererEnabled()) | 464 if (IsDelegatedRendererEnabled()) |
460 ImageTransportFactory::Terminate(); | 465 ImageTransportFactory::Terminate(); |
461 #endif | 466 #endif |
462 | 467 |
463 // Process all pending tasks to avoid leaks. | 468 // Process all pending tasks to avoid leaks. |
464 base::MessageLoop::current()->RunUntilIdle(); | 469 base::MessageLoop::current()->RunUntilIdle(); |
465 } | 470 } |
466 | 471 |
| 472 void SetInitialRenderSizeParams() { |
| 473 ViewMsg_Resize_Params render_size_params; |
| 474 host_->GetResizeParams(&render_size_params); |
| 475 host_->SetInitialRenderSizeParams(render_size_params); |
| 476 } |
| 477 |
| 478 virtual void ConfigureView(TestView* view) { |
| 479 } |
| 480 |
467 int64 GetLatencyComponentId() { | 481 int64 GetLatencyComponentId() { |
468 return host_->GetLatencyComponentId(); | 482 return host_->GetLatencyComponentId(); |
469 } | 483 } |
470 | 484 |
471 void SendInputEventACK(WebInputEvent::Type type, | 485 void SendInputEventACK(WebInputEvent::Type type, |
472 InputEventAckState ack_result) { | 486 InputEventAckState ack_result) { |
473 InputHostMsg_HandleInputEvent_ACK_Params ack; | 487 InputHostMsg_HandleInputEvent_ACK_Params ack; |
474 ack.type = type; | 488 ack.type = type; |
475 ack.state = ack_result; | 489 ack.state = ack_result; |
476 host_->OnMessageReceived(InputHostMsg_HandleInputEvent_ACK(0, ack)); | 490 host_->OnMessageReceived(InputHostMsg_HandleInputEvent_ACK(0, ack)); |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
623 EXPECT_FALSE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 637 EXPECT_FALSE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
624 | 638 |
625 // Setting the bounds to a "real" rect should send out the notification. | 639 // Setting the bounds to a "real" rect should send out the notification. |
626 // but should not expect ack for empty physical backing size. | 640 // but should not expect ack for empty physical backing size. |
627 gfx::Rect original_size(0, 0, 100, 100); | 641 gfx::Rect original_size(0, 0, 100, 100); |
628 process_->sink().ClearMessages(); | 642 process_->sink().ClearMessages(); |
629 view_->set_bounds(original_size); | 643 view_->set_bounds(original_size); |
630 view_->SetMockPhysicalBackingSize(gfx::Size()); | 644 view_->SetMockPhysicalBackingSize(gfx::Size()); |
631 host_->WasResized(); | 645 host_->WasResized(); |
632 EXPECT_FALSE(host_->resize_ack_pending_); | 646 EXPECT_FALSE(host_->resize_ack_pending_); |
633 EXPECT_EQ(original_size.size(), host_->last_requested_size_); | 647 EXPECT_EQ(original_size.size(), host_->old_resize_params_->new_size); |
634 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 648 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
635 | 649 |
636 // Setting the bounds to a "real" rect should send out the notification. | 650 // Setting the bounds to a "real" rect should send out the notification. |
637 // but should not expect ack for only physical backing size change. | 651 // but should not expect ack for only physical backing size change. |
638 process_->sink().ClearMessages(); | 652 process_->sink().ClearMessages(); |
639 view_->ClearMockPhysicalBackingSize(); | 653 view_->ClearMockPhysicalBackingSize(); |
640 host_->WasResized(); | 654 host_->WasResized(); |
641 EXPECT_FALSE(host_->resize_ack_pending_); | 655 EXPECT_FALSE(host_->resize_ack_pending_); |
642 EXPECT_EQ(original_size.size(), host_->last_requested_size_); | 656 EXPECT_EQ(original_size.size(), host_->old_resize_params_->new_size); |
643 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 657 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
644 | 658 |
645 // Send out a update that's not a resize ack after setting resize ack pending | 659 // Send out a update that's not a resize ack after setting resize ack pending |
646 // flag. This should not clean the resize ack pending flag. | 660 // flag. This should not clean the resize ack pending flag. |
647 process_->sink().ClearMessages(); | 661 process_->sink().ClearMessages(); |
648 gfx::Rect second_size(0, 0, 110, 110); | 662 gfx::Rect second_size(0, 0, 110, 110); |
649 EXPECT_FALSE(host_->resize_ack_pending_); | 663 EXPECT_FALSE(host_->resize_ack_pending_); |
650 view_->set_bounds(second_size); | 664 view_->set_bounds(second_size); |
651 host_->WasResized(); | 665 host_->WasResized(); |
652 EXPECT_TRUE(host_->resize_ack_pending_); | 666 EXPECT_TRUE(host_->resize_ack_pending_); |
653 ViewHostMsg_UpdateRect_Params params; | 667 ViewHostMsg_UpdateRect_Params params; |
654 process_->InitUpdateRectParams(¶ms); | 668 process_->InitUpdateRectParams(¶ms); |
655 host_->OnUpdateRect(params); | 669 host_->OnUpdateRect(params); |
656 EXPECT_TRUE(host_->resize_ack_pending_); | 670 EXPECT_TRUE(host_->resize_ack_pending_); |
657 EXPECT_EQ(second_size.size(), host_->last_requested_size_); | 671 EXPECT_EQ(second_size.size(), host_->old_resize_params_->new_size); |
658 | 672 |
659 // Sending out a new notification should NOT send out a new IPC message since | 673 // Sending out a new notification should NOT send out a new IPC message since |
660 // a resize ACK is pending. | 674 // a resize ACK is pending. |
661 gfx::Rect third_size(0, 0, 120, 120); | 675 gfx::Rect third_size(0, 0, 120, 120); |
662 process_->sink().ClearMessages(); | 676 process_->sink().ClearMessages(); |
663 view_->set_bounds(third_size); | 677 view_->set_bounds(third_size); |
664 host_->WasResized(); | 678 host_->WasResized(); |
665 EXPECT_TRUE(host_->resize_ack_pending_); | 679 EXPECT_TRUE(host_->resize_ack_pending_); |
666 EXPECT_EQ(second_size.size(), host_->last_requested_size_); | 680 EXPECT_EQ(second_size.size(), host_->old_resize_params_->new_size); |
667 EXPECT_FALSE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 681 EXPECT_FALSE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
668 | 682 |
669 // Send a update that's a resize ack, but for the original_size we sent. Since | 683 // Send a update that's a resize ack, but for the original_size we sent. Since |
670 // this isn't the second_size, the message handler should immediately send | 684 // this isn't the second_size, the message handler should immediately send |
671 // a new resize message for the new size to the renderer. | 685 // a new resize message for the new size to the renderer. |
672 process_->sink().ClearMessages(); | 686 process_->sink().ClearMessages(); |
673 params.flags = ViewHostMsg_UpdateRect_Flags::IS_RESIZE_ACK; | 687 params.flags = ViewHostMsg_UpdateRect_Flags::IS_RESIZE_ACK; |
674 params.view_size = original_size.size(); | 688 params.view_size = original_size.size(); |
675 host_->OnUpdateRect(params); | 689 host_->OnUpdateRect(params); |
676 EXPECT_TRUE(host_->resize_ack_pending_); | 690 EXPECT_TRUE(host_->resize_ack_pending_); |
677 EXPECT_EQ(third_size.size(), host_->last_requested_size_); | 691 EXPECT_EQ(third_size.size(), host_->old_resize_params_->new_size); |
678 ASSERT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 692 ASSERT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
679 | 693 |
680 // Send the resize ack for the latest size. | 694 // Send the resize ack for the latest size. |
681 process_->sink().ClearMessages(); | 695 process_->sink().ClearMessages(); |
682 params.view_size = third_size.size(); | 696 params.view_size = third_size.size(); |
683 host_->OnUpdateRect(params); | 697 host_->OnUpdateRect(params); |
684 EXPECT_FALSE(host_->resize_ack_pending_); | 698 EXPECT_FALSE(host_->resize_ack_pending_); |
685 EXPECT_EQ(third_size.size(), host_->last_requested_size_); | 699 EXPECT_EQ(third_size.size(), host_->old_resize_params_->new_size); |
686 ASSERT_FALSE(process_->sink().GetFirstMessageMatching(ViewMsg_Resize::ID)); | 700 ASSERT_FALSE(process_->sink().GetFirstMessageMatching(ViewMsg_Resize::ID)); |
687 | 701 |
688 // Now clearing the bounds should send out a notification but we shouldn't | 702 // Now clearing the bounds should send out a notification but we shouldn't |
689 // expect a resize ack (since the renderer won't ack empty sizes). The message | 703 // expect a resize ack (since the renderer won't ack empty sizes). The message |
690 // should contain the new size (0x0) and not the previous one that we skipped | 704 // should contain the new size (0x0) and not the previous one that we skipped |
691 process_->sink().ClearMessages(); | 705 process_->sink().ClearMessages(); |
692 view_->set_bounds(gfx::Rect()); | 706 view_->set_bounds(gfx::Rect()); |
693 host_->WasResized(); | 707 host_->WasResized(); |
694 EXPECT_FALSE(host_->resize_ack_pending_); | 708 EXPECT_FALSE(host_->resize_ack_pending_); |
695 EXPECT_EQ(gfx::Size(), host_->last_requested_size_); | 709 EXPECT_EQ(gfx::Size(), host_->old_resize_params_->new_size); |
696 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 710 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
697 | 711 |
698 // Send a rect that has no area but has either width or height set. | 712 // Send a rect that has no area but has either width or height set. |
699 process_->sink().ClearMessages(); | 713 process_->sink().ClearMessages(); |
700 view_->set_bounds(gfx::Rect(0, 0, 0, 30)); | 714 view_->set_bounds(gfx::Rect(0, 0, 0, 30)); |
701 host_->WasResized(); | 715 host_->WasResized(); |
702 EXPECT_FALSE(host_->resize_ack_pending_); | 716 EXPECT_FALSE(host_->resize_ack_pending_); |
703 EXPECT_EQ(gfx::Size(0, 30), host_->last_requested_size_); | 717 EXPECT_EQ(gfx::Size(0, 30), host_->old_resize_params_->new_size); |
704 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 718 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
705 | 719 |
706 // Set the same size again. It should not be sent again. | 720 // Set the same size again. It should not be sent again. |
707 process_->sink().ClearMessages(); | 721 process_->sink().ClearMessages(); |
708 host_->WasResized(); | 722 host_->WasResized(); |
709 EXPECT_FALSE(host_->resize_ack_pending_); | 723 EXPECT_FALSE(host_->resize_ack_pending_); |
710 EXPECT_EQ(gfx::Size(0, 30), host_->last_requested_size_); | 724 EXPECT_EQ(gfx::Size(0, 30), host_->old_resize_params_->new_size); |
711 EXPECT_FALSE(process_->sink().GetFirstMessageMatching(ViewMsg_Resize::ID)); | 725 EXPECT_FALSE(process_->sink().GetFirstMessageMatching(ViewMsg_Resize::ID)); |
712 | 726 |
713 // A different size should be sent again, however. | 727 // A different size should be sent again, however. |
714 view_->set_bounds(gfx::Rect(0, 0, 0, 31)); | 728 view_->set_bounds(gfx::Rect(0, 0, 0, 31)); |
715 host_->WasResized(); | 729 host_->WasResized(); |
716 EXPECT_FALSE(host_->resize_ack_pending_); | 730 EXPECT_FALSE(host_->resize_ack_pending_); |
717 EXPECT_EQ(gfx::Size(0, 31), host_->last_requested_size_); | 731 EXPECT_EQ(gfx::Size(0, 31), host_->old_resize_params_->new_size); |
718 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 732 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
719 } | 733 } |
720 | 734 |
721 // Test for crbug.com/25097. If a renderer crashes between a resize and the | 735 // Test for crbug.com/25097. If a renderer crashes between a resize and the |
722 // corresponding update message, we must be sure to clear the resize ack logic. | 736 // corresponding update message, we must be sure to clear the resize ack logic. |
723 TEST_F(RenderWidgetHostTest, ResizeThenCrash) { | 737 TEST_F(RenderWidgetHostTest, ResizeThenCrash) { |
724 // Clear the first Resize message that carried screen info. | 738 // Clear the first Resize message that carried screen info. |
725 process_->sink().ClearMessages(); | 739 process_->sink().ClearMessages(); |
726 | 740 |
727 // Setting the bounds to a "real" rect should send out the notification. | 741 // Setting the bounds to a "real" rect should send out the notification. |
728 gfx::Rect original_size(0, 0, 100, 100); | 742 gfx::Rect original_size(0, 0, 100, 100); |
729 view_->set_bounds(original_size); | 743 view_->set_bounds(original_size); |
730 host_->WasResized(); | 744 host_->WasResized(); |
731 EXPECT_TRUE(host_->resize_ack_pending_); | 745 EXPECT_TRUE(host_->resize_ack_pending_); |
732 EXPECT_EQ(original_size.size(), host_->last_requested_size_); | 746 EXPECT_EQ(original_size.size(), host_->old_resize_params_->new_size); |
733 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); | 747 EXPECT_TRUE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
734 | 748 |
735 // Simulate a renderer crash before the update message. Ensure all the | 749 // Simulate a renderer crash before the update message. Ensure all the |
736 // resize ack logic is cleared. Must clear the view first so it doesn't get | 750 // resize ack logic is cleared. Must clear the view first so it doesn't get |
737 // deleted. | 751 // deleted. |
738 host_->SetView(NULL); | 752 host_->SetView(NULL); |
739 host_->RendererExited(base::TERMINATION_STATUS_PROCESS_CRASHED, -1); | 753 host_->RendererExited(base::TERMINATION_STATUS_PROCESS_CRASHED, -1); |
740 EXPECT_FALSE(host_->resize_ack_pending_); | 754 EXPECT_FALSE(host_->resize_ack_pending_); |
741 EXPECT_EQ(gfx::Size(), host_->last_requested_size_); | 755 EXPECT_EQ(gfx::Size(), host_->old_resize_params_->new_size); |
742 | 756 |
743 // Reset the view so we can exit the test cleanly. | 757 // Reset the view so we can exit the test cleanly. |
744 host_->SetView(view_.get()); | 758 host_->SetView(view_.get()); |
745 } | 759 } |
746 | 760 |
747 // Unable to include render_widget_host_view_mac.h and compile. | 761 // Unable to include render_widget_host_view_mac.h and compile. |
748 #if !defined(OS_MACOSX) | 762 #if !defined(OS_MACOSX) |
749 // Tests setting background transparency. | 763 // Tests setting background transparency. |
750 TEST_F(RenderWidgetHostTest, Background) { | 764 TEST_F(RenderWidgetHostTest, Background) { |
751 scoped_ptr<RenderWidgetHostViewBase> view; | 765 scoped_ptr<RenderWidgetHostViewBase> view; |
(...skipping 735 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1487 host_->WasHidden(); | 1501 host_->WasHidden(); |
1488 | 1502 |
1489 ASSERT_TRUE(host_->is_hidden()); | 1503 ASSERT_TRUE(host_->is_hidden()); |
1490 host_->RendererExited(base::TERMINATION_STATUS_PROCESS_CRASHED, -1); | 1504 host_->RendererExited(base::TERMINATION_STATUS_PROCESS_CRASHED, -1); |
1491 ASSERT_FALSE(host_->is_hidden()); | 1505 ASSERT_FALSE(host_->is_hidden()); |
1492 | 1506 |
1493 // Make sure the input router is in a fresh state. | 1507 // Make sure the input router is in a fresh state. |
1494 ASSERT_FALSE(host_->input_router()->HasPendingEvents()); | 1508 ASSERT_FALSE(host_->input_router()->HasPendingEvents()); |
1495 } | 1509 } |
1496 | 1510 |
| 1511 TEST_F(RenderWidgetHostTest, ResizeParams) { |
| 1512 gfx::Rect bounds(0, 0, 100, 100); |
| 1513 gfx::Size physical_backing_size(40, 50); |
| 1514 view_->set_bounds(bounds); |
| 1515 view_->SetMockPhysicalBackingSize(physical_backing_size); |
| 1516 |
| 1517 ViewMsg_Resize_Params resize_params; |
| 1518 host_->GetResizeParams(&resize_params); |
| 1519 EXPECT_EQ(bounds.size(), resize_params.new_size); |
| 1520 EXPECT_EQ(physical_backing_size, resize_params.physical_backing_size); |
| 1521 } |
| 1522 |
| 1523 class RenderWidgetHostInitialSizeTest : public RenderWidgetHostTest { |
| 1524 public: |
| 1525 RenderWidgetHostInitialSizeTest() |
| 1526 : RenderWidgetHostTest(), initial_size_(200, 100) {} |
| 1527 |
| 1528 virtual void ConfigureView(TestView* view) override { |
| 1529 view->set_bounds(gfx::Rect(initial_size_)); |
| 1530 } |
| 1531 |
| 1532 protected: |
| 1533 gfx::Size initial_size_; |
| 1534 }; |
| 1535 |
| 1536 TEST_F(RenderWidgetHostInitialSizeTest, InitialSize) { |
| 1537 // Having an initial size set means that the size information had been sent |
| 1538 // with the reqiest to new up the RenderView and so subsequent WasResized |
| 1539 // calls should not result in new IPC (unless the size has actually changed). |
| 1540 host_->WasResized(); |
| 1541 EXPECT_FALSE(process_->sink().GetUniqueMessageMatching(ViewMsg_Resize::ID)); |
| 1542 EXPECT_EQ(initial_size_, host_->old_resize_params_->new_size); |
| 1543 EXPECT_TRUE(host_->resize_ack_pending_); |
| 1544 } |
| 1545 |
1497 } // namespace content | 1546 } // namespace content |
OLD | NEW |