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

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

Issue 2835403004: Revert "Use MojoCompositorFrameSink in RendererCompositorFrameSink"
Patch Set: Rebased 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"
65 #include "content/test/test_render_view_host.h" 64 #include "content/test/test_render_view_host.h"
66 #include "content/test/test_web_contents.h" 65 #include "content/test/test_web_contents.h"
67 #include "ipc/ipc_message.h" 66 #include "ipc/ipc_message.h"
68 #include "ipc/ipc_test_sink.h" 67 #include "ipc/ipc_test_sink.h"
69 #include "media/base/video_frame.h" 68 #include "media/base/video_frame.h"
70 #include "testing/gmock/include/gmock/gmock.h" 69 #include "testing/gmock/include/gmock/gmock.h"
71 #include "testing/gtest/include/gtest/gtest.h" 70 #include "testing/gtest/include/gtest/gtest.h"
72 #include "ui/aura/client/aura_constants.h" 71 #include "ui/aura/client/aura_constants.h"
73 #include "ui/aura/client/screen_position_client.h" 72 #include "ui/aura/client/screen_position_client.h"
74 #include "ui/aura/client/window_parenting_client.h" 73 #include "ui/aura/client/window_parenting_client.h"
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
407 406
408 class FakeRenderWidgetHostViewAura : public RenderWidgetHostViewAura { 407 class FakeRenderWidgetHostViewAura : public RenderWidgetHostViewAura {
409 public: 408 public:
410 FakeRenderWidgetHostViewAura(RenderWidgetHost* widget, 409 FakeRenderWidgetHostViewAura(RenderWidgetHost* widget,
411 bool is_guest_view_hack) 410 bool is_guest_view_hack)
412 : RenderWidgetHostViewAura(widget, is_guest_view_hack), 411 : RenderWidgetHostViewAura(widget, is_guest_view_hack),
413 delegated_frame_host_client_( 412 delegated_frame_host_client_(
414 new FakeDelegatedFrameHostClientAura(this)) { 413 new FakeDelegatedFrameHostClientAura(this)) {
415 InstallDelegatedFrameHostClient( 414 InstallDelegatedFrameHostClient(
416 this, base::WrapUnique(delegated_frame_host_client_)); 415 this, base::WrapUnique(delegated_frame_host_client_));
417 CreateNewRendererCompositorFrameSink();
418 } 416 }
419 417
420 ~FakeRenderWidgetHostViewAura() override {} 418 ~FakeRenderWidgetHostViewAura() override {}
421 419
422 void CreateNewRendererCompositorFrameSink() {
423 cc::mojom::MojoCompositorFrameSinkPtr sink;
424 cc::mojom::MojoCompositorFrameSinkRequest sink_request =
425 mojo::MakeRequest(&sink);
426 cc::mojom::MojoCompositorFrameSinkClientRequest client_request =
427 mojo::MakeRequest(&renderer_compositor_frame_sink_ptr_);
428 renderer_compositor_frame_sink_ =
429 base::MakeUnique<FakeRendererCompositorFrameSink>(
430 std::move(sink), std::move(client_request));
431 DidCreateNewRendererCompositorFrameSink(
432 renderer_compositor_frame_sink_ptr_.get());
433 }
434
435 void DisableResizeLock() { 420 void DisableResizeLock() {
436 delegated_frame_host_client_->DisableResizeLock(); 421 delegated_frame_host_client_->DisableResizeLock();
437 } 422 }
438 423
439 void UseFakeDispatcher() { 424 void UseFakeDispatcher() {
440 dispatcher_ = new FakeWindowEventDispatcher(window()->GetHost()); 425 dispatcher_ = new FakeWindowEventDispatcher(window()->GetHost());
441 std::unique_ptr<aura::WindowEventDispatcher> dispatcher(dispatcher_); 426 std::unique_ptr<aura::WindowEventDispatcher> dispatcher(dispatcher_);
442 aura::test::SetHostDispatcher(window()->GetHost(), std::move(dispatcher)); 427 aura::test::SetHostDispatcher(window()->GetHost(), std::move(dispatcher));
443 } 428 }
444 429
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
486 bool resize_locked() const { 471 bool resize_locked() const {
487 return delegated_frame_host_client_->resize_locked(); 472 return delegated_frame_host_client_->resize_locked();
488 } 473 }
489 bool compositor_locked() const { 474 bool compositor_locked() const {
490 return delegated_frame_host_client_->compositor_locked(); 475 return delegated_frame_host_client_->compositor_locked();
491 } 476 }
492 477
493 gfx::Size last_frame_size_; 478 gfx::Size last_frame_size_;
494 std::unique_ptr<cc::CopyOutputRequest> last_copy_request_; 479 std::unique_ptr<cc::CopyOutputRequest> last_copy_request_;
495 FakeWindowEventDispatcher* dispatcher_; 480 FakeWindowEventDispatcher* dispatcher_;
496 std::unique_ptr<FakeRendererCompositorFrameSink>
497 renderer_compositor_frame_sink_;
498 481
499 private: 482 private:
500 FakeDelegatedFrameHostClientAura* delegated_frame_host_client_; 483 FakeDelegatedFrameHostClientAura* delegated_frame_host_client_;
501 cc::mojom::MojoCompositorFrameSinkClientPtr
502 renderer_compositor_frame_sink_ptr_;
503 484
504 DISALLOW_COPY_AND_ASSIGN(FakeRenderWidgetHostViewAura); 485 DISALLOW_COPY_AND_ASSIGN(FakeRenderWidgetHostViewAura);
505 }; 486 };
506 487
507 // A layout manager that always resizes a child to the root window size. 488 // A layout manager that always resizes a child to the root window size.
508 class FullscreenLayoutManager : public aura::LayoutManager { 489 class FullscreenLayoutManager : public aura::LayoutManager {
509 public: 490 public:
510 explicit FullscreenLayoutManager(aura::Window* owner) : owner_(owner) {} 491 explicit FullscreenLayoutManager(aura::Window* owner) : owner_(owner) {}
511 ~FullscreenLayoutManager() override {} 492 ~FullscreenLayoutManager() override {}
512 493
(...skipping 1544 matching lines...) Expand 10 before | Expand all | Expand 10 after
2057 gfx::Rect()); 2038 gfx::Rect());
2058 view_->SetSize(view_size); 2039 view_->SetSize(view_size);
2059 view_->Show(); 2040 view_->Show();
2060 sink_->ClearMessages(); 2041 sink_->ClearMessages();
2061 2042
2062 // Accumulate some returned resources. This should trigger an IPC. 2043 // Accumulate some returned resources. This should trigger an IPC.
2063 cc::ReturnedResourceArray resources; 2044 cc::ReturnedResourceArray resources;
2064 cc::ReturnedResource resource; 2045 cc::ReturnedResource resource;
2065 resource.id = 1; 2046 resource.id = 1;
2066 resources.push_back(resource); 2047 resources.push_back(resource);
2067 view_->renderer_compositor_frame_sink_->Reset();
2068 view_->ReclaimResources(resources); 2048 view_->ReclaimResources(resources);
2069 view_->renderer_compositor_frame_sink_->Flush(); 2049 EXPECT_EQ(1u, sink_->message_count());
2070 EXPECT_FALSE(view_->renderer_compositor_frame_sink_->did_receive_ack()); 2050 {
2071 EXPECT_FALSE( 2051 const IPC::Message* msg = sink_->GetMessageAt(0);
2072 view_->renderer_compositor_frame_sink_->last_reclaimed_resources() 2052 EXPECT_EQ(ViewMsg_ReclaimCompositorResources::ID, msg->type());
2073 .empty()); 2053 ViewMsg_ReclaimCompositorResources::Param params;
2054 ViewMsg_ReclaimCompositorResources::Read(msg, &params);
2055 EXPECT_FALSE(std::get<1>(params)); // is_swap_ack
2056 }
2074 } 2057 }
2075 2058
2076 // This test verifies that when the compositor_frame_sink_id changes, the old 2059 // This test verifies that when the compositor_frame_sink_id changes, the old
2077 // resources are not returned. 2060 // resources are not returned.
2078 TEST_F(RenderWidgetHostViewAuraTest, TwoOutputSurfaces) { 2061 TEST_F(RenderWidgetHostViewAuraTest, TwoOutputSurfaces) {
2079 FakeSurfaceObserver manager_observer; 2062 FakeSurfaceObserver manager_observer;
2080 ImageTransportFactory* factory = ImageTransportFactory::GetInstance(); 2063 ImageTransportFactory* factory = ImageTransportFactory::GetInstance();
2081 cc::SurfaceManager* manager = 2064 cc::SurfaceManager* manager =
2082 factory->GetContextFactoryPrivate()->GetSurfaceManager(); 2065 factory->GetContextFactoryPrivate()->GetSurfaceManager();
2083 manager->AddObserver(&manager_observer); 2066 manager->AddObserver(&manager_observer);
(...skipping 11 matching lines...) Expand all
2095 2078
2096 // Submit a frame with resources. 2079 // Submit a frame with resources.
2097 cc::CompositorFrame frame = MakeDelegatedFrame(1.f, view_size, view_rect); 2080 cc::CompositorFrame frame = MakeDelegatedFrame(1.f, view_size, view_rect);
2098 cc::TransferableResource resource; 2081 cc::TransferableResource resource;
2099 resource.id = 1; 2082 resource.id = 1;
2100 frame.resource_list.push_back(resource); 2083 frame.resource_list.push_back(resource);
2101 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId, std::move(frame)); 2084 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId, std::move(frame));
2102 EXPECT_EQ(0u, sink_->message_count()); 2085 EXPECT_EQ(0u, sink_->message_count());
2103 2086
2104 // Signal that a new RendererCompositorFrameSink was created by the renderer. 2087 // Signal that a new RendererCompositorFrameSink was created by the renderer.
2105 view_->CreateNewRendererCompositorFrameSink(); 2088 view_->DidCreateNewRendererCompositorFrameSink();
2106 2089
2107 // Submit another frame. The resources for the previous frame belong to the 2090 // Submit another frame. The resources for the previous frame belong to the
2108 // old RendererCompositorFrameSink and should not be returned. 2091 // old RendererCompositorFrameSink and should not be returned.
2109 view_->SubmitCompositorFrame(CreateLocalSurfaceId(), 2092 view_->SubmitCompositorFrame(CreateLocalSurfaceId(),
2110 MakeDelegatedFrame(1.f, view_size, view_rect)); 2093 MakeDelegatedFrame(1.f, view_size, view_rect));
2111 EXPECT_EQ(0u, sink_->message_count()); 2094 EXPECT_EQ(0u, sink_->message_count());
2112 2095
2113 // Report that the surface is drawn to trigger an ACK. 2096 // Report that the surface is drawn to trigger an ACK.
2114 view_->renderer_compositor_frame_sink_->Reset();
2115 cc::Surface* surface = manager->GetSurfaceForId(view_->surface_id()); 2097 cc::Surface* surface = manager->GetSurfaceForId(view_->surface_id());
2116 EXPECT_TRUE(surface); 2098 EXPECT_TRUE(surface);
2117 surface->RunDrawCallback(); 2099 surface->RunDrawCallback();
2118 view_->renderer_compositor_frame_sink_->Flush(); 2100 EXPECT_EQ(1u, sink_->message_count());
2119 EXPECT_TRUE(view_->renderer_compositor_frame_sink_->did_receive_ack()); 2101 {
2102 const IPC::Message* msg = sink_->GetMessageAt(0);
2103 EXPECT_EQ(ViewMsg_ReclaimCompositorResources::ID, msg->type());
2104 ViewMsg_ReclaimCompositorResources::Param params;
2105 ViewMsg_ReclaimCompositorResources::Read(msg, &params);
2106 EXPECT_EQ(true, std::get<1>(params)); // is_swap_ack
2107 }
2120 2108
2121 manager->RemoveObserver(&manager_observer); 2109 manager->RemoveObserver(&manager_observer);
2122 } 2110 }
2123 2111
2124 // Resizing in fullscreen mode should send the up-to-date screen info. 2112 // Resizing in fullscreen mode should send the up-to-date screen info.
2125 // http://crbug.com/324350 2113 // http://crbug.com/324350
2126 TEST_F(RenderWidgetHostViewAuraTest, DISABLED_FullscreenResize) { 2114 TEST_F(RenderWidgetHostViewAuraTest, DISABLED_FullscreenResize) {
2127 aura::Window* root_window = aura_test_helper_->root_window(); 2115 aura::Window* root_window = aura_test_helper_->root_window();
2128 root_window->SetLayoutManager(new FullscreenLayoutManager(root_window)); 2116 root_window->SetLayoutManager(new FullscreenLayoutManager(root_window));
2129 view_->InitAsFullscreen(parent_view_); 2117 view_->InitAsFullscreen(parent_view_);
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
2342 sink_->ClearMessages(); 2330 sink_->ClearMessages();
2343 2331
2344 // Resize renderer again, before receiving a frame. Should not produce a 2332 // Resize renderer again, before receiving a frame. Should not produce a
2345 // Resize message. 2333 // Resize message.
2346 view_->SetSize(size3); 2334 view_->SetSize(size3);
2347 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString()); 2335 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString());
2348 EXPECT_EQ(0u, sink_->message_count()); 2336 EXPECT_EQ(0u, sink_->message_count());
2349 2337
2350 // Receive a frame of the new size, should be skipped and not produce a Resize 2338 // Receive a frame of the new size, should be skipped and not produce a Resize
2351 // message. 2339 // message.
2352 view_->renderer_compositor_frame_sink_->Reset();
2353 view_->SubmitCompositorFrame( 2340 view_->SubmitCompositorFrame(
2354 kArbitraryLocalSurfaceId, 2341 kArbitraryLocalSurfaceId,
2355 MakeDelegatedFrame(1.f, size3, gfx::Rect(size3))); 2342 MakeDelegatedFrame(1.f, size3, gfx::Rect(size3)));
2356 view_->renderer_compositor_frame_sink_->Flush();
2357 // Expect the frame ack; 2343 // Expect the frame ack;
2358 EXPECT_TRUE(view_->renderer_compositor_frame_sink_->did_receive_ack()); 2344 EXPECT_EQ(1u, sink_->message_count());
2345 EXPECT_EQ(ViewMsg_ReclaimCompositorResources::ID,
2346 sink_->GetMessageAt(0)->type());
2347 sink_->ClearMessages();
2359 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString()); 2348 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString());
2360 2349
2361 // Receive a frame of the correct size, should not be skipped and, and should 2350 // Receive a frame of the correct size, should not be skipped and, and should
2362 // produce a Resize message after the commit. 2351 // produce a Resize message after the commit.
2363 view_->renderer_compositor_frame_sink_->Reset();
2364 view_->SubmitCompositorFrame( 2352 view_->SubmitCompositorFrame(
2365 kArbitraryLocalSurfaceId, 2353 kArbitraryLocalSurfaceId,
2366 MakeDelegatedFrame(1.f, size2, gfx::Rect(size2))); 2354 MakeDelegatedFrame(1.f, size2, gfx::Rect(size2)));
2367 view_->renderer_compositor_frame_sink_->Flush();
2368 cc::SurfaceId surface_id = view_->surface_id(); 2355 cc::SurfaceId surface_id = view_->surface_id();
2369 if (!surface_id.is_valid()) { 2356 if (!surface_id.is_valid()) {
2370 // No frame ack yet. 2357 // No frame ack yet.
2371 EXPECT_FALSE(view_->renderer_compositor_frame_sink_->did_receive_ack()); 2358 EXPECT_EQ(0u, sink_->message_count());
2372 } else { 2359 } else {
2373 // Frame isn't desired size, so early ack. 2360 // Frame isn't desired size, so early ack.
2374 EXPECT_TRUE(view_->renderer_compositor_frame_sink_->did_receive_ack()); 2361 EXPECT_EQ(1u, sink_->message_count());
2375 } 2362 }
2376 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString()); 2363 EXPECT_EQ(size2.ToString(), view_->GetRequestedRendererSize().ToString());
2377 2364
2378 // Wait for commit, then we should unlock the compositor and send a Resize 2365 // Wait for commit, then we should unlock the compositor and send a Resize
2379 // message (and a frame ack) 2366 // message (and a frame ack)
2380 ui::DrawWaiterForTest::WaitForCommit( 2367 ui::DrawWaiterForTest::WaitForCommit(
2381 root_window->GetHost()->compositor()); 2368 root_window->GetHost()->compositor());
2382 2369
2383 bool has_resize = false; 2370 bool has_resize = false;
2384 for (uint32_t i = 0; i < sink_->message_count(); ++i) { 2371 for (uint32_t i = 0; i < sink_->message_count(); ++i) {
2385 const IPC::Message* msg = sink_->GetMessageAt(i); 2372 const IPC::Message* msg = sink_->GetMessageAt(i);
2386 switch (msg->type()) { 2373 switch (msg->type()) {
2387 case InputMsg_HandleInputEvent::ID: { 2374 case InputMsg_HandleInputEvent::ID: {
2388 // On some platforms, the call to view_->Show() causes a posted task to 2375 // On some platforms, the call to view_->Show() causes a posted task to
2389 // call 2376 // call
2390 // ui::WindowEventDispatcher::SynthesizeMouseMoveAfterChangeToWindow, 2377 // ui::WindowEventDispatcher::SynthesizeMouseMoveAfterChangeToWindow,
2391 // which the above WaitForCommit may cause to be picked up. Be robust 2378 // which the above WaitForCommit may cause to be picked up. Be robust
2392 // to this extra IPC coming in. 2379 // to this extra IPC coming in.
2393 InputMsg_HandleInputEvent::Param params; 2380 InputMsg_HandleInputEvent::Param params;
2394 InputMsg_HandleInputEvent::Read(msg, &params); 2381 InputMsg_HandleInputEvent::Read(msg, &params);
2395 const blink::WebInputEvent* event = std::get<0>(params); 2382 const blink::WebInputEvent* event = std::get<0>(params);
2396 EXPECT_EQ(blink::WebInputEvent::kMouseMove, event->GetType()); 2383 EXPECT_EQ(blink::WebInputEvent::kMouseMove, event->GetType());
2397 break; 2384 break;
2398 } 2385 }
2386 case ViewMsg_ReclaimCompositorResources::ID:
2387 break;
2399 case ViewMsg_Resize::ID: { 2388 case ViewMsg_Resize::ID: {
2400 EXPECT_FALSE(has_resize); 2389 EXPECT_FALSE(has_resize);
2401 ViewMsg_Resize::Param params; 2390 ViewMsg_Resize::Param params;
2402 ViewMsg_Resize::Read(msg, &params); 2391 ViewMsg_Resize::Read(msg, &params);
2403 EXPECT_EQ(size3.ToString(), std::get<0>(params).new_size.ToString()); 2392 EXPECT_EQ(size3.ToString(), std::get<0>(params).new_size.ToString());
2404 has_resize = true; 2393 has_resize = true;
2405 break; 2394 break;
2406 } 2395 }
2407 default: 2396 default:
2408 ADD_FAILURE() << "Unexpected message " << msg->type(); 2397 ADD_FAILURE() << "Unexpected message " << msg->type();
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after
2677 view_->window_->AddObserver(&observer); 2666 view_->window_->AddObserver(&observer);
2678 2667
2679 // Swap a frame. 2668 // Swap a frame.
2680 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect)); 2669 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect));
2681 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId, 2670 view_->SubmitCompositorFrame(kArbitraryLocalSurfaceId,
2682 MakeDelegatedFrame(1.f, frame_size, view_rect)); 2671 MakeDelegatedFrame(1.f, frame_size, view_rect));
2683 testing::Mock::VerifyAndClearExpectations(&observer); 2672 testing::Mock::VerifyAndClearExpectations(&observer);
2684 view_->RunOnCompositingDidCommit(); 2673 view_->RunOnCompositingDidCommit();
2685 2674
2686 // Signal that a new RendererCompositorFrameSink was created. 2675 // Signal that a new RendererCompositorFrameSink was created.
2687 view_->CreateNewRendererCompositorFrameSink(); 2676 view_->DidCreateNewRendererCompositorFrameSink();
2688 2677
2689 // Submit a frame from the new RendererCompositorFrameSink. 2678 // Submit a frame from the new RendererCompositorFrameSink.
2690 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect)); 2679 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect));
2691 view_->SubmitCompositorFrame(CreateLocalSurfaceId(), 2680 view_->SubmitCompositorFrame(CreateLocalSurfaceId(),
2692 MakeDelegatedFrame(1.f, frame_size, view_rect)); 2681 MakeDelegatedFrame(1.f, frame_size, view_rect));
2693 testing::Mock::VerifyAndClearExpectations(&observer); 2682 testing::Mock::VerifyAndClearExpectations(&observer);
2694 view_->RunOnCompositingDidCommit(); 2683 view_->RunOnCompositingDidCommit();
2695 2684
2696 // Signal that a new RendererCompositorFrameSink was created. 2685 // Signal that a new RendererCompositorFrameSink was created.
2697 view_->CreateNewRendererCompositorFrameSink(); 2686 view_->DidCreateNewRendererCompositorFrameSink();
2698 2687
2699 // Submit a frame from the new RendererCompositorFrameSink. 2688 // Submit a frame from the new RendererCompositorFrameSink.
2700 view_->SubmitCompositorFrame( 2689 view_->SubmitCompositorFrame(
2701 CreateLocalSurfaceId(), 2690 CreateLocalSurfaceId(),
2702 MakeDelegatedFrame(1.f, gfx::Size(), gfx::Rect())); 2691 MakeDelegatedFrame(1.f, gfx::Size(), gfx::Rect()));
2703 testing::Mock::VerifyAndClearExpectations(&observer); 2692 testing::Mock::VerifyAndClearExpectations(&observer);
2704 view_->RunOnCompositingDidCommit(); 2693 view_->RunOnCompositingDidCommit();
2705 2694
2706 // Signal that a new RendererCompositorFrameSink was created. 2695 // Signal that a new RendererCompositorFrameSink was created.
2707 view_->CreateNewRendererCompositorFrameSink(); 2696 view_->DidCreateNewRendererCompositorFrameSink();
2708 2697
2709 // Swap another frame, with a different surface id. 2698 // Swap another frame, with a different surface id.
2710 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect)); 2699 EXPECT_CALL(observer, OnDelegatedFrameDamage(view_->window_, view_rect));
2711 view_->SubmitCompositorFrame(CreateLocalSurfaceId(), 2700 view_->SubmitCompositorFrame(CreateLocalSurfaceId(),
2712 MakeDelegatedFrame(1.f, frame_size, view_rect)); 2701 MakeDelegatedFrame(1.f, frame_size, view_rect));
2713 testing::Mock::VerifyAndClearExpectations(&observer); 2702 testing::Mock::VerifyAndClearExpectations(&observer);
2714 view_->RunOnCompositingDidCommit(); 2703 view_->RunOnCompositingDidCommit();
2715 2704
2716 view_->window_->RemoveObserver(&observer); 2705 view_->window_->RemoveObserver(&observer);
2717 } 2706 }
(...skipping 2775 matching lines...) Expand 10 before | Expand all | Expand 10 after
5493 // There is no composition in the beginning. 5482 // There is no composition in the beginning.
5494 EXPECT_FALSE(has_composition_text()); 5483 EXPECT_FALSE(has_composition_text());
5495 SetHasCompositionTextToTrue(); 5484 SetHasCompositionTextToTrue();
5496 view->ImeCancelComposition(); 5485 view->ImeCancelComposition();
5497 // The composition must have been canceled. 5486 // The composition must have been canceled.
5498 EXPECT_FALSE(has_composition_text()); 5487 EXPECT_FALSE(has_composition_text());
5499 } 5488 }
5500 } 5489 }
5501 5490
5502 } // namespace content 5491 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698