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

Side by Side Diff: content/browser/renderer_host/render_widget_host_view_aura_unittest.cc

Issue 2774373002: Use MojoCompositorFrameSink in RendererCompositorFrameSink (Closed)
Patch Set: Fixed mac Created 3 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
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 "content/browser/renderer_host/render_widget_host_view_aura.h" 5 #include "content/browser/renderer_host/render_widget_host_view_aura.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <tuple> 10 #include <tuple>
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 #include "content/common/input_messages.h" 54 #include "content/common/input_messages.h"
55 #include "content/common/text_input_state.h" 55 #include "content/common/text_input_state.h"
56 #include "content/common/view_messages.h" 56 #include "content/common/view_messages.h"
57 #include "content/public/browser/keyboard_event_processing_result.h" 57 #include "content/public/browser/keyboard_event_processing_result.h"
58 #include "content/public/browser/render_widget_host_view.h" 58 #include "content/public/browser/render_widget_host_view.h"
59 #include "content/public/browser/web_contents_view_delegate.h" 59 #include "content/public/browser/web_contents_view_delegate.h"
60 #include "content/public/common/content_features.h" 60 #include "content/public/common/content_features.h"
61 #include "content/public/common/context_menu_params.h" 61 #include "content/public/common/context_menu_params.h"
62 #include "content/public/test/mock_render_process_host.h" 62 #include "content/public/test/mock_render_process_host.h"
63 #include "content/public/test/test_browser_context.h" 63 #include "content/public/test/test_browser_context.h"
64 #include "content/test/fake_renderer_compositor_frame_sink.h"
64 #include "content/test/test_render_view_host.h" 65 #include "content/test/test_render_view_host.h"
65 #include "content/test/test_web_contents.h" 66 #include "content/test/test_web_contents.h"
66 #include "ipc/ipc_message.h" 67 #include "ipc/ipc_message.h"
67 #include "ipc/ipc_test_sink.h" 68 #include "ipc/ipc_test_sink.h"
68 #include "media/base/video_frame.h" 69 #include "media/base/video_frame.h"
69 #include "testing/gmock/include/gmock/gmock.h" 70 #include "testing/gmock/include/gmock/gmock.h"
70 #include "testing/gtest/include/gtest/gtest.h" 71 #include "testing/gtest/include/gtest/gtest.h"
71 #include "ui/aura/client/aura_constants.h" 72 #include "ui/aura/client/aura_constants.h"
72 #include "ui/aura/client/screen_position_client.h" 73 #include "ui/aura/client/screen_position_client.h"
73 #include "ui/aura/client/window_parenting_client.h" 74 #include "ui/aura/client/window_parenting_client.h"
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after
405 406
406 class FakeRenderWidgetHostViewAura : public RenderWidgetHostViewAura { 407 class FakeRenderWidgetHostViewAura : public RenderWidgetHostViewAura {
407 public: 408 public:
408 FakeRenderWidgetHostViewAura(RenderWidgetHost* widget, 409 FakeRenderWidgetHostViewAura(RenderWidgetHost* widget,
409 bool is_guest_view_hack) 410 bool is_guest_view_hack)
410 : RenderWidgetHostViewAura(widget, is_guest_view_hack), 411 : RenderWidgetHostViewAura(widget, is_guest_view_hack),
411 delegated_frame_host_client_( 412 delegated_frame_host_client_(
412 new FakeDelegatedFrameHostClientAura(this)) { 413 new FakeDelegatedFrameHostClientAura(this)) {
413 InstallDelegatedFrameHostClient( 414 InstallDelegatedFrameHostClient(
414 this, base::WrapUnique(delegated_frame_host_client_)); 415 this, base::WrapUnique(delegated_frame_host_client_));
416 CreateNewRendererCompositorFrameSink();
415 } 417 }
416 418
417 ~FakeRenderWidgetHostViewAura() override {} 419 ~FakeRenderWidgetHostViewAura() override {}
418 420
421 void CreateNewRendererCompositorFrameSink() {
422 cc::mojom::MojoCompositorFrameSinkPtr sink;
423 cc::mojom::MojoCompositorFrameSinkRequest sink_request =
424 mojo::MakeRequest(&sink);
425 cc::mojom::MojoCompositorFrameSinkClientPtr client;
426 cc::mojom::MojoCompositorFrameSinkClientRequest client_request =
427 mojo::MakeRequest(&client);
428 renderer_compositor_frame_sink_ =
429 base::MakeUnique<FakeRendererCompositorFrameSink>(
430 std::move(sink), std::move(client_request));
431 DidCreateNewRendererCompositorFrameSink(
432 renderer_compositor_frame_sink_.get());
433 }
434
419 void DisableResizeLock() { 435 void DisableResizeLock() {
420 delegated_frame_host_client_->DisableResizeLock(); 436 delegated_frame_host_client_->DisableResizeLock();
421 } 437 }
422 438
423 void UseFakeDispatcher() { 439 void UseFakeDispatcher() {
424 dispatcher_ = new FakeWindowEventDispatcher(window()->GetHost()); 440 dispatcher_ = new FakeWindowEventDispatcher(window()->GetHost());
425 std::unique_ptr<aura::WindowEventDispatcher> dispatcher(dispatcher_); 441 std::unique_ptr<aura::WindowEventDispatcher> dispatcher(dispatcher_);
426 aura::test::SetHostDispatcher(window()->GetHost(), std::move(dispatcher)); 442 aura::test::SetHostDispatcher(window()->GetHost(), std::move(dispatcher));
427 } 443 }
428 444
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
470 bool resize_locked() const { 486 bool resize_locked() const {
471 return delegated_frame_host_client_->resize_locked(); 487 return delegated_frame_host_client_->resize_locked();
472 } 488 }
473 bool compositor_locked() const { 489 bool compositor_locked() const {
474 return delegated_frame_host_client_->compositor_locked(); 490 return delegated_frame_host_client_->compositor_locked();
475 } 491 }
476 492
477 gfx::Size last_frame_size_; 493 gfx::Size last_frame_size_;
478 std::unique_ptr<cc::CopyOutputRequest> last_copy_request_; 494 std::unique_ptr<cc::CopyOutputRequest> last_copy_request_;
479 FakeWindowEventDispatcher* dispatcher_; 495 FakeWindowEventDispatcher* dispatcher_;
496 std::unique_ptr<FakeRendererCompositorFrameSink>
497 renderer_compositor_frame_sink_;
480 498
481 private: 499 private:
482 FakeDelegatedFrameHostClientAura* delegated_frame_host_client_; 500 FakeDelegatedFrameHostClientAura* delegated_frame_host_client_;
483 501
484 DISALLOW_COPY_AND_ASSIGN(FakeRenderWidgetHostViewAura); 502 DISALLOW_COPY_AND_ASSIGN(FakeRenderWidgetHostViewAura);
485 }; 503 };
486 504
487 // A layout manager that always resizes a child to the root window size. 505 // A layout manager that always resizes a child to the root window size.
488 class FullscreenLayoutManager : public aura::LayoutManager { 506 class FullscreenLayoutManager : public aura::LayoutManager {
489 public: 507 public:
(...skipping 1554 matching lines...) Expand 10 before | Expand all | Expand 10 after
2044 gfx::Rect()); 2062 gfx::Rect());
2045 view_->SetSize(view_size); 2063 view_->SetSize(view_size);
2046 view_->Show(); 2064 view_->Show();
2047 sink_->ClearMessages(); 2065 sink_->ClearMessages();
2048 2066
2049 // Accumulate some returned resources. This should trigger an IPC. 2067 // Accumulate some returned resources. This should trigger an IPC.
2050 cc::ReturnedResourceArray resources; 2068 cc::ReturnedResourceArray resources;
2051 cc::ReturnedResource resource; 2069 cc::ReturnedResource resource;
2052 resource.id = 1; 2070 resource.id = 1;
2053 resources.push_back(resource); 2071 resources.push_back(resource);
2072 view_->renderer_compositor_frame_sink_->reset_did_receive_ack();
2073 view_->renderer_compositor_frame_sink_->reset_last_reclaimed_resources();
2054 view_->ReclaimResources(resources); 2074 view_->ReclaimResources(resources);
2055 EXPECT_EQ(1u, sink_->message_count()); 2075 EXPECT_FALSE(view_->renderer_compositor_frame_sink_->did_receive_ack());
2056 { 2076 EXPECT_FALSE(
2057 const IPC::Message* msg = sink_->GetMessageAt(0); 2077 view_->renderer_compositor_frame_sink_->last_reclaimed_resources()
2058 EXPECT_EQ(ViewMsg_ReclaimCompositorResources::ID, msg->type()); 2078 .empty());
2059 ViewMsg_ReclaimCompositorResources::Param params;
2060 ViewMsg_ReclaimCompositorResources::Read(msg, &params);
2061 EXPECT_FALSE(std::get<1>(params)); // is_swap_ack
2062 }
2063 } 2079 }
2064 2080
2065 // This test verifies that when the compositor_frame_sink_id changes, the old 2081 // This test verifies that when the compositor_frame_sink_id changes, the old
2066 // resources are not returned. 2082 // resources are not returned.
2067 TEST_F(RenderWidgetHostViewAuraTest, TwoOutputSurfaces) { 2083 TEST_F(RenderWidgetHostViewAuraTest, TwoOutputSurfaces) {
2068 FakeSurfaceObserver manager_observer; 2084 FakeSurfaceObserver manager_observer;
2069 ImageTransportFactory* factory = ImageTransportFactory::GetInstance(); 2085 ImageTransportFactory* factory = ImageTransportFactory::GetInstance();
2070 cc::SurfaceManager* manager = 2086 cc::SurfaceManager* manager =
2071 factory->GetContextFactoryPrivate()->GetSurfaceManager(); 2087 factory->GetContextFactoryPrivate()->GetSurfaceManager();
2072 manager->AddObserver(&manager_observer); 2088 manager->AddObserver(&manager_observer);
(...skipping 11 matching lines...) Expand all
2084 2100
2085 // Submit a frame with resources. 2101 // Submit a frame with resources.
2086 cc::CompositorFrame frame = MakeDelegatedFrame(1.f, view_size, view_rect); 2102 cc::CompositorFrame frame = MakeDelegatedFrame(1.f, view_size, view_rect);
2087 cc::TransferableResource resource; 2103 cc::TransferableResource resource;
2088 resource.id = 1; 2104 resource.id = 1;
2089 frame.resource_list.push_back(resource); 2105 frame.resource_list.push_back(resource);
2090 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId, std::move(frame)); 2106 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId, std::move(frame));
2091 EXPECT_EQ(0u, sink_->message_count()); 2107 EXPECT_EQ(0u, sink_->message_count());
2092 2108
2093 // Signal that a new RendererCompositorFrameSink was created by the renderer. 2109 // Signal that a new RendererCompositorFrameSink was created by the renderer.
2094 view_->DidCreateNewRendererCompositorFrameSink(); 2110 view_->CreateNewRendererCompositorFrameSink();
2095 2111
2096 // Submit another frame. The resources for the previous frame belong to the 2112 // Submit another frame. The resources for the previous frame belong to the
2097 // old RendererCompositorFrameSink and should not be returned. 2113 // old RendererCompositorFrameSink and should not be returned.
2098 view_->SubmitCompositorFrame(CreateLocalSurfaceId(), 2114 view_->SubmitCompositorFrame(CreateLocalSurfaceId(),
2099 MakeDelegatedFrame(1.f, view_size, view_rect)); 2115 MakeDelegatedFrame(1.f, view_size, view_rect));
2100 EXPECT_EQ(0u, sink_->message_count()); 2116 EXPECT_EQ(0u, sink_->message_count());
2101 2117
2102 // Report that the surface is drawn to trigger an ACK. 2118 // Report that the surface is drawn to trigger an ACK.
2119 view_->renderer_compositor_frame_sink_->reset_did_receive_ack();
2103 cc::Surface* surface = manager->GetSurfaceForId(view_->surface_id()); 2120 cc::Surface* surface = manager->GetSurfaceForId(view_->surface_id());
2104 EXPECT_TRUE(surface); 2121 EXPECT_TRUE(surface);
2105 surface->RunDrawCallbacks(); 2122 surface->RunDrawCallbacks();
2106 EXPECT_EQ(1u, sink_->message_count()); 2123 EXPECT_TRUE(view_->renderer_compositor_frame_sink_->did_receive_ack());
2107 {
2108 const IPC::Message* msg = sink_->GetMessageAt(0);
2109 EXPECT_EQ(ViewMsg_ReclaimCompositorResources::ID, msg->type());
2110 ViewMsg_ReclaimCompositorResources::Param params;
2111 ViewMsg_ReclaimCompositorResources::Read(msg, &params);
2112 EXPECT_EQ(true, std::get<1>(params)); // is_swap_ack
2113 }
2114 2124
2115 manager->RemoveObserver(&manager_observer); 2125 manager->RemoveObserver(&manager_observer);
2116 } 2126 }
2117 2127
2118 // Resizing in fullscreen mode should send the up-to-date screen info. 2128 // Resizing in fullscreen mode should send the up-to-date screen info.
2119 // http://crbug.com/324350 2129 // http://crbug.com/324350
2120 TEST_F(RenderWidgetHostViewAuraTest, DISABLED_FullscreenResize) { 2130 TEST_F(RenderWidgetHostViewAuraTest, DISABLED_FullscreenResize) {
2121 aura::Window* root_window = aura_test_helper_->root_window(); 2131 aura::Window* root_window = aura_test_helper_->root_window();
2122 root_window->SetLayoutManager(new FullscreenLayoutManager(root_window)); 2132 root_window->SetLayoutManager(new FullscreenLayoutManager(root_window));
2123 view_->InitAsFullscreen(parent_view_); 2133 view_->InitAsFullscreen(parent_view_);
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
2336 sink_->ClearMessages(); 2346 sink_->ClearMessages();
2337 2347
2338 // Resize renderer again, before receiving a frame. Should not produce a 2348 // Resize renderer again, before receiving a frame. Should not produce a
2339 // Resize message. 2349 // Resize message.
2340 view_->SetSize(size3); 2350 view_->SetSize(size3);
2341 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString()); 2351 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString());
2342 EXPECT_EQ(0u, sink_->message_count()); 2352 EXPECT_EQ(0u, sink_->message_count());
2343 2353
2344 // Receive a frame of the new size, should be skipped and not produce a Resize 2354 // Receive a frame of the new size, should be skipped and not produce a Resize
2345 // message. 2355 // message.
2356 view_->renderer_compositor_frame_sink_->reset_did_receive_ack();
2346 view_->SubmitCompositorFrame( 2357 view_->SubmitCompositorFrame(
2347 kArbitraryLocalSurfaceId, 2358 kArbitraryLocalSurfaceId,
2348 MakeDelegatedFrame(1.f, size3, gfx::Rect(size3))); 2359 MakeDelegatedFrame(1.f, size3, gfx::Rect(size3)));
2349 // Expect the frame ack; 2360 // Expect the frame ack;
2350 EXPECT_EQ(1u, sink_->message_count()); 2361 EXPECT_TRUE(view_->renderer_compositor_frame_sink_->did_receive_ack());
2351 EXPECT_EQ(ViewMsg_ReclaimCompositorResources::ID,
2352 sink_->GetMessageAt(0)->type());
2353 sink_->ClearMessages();
2354 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString()); 2362 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString());
2355 2363
2356 // Receive a frame of the correct size, should not be skipped and, and should 2364 // Receive a frame of the correct size, should not be skipped and, and should
2357 // produce a Resize message after the commit. 2365 // produce a Resize message after the commit.
2366 view_->renderer_compositor_frame_sink_->reset_did_receive_ack();
2358 view_->SubmitCompositorFrame( 2367 view_->SubmitCompositorFrame(
2359 kArbitraryLocalSurfaceId, 2368 kArbitraryLocalSurfaceId,
2360 MakeDelegatedFrame(1.f, size2, gfx::Rect(size2))); 2369 MakeDelegatedFrame(1.f, size2, gfx::Rect(size2)));
2361 cc::SurfaceId surface_id = view_->surface_id(); 2370 cc::SurfaceId surface_id = view_->surface_id();
2362 if (!surface_id.is_valid()) { 2371 if (!surface_id.is_valid()) {
2363 // No frame ack yet. 2372 // No frame ack yet.
2364 EXPECT_EQ(0u, sink_->message_count()); 2373 EXPECT_FALSE(view_->renderer_compositor_frame_sink_->did_receive_ack());
2365 } else { 2374 } else {
2366 // Frame isn't desired size, so early ack. 2375 // Frame isn't desired size, so early ack.
2367 EXPECT_EQ(1u, sink_->message_count()); 2376 EXPECT_TRUE(view_->renderer_compositor_frame_sink_->did_receive_ack());
2368 } 2377 }
2369 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString()); 2378 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString());
2370 2379
2371 // Wait for commit, then we should unlock the compositor and send a Resize 2380 // Wait for commit, then we should unlock the compositor and send a Resize
2372 // message (and a frame ack) 2381 // message (and a frame ack)
2373 ui::DrawWaiterForTest::WaitForCommit( 2382 ui::DrawWaiterForTest::WaitForCommit(
2374 root_window->GetHost()->compositor()); 2383 root_window->GetHost()->compositor());
2375 2384
2376 bool has_resize = false; 2385 bool has_resize = false;
2377 for (uint32_t i = 0; i < sink_->message_count(); ++i) { 2386 for (uint32_t i = 0; i < sink_->message_count(); ++i) {
2378 const IPC::Message* msg = sink_->GetMessageAt(i); 2387 const IPC::Message* msg = sink_->GetMessageAt(i);
2379 switch (msg->type()) { 2388 switch (msg->type()) {
2380 case InputMsg_HandleInputEvent::ID: { 2389 case InputMsg_HandleInputEvent::ID: {
2381 // On some platforms, the call to view_->Show() causes a posted task to 2390 // On some platforms, the call to view_->Show() causes a posted task to
2382 // call 2391 // call
2383 // ui::WindowEventDispatcher::SynthesizeMouseMoveAfterChangeToWindow, 2392 // ui::WindowEventDispatcher::SynthesizeMouseMoveAfterChangeToWindow,
2384 // which the above WaitForCommit may cause to be picked up. Be robust 2393 // which the above WaitForCommit may cause to be picked up. Be robust
2385 // to this extra IPC coming in. 2394 // to this extra IPC coming in.
2386 InputMsg_HandleInputEvent::Param params; 2395 InputMsg_HandleInputEvent::Param params;
2387 InputMsg_HandleInputEvent::Read(msg, &params); 2396 InputMsg_HandleInputEvent::Read(msg, &params);
2388 const blink::WebInputEvent* event = std::get<0>(params); 2397 const blink::WebInputEvent* event = std::get<0>(params);
2389 EXPECT_EQ(blink::WebInputEvent::MouseMove, event->type()); 2398 EXPECT_EQ(blink::WebInputEvent::MouseMove, event->type());
2390 break; 2399 break;
2391 } 2400 }
2392 case ViewMsg_ReclaimCompositorResources::ID:
2393 break;
2394 case ViewMsg_Resize::ID: { 2401 case ViewMsg_Resize::ID: {
2395 EXPECT_FALSE(has_resize); 2402 EXPECT_FALSE(has_resize);
2396 ViewMsg_Resize::Param params; 2403 ViewMsg_Resize::Param params;
2397 ViewMsg_Resize::Read(msg, &params); 2404 ViewMsg_Resize::Read(msg, &params);
2398 EXPECT_EQ(size3.ToString(), std::get<0>(params).new_size.ToString()); 2405 EXPECT_EQ(size3.ToString(), std::get<0>(params).new_size.ToString());
2399 has_resize = true; 2406 has_resize = true;
2400 break; 2407 break;
2401 } 2408 }
2402 default: 2409 default:
2403 ADD_FAILURE() << "Unexpected message " << msg->type(); 2410 ADD_FAILURE() << "Unexpected message " << msg->type();
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
2623 view_->window_->AddObserver(&observer); 2630 view_->window_->AddObserver(&observer);
2624 2631
2625 // Swap a frame. 2632 // Swap a frame.
2626 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect)); 2633 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect));
2627 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId, 2634 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId,
2628 MakeDelegatedFrame(1.f, frame_size, view_rect)); 2635 MakeDelegatedFrame(1.f, frame_size, view_rect));
2629 testing::Mock::VerifyAndClearExpectations(&observer); 2636 testing::Mock::VerifyAndClearExpectations(&observer);
2630 view_->RunOnCompositingDidCommit(); 2637 view_->RunOnCompositingDidCommit();
2631 2638
2632 // Signal that a new RendererCompositorFrameSink was created. 2639 // Signal that a new RendererCompositorFrameSink was created.
2633 view_->DidCreateNewRendererCompositorFrameSink(); 2640 view_->CreateNewRendererCompositorFrameSink();
2634 2641
2635 // Submit a frame from the new RendererCompositorFrameSink. 2642 // Submit a frame from the new RendererCompositorFrameSink.
2636 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect)); 2643 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect));
2637 view_->SubmitCompositorFrame(CreateLocalSurfaceId(), 2644 view_->SubmitCompositorFrame(CreateLocalSurfaceId(),
2638 MakeDelegatedFrame(1.f, frame_size, view_rect)); 2645 MakeDelegatedFrame(1.f, frame_size, view_rect));
2639 testing::Mock::VerifyAndClearExpectations(&observer); 2646 testing::Mock::VerifyAndClearExpectations(&observer);
2640 view_->RunOnCompositingDidCommit(); 2647 view_->RunOnCompositingDidCommit();
2641 2648
2642 // Signal that a new RendererCompositorFrameSink was created. 2649 // Signal that a new RendererCompositorFrameSink was created.
2643 view_->DidCreateNewRendererCompositorFrameSink(); 2650 view_->CreateNewRendererCompositorFrameSink();
2644 2651
2645 // Submit a frame from the new RendererCompositorFrameSink. 2652 // Submit a frame from the new RendererCompositorFrameSink.
2646 view_->SubmitCompositorFrame( 2653 view_->SubmitCompositorFrame(
2647 CreateLocalSurfaceId(), 2654 CreateLocalSurfaceId(),
2648 MakeDelegatedFrame(1.f, gfx::Size(), gfx::Rect())); 2655 MakeDelegatedFrame(1.f, gfx::Size(), gfx::Rect()));
2649 testing::Mock::VerifyAndClearExpectations(&observer); 2656 testing::Mock::VerifyAndClearExpectations(&observer);
2650 view_->RunOnCompositingDidCommit(); 2657 view_->RunOnCompositingDidCommit();
2651 2658
2652 // Signal that a new RendererCompositorFrameSink was created. 2659 // Signal that a new RendererCompositorFrameSink was created.
2653 view_->DidCreateNewRendererCompositorFrameSink(); 2660 view_->CreateNewRendererCompositorFrameSink();
2654 2661
2655 // Swap another frame, with a different surface id. 2662 // Swap another frame, with a different surface id.
2656 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect)); 2663 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect));
2657 view_->SubmitCompositorFrame(CreateLocalSurfaceId(), 2664 view_->SubmitCompositorFrame(CreateLocalSurfaceId(),
2658 MakeDelegatedFrame(1.f, frame_size, view_rect)); 2665 MakeDelegatedFrame(1.f, frame_size, view_rect));
2659 testing::Mock::VerifyAndClearExpectations(&observer); 2666 testing::Mock::VerifyAndClearExpectations(&observer);
2660 view_->RunOnCompositingDidCommit(); 2667 view_->RunOnCompositingDidCommit();
2661 2668
2662 view_->window_->RemoveObserver(&observer); 2669 view_->window_->RemoveObserver(&observer);
2663 } 2670 }
(...skipping 2775 matching lines...) Expand 10 before | Expand all | Expand 10 after
5439 // There is no composition in the beginning. 5446 // There is no composition in the beginning.
5440 EXPECT_FALSE(has_composition_text()); 5447 EXPECT_FALSE(has_composition_text());
5441 SetHasCompositionTextToTrue(); 5448 SetHasCompositionTextToTrue();
5442 view->ImeCancelComposition(); 5449 view->ImeCancelComposition();
5443 // The composition must have been canceled. 5450 // The composition must have been canceled.
5444 EXPECT_FALSE(has_composition_text()); 5451 EXPECT_FALSE(has_composition_text());
5445 } 5452 }
5446 } 5453 }
5447 5454
5448 } // namespace content 5455 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698