Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 "cc/trees/layer_tree_host_impl.h" | 5 #include "cc/trees/layer_tree_host_impl.h" |
| 6 | 6 |
| 7 #include <cmath> | 7 #include <cmath> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 2825 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2836 layer1->SetExpectation(false, false); | 2836 layer1->SetExpectation(false, false); |
| 2837 layer1->set_update_rect(gfx::RectF(layer1->content_bounds())); | 2837 layer1->set_update_rect(gfx::RectF(layer1->content_bounds())); |
| 2838 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); | 2838 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); |
| 2839 host_impl_->DrawLayers(&frame, base::TimeTicks::Now()); | 2839 host_impl_->DrawLayers(&frame, base::TimeTicks::Now()); |
| 2840 EXPECT_TRUE(layer1->quads_appended()); | 2840 EXPECT_TRUE(layer1->quads_appended()); |
| 2841 host_impl_->DidDrawAllLayers(frame); | 2841 host_impl_->DidDrawAllLayers(frame); |
| 2842 } | 2842 } |
| 2843 | 2843 |
| 2844 class LayerTreeHostImplViewportCoveredTest : public LayerTreeHostImplTest { | 2844 class LayerTreeHostImplViewportCoveredTest : public LayerTreeHostImplTest { |
| 2845 public: | 2845 public: |
| 2846 LayerTreeHostImplViewportCoveredTest() : | |
| 2847 gutter_quad_material_(DrawQuad::SOLID_COLOR), | |
| 2848 child_(NULL), | |
| 2849 did_activate_pending_tree_(false) { } | |
|
enne (OOO)
2013/09/03 23:18:26
style nit: {}. Consider running 'git cl format' o
ccameron
2013/09/04 02:36:47
Done.
| |
| 2850 | |
| 2846 void CreateLayerTreeHostImpl(bool always_draw) { | 2851 void CreateLayerTreeHostImpl(bool always_draw) { |
| 2847 LayerTreeSettings settings; | 2852 LayerTreeSettings settings; |
| 2848 settings.minimum_occlusion_tracking_size = gfx::Size(); | 2853 settings.minimum_occlusion_tracking_size = gfx::Size(); |
| 2849 settings.impl_side_painting = true; | 2854 settings.impl_side_painting = true; |
| 2850 host_impl_ = LayerTreeHostImpl::Create( | 2855 host_impl_ = LayerTreeHostImpl::Create( |
| 2851 settings, this, &proxy_, &stats_instrumentation_); | 2856 settings, this, &proxy_, &stats_instrumentation_); |
| 2852 | 2857 |
| 2853 scoped_ptr<FakeOutputSurface> output_surface; | 2858 scoped_ptr<FakeOutputSurface> output_surface; |
| 2854 if (always_draw) | 2859 if (always_draw) |
| 2855 output_surface = FakeOutputSurface::CreateAlwaysDrawAndSwap3d().Pass(); | 2860 output_surface = FakeOutputSurface::CreateAlwaysDrawAndSwap3d().Pass(); |
| (...skipping 24 matching lines...) Expand all Loading... | |
| 2880 child_->SetPosition(layer_rect.origin()); | 2885 child_->SetPosition(layer_rect.origin()); |
| 2881 child_->SetBounds(layer_rect.size()); | 2886 child_->SetBounds(layer_rect.size()); |
| 2882 child_->SetContentBounds(layer_rect.size()); | 2887 child_->SetContentBounds(layer_rect.size()); |
| 2883 child_->SetQuadRect(gfx::Rect(layer_rect.size())); | 2888 child_->SetQuadRect(gfx::Rect(layer_rect.size())); |
| 2884 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); | 2889 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); |
| 2885 | 2890 |
| 2886 LayerTreeHostImpl::FrameData frame; | 2891 LayerTreeHostImpl::FrameData frame; |
| 2887 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); | 2892 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); |
| 2888 ASSERT_EQ(1u, frame.render_passes.size()); | 2893 ASSERT_EQ(1u, frame.render_passes.size()); |
| 2889 | 2894 |
| 2890 size_t num_gutter_quads = 0; | 2895 EXPECT_EQ(0u, CountGutterQuads(frame.render_passes[0]->quad_list)); |
| 2891 for (size_t i = 0; i < frame.render_passes[0]->quad_list.size(); ++i) | |
| 2892 num_gutter_quads += (frame.render_passes[0]->quad_list[i]->material == | |
| 2893 DrawQuad::SOLID_COLOR) ? 1 : 0; | |
| 2894 EXPECT_EQ(0u, num_gutter_quads); | |
| 2895 EXPECT_EQ(1u, frame.render_passes[0]->quad_list.size()); | 2896 EXPECT_EQ(1u, frame.render_passes[0]->quad_list.size()); |
| 2897 ValidateTextureDrawQuads(frame.render_passes[0]->quad_list); | |
| 2896 | 2898 |
| 2897 LayerTestCommon::VerifyQuadsExactlyCoverRect( | 2899 LayerTestCommon::VerifyQuadsExactlyCoverRect( |
| 2898 frame.render_passes[0]->quad_list, gfx::Rect(viewport_size_)); | 2900 frame.render_passes[0]->quad_list, gfx::Rect(viewport_size_)); |
| 2899 host_impl_->DidDrawAllLayers(frame); | 2901 host_impl_->DidDrawAllLayers(frame); |
| 2900 } | 2902 } |
| 2901 | 2903 |
| 2902 // Expect fullscreen gutter rect. | 2904 // Expect fullscreen gutter rect. |
| 2903 void TestEmptyLayer() { | 2905 void TestEmptyLayer() { |
| 2904 gfx::Rect layer_rect(0, 0, 0, 0); | 2906 gfx::Rect layer_rect(0, 0, 0, 0); |
| 2905 child_->SetPosition(layer_rect.origin()); | 2907 child_->SetPosition(layer_rect.origin()); |
| 2906 child_->SetBounds(layer_rect.size()); | 2908 child_->SetBounds(layer_rect.size()); |
| 2907 child_->SetContentBounds(layer_rect.size()); | 2909 child_->SetContentBounds(layer_rect.size()); |
| 2908 child_->SetQuadRect(gfx::Rect(layer_rect.size())); | 2910 child_->SetQuadRect(gfx::Rect(layer_rect.size())); |
| 2909 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); | 2911 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); |
| 2910 | 2912 |
| 2911 LayerTreeHostImpl::FrameData frame; | 2913 LayerTreeHostImpl::FrameData frame; |
| 2912 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); | 2914 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); |
| 2913 ASSERT_EQ(1u, frame.render_passes.size()); | 2915 ASSERT_EQ(1u, frame.render_passes.size()); |
| 2914 | 2916 |
| 2915 size_t num_gutter_quads = 0; | 2917 EXPECT_EQ(1u, CountGutterQuads(frame.render_passes[0]->quad_list)); |
| 2916 for (size_t i = 0; i < frame.render_passes[0]->quad_list.size(); ++i) | |
| 2917 num_gutter_quads += (frame.render_passes[0]->quad_list[i]->material == | |
| 2918 DrawQuad::SOLID_COLOR) ? 1 : 0; | |
| 2919 EXPECT_EQ(1u, num_gutter_quads); | |
| 2920 EXPECT_EQ(1u, frame.render_passes[0]->quad_list.size()); | 2918 EXPECT_EQ(1u, frame.render_passes[0]->quad_list.size()); |
| 2919 ValidateTextureDrawQuads(frame.render_passes[0]->quad_list); | |
| 2921 | 2920 |
| 2922 LayerTestCommon::VerifyQuadsExactlyCoverRect( | 2921 LayerTestCommon::VerifyQuadsExactlyCoverRect( |
| 2923 frame.render_passes[0]->quad_list, gfx::Rect(viewport_size_)); | 2922 frame.render_passes[0]->quad_list, gfx::Rect(viewport_size_)); |
| 2924 host_impl_->DidDrawAllLayers(frame); | 2923 host_impl_->DidDrawAllLayers(frame); |
| 2925 } | 2924 } |
| 2926 | 2925 |
| 2927 // Expect four surrounding gutter rects. | 2926 // Expect four surrounding gutter rects. |
| 2928 void TestLayerInMiddleOfViewport() { | 2927 void TestLayerInMiddleOfViewport() { |
| 2929 gfx::Rect layer_rect(500, 500, 200, 200); | 2928 gfx::Rect layer_rect(500, 500, 200, 200); |
| 2930 child_->SetPosition(layer_rect.origin()); | 2929 child_->SetPosition(layer_rect.origin()); |
| 2931 child_->SetBounds(layer_rect.size()); | 2930 child_->SetBounds(layer_rect.size()); |
| 2932 child_->SetContentBounds(layer_rect.size()); | 2931 child_->SetContentBounds(layer_rect.size()); |
| 2933 child_->SetQuadRect(gfx::Rect(layer_rect.size())); | 2932 child_->SetQuadRect(gfx::Rect(layer_rect.size())); |
| 2934 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); | 2933 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); |
| 2935 | 2934 |
| 2936 LayerTreeHostImpl::FrameData frame; | 2935 LayerTreeHostImpl::FrameData frame; |
| 2937 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); | 2936 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); |
| 2938 ASSERT_EQ(1u, frame.render_passes.size()); | 2937 ASSERT_EQ(1u, frame.render_passes.size()); |
| 2939 | 2938 |
| 2940 size_t num_gutter_quads = 0; | 2939 EXPECT_EQ(4u, CountGutterQuads(frame.render_passes[0]->quad_list)); |
| 2941 for (size_t i = 0; i < frame.render_passes[0]->quad_list.size(); ++i) | |
| 2942 num_gutter_quads += (frame.render_passes[0]->quad_list[i]->material == | |
| 2943 DrawQuad::SOLID_COLOR) ? 1 : 0; | |
| 2944 EXPECT_EQ(4u, num_gutter_quads); | |
| 2945 EXPECT_EQ(5u, frame.render_passes[0]->quad_list.size()); | 2940 EXPECT_EQ(5u, frame.render_passes[0]->quad_list.size()); |
| 2941 ValidateTextureDrawQuads(frame.render_passes[0]->quad_list); | |
| 2946 | 2942 |
| 2947 LayerTestCommon::VerifyQuadsExactlyCoverRect( | 2943 LayerTestCommon::VerifyQuadsExactlyCoverRect( |
| 2948 frame.render_passes[0]->quad_list, gfx::Rect(viewport_size_)); | 2944 frame.render_passes[0]->quad_list, gfx::Rect(viewport_size_)); |
| 2949 host_impl_->DidDrawAllLayers(frame); | 2945 host_impl_->DidDrawAllLayers(frame); |
| 2950 } | 2946 } |
| 2951 | 2947 |
| 2952 // Expect no gutter rects. | 2948 // Expect no gutter rects. |
| 2953 void TestLayerIsLargerThanViewport() { | 2949 void TestLayerIsLargerThanViewport() { |
| 2954 gfx::Rect layer_rect(viewport_size_.width() + 10, | 2950 gfx::Rect layer_rect(viewport_size_.width() + 10, |
| 2955 viewport_size_.height() + 10); | 2951 viewport_size_.height() + 10); |
| 2956 child_->SetPosition(layer_rect.origin()); | 2952 child_->SetPosition(layer_rect.origin()); |
| 2957 child_->SetBounds(layer_rect.size()); | 2953 child_->SetBounds(layer_rect.size()); |
| 2958 child_->SetContentBounds(layer_rect.size()); | 2954 child_->SetContentBounds(layer_rect.size()); |
| 2959 child_->SetQuadRect(gfx::Rect(layer_rect.size())); | 2955 child_->SetQuadRect(gfx::Rect(layer_rect.size())); |
| 2960 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); | 2956 child_->SetQuadVisibleRect(gfx::Rect(layer_rect.size())); |
| 2961 | 2957 |
| 2962 LayerTreeHostImpl::FrameData frame; | 2958 LayerTreeHostImpl::FrameData frame; |
| 2963 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); | 2959 EXPECT_TRUE(host_impl_->PrepareToDraw(&frame, gfx::Rect())); |
| 2964 ASSERT_EQ(1u, frame.render_passes.size()); | 2960 ASSERT_EQ(1u, frame.render_passes.size()); |
| 2965 | 2961 |
| 2966 size_t num_gutter_quads = 0; | 2962 EXPECT_EQ(0u, CountGutterQuads(frame.render_passes[0]->quad_list)); |
| 2967 for (size_t i = 0; i < frame.render_passes[0]->quad_list.size(); ++i) | |
| 2968 num_gutter_quads += (frame.render_passes[0]->quad_list[i]->material == | |
| 2969 DrawQuad::SOLID_COLOR) ? 1 : 0; | |
| 2970 EXPECT_EQ(0u, num_gutter_quads); | |
| 2971 EXPECT_EQ(1u, frame.render_passes[0]->quad_list.size()); | 2963 EXPECT_EQ(1u, frame.render_passes[0]->quad_list.size()); |
| 2964 ValidateTextureDrawQuads(frame.render_passes[0]->quad_list); | |
| 2972 | 2965 |
| 2973 host_impl_->DidDrawAllLayers(frame); | 2966 host_impl_->DidDrawAllLayers(frame); |
| 2974 } | 2967 } |
| 2975 | 2968 |
| 2976 virtual void DidActivatePendingTree() OVERRIDE { | 2969 virtual void DidActivatePendingTree() OVERRIDE { |
| 2977 did_activate_pending_tree_ = true; | 2970 did_activate_pending_tree_ = true; |
| 2978 } | 2971 } |
| 2979 | 2972 |
| 2973 void set_gutter_quad_material(DrawQuad::Material material) { | |
| 2974 gutter_quad_material_ = material; | |
| 2975 } | |
| 2976 void set_gutter_texture_size(gfx::Size gutter_texture_size) { | |
| 2977 gutter_texture_size_ = gutter_texture_size; | |
| 2978 } | |
| 2979 | |
| 2980 protected: | 2980 protected: |
| 2981 size_t CountGutterQuads(const QuadList& quad_list) { | |
| 2982 size_t num_gutter_quads = 0; | |
| 2983 for (size_t i = 0; i < quad_list.size(); ++i) { | |
| 2984 num_gutter_quads += (quad_list[i]->material == | |
| 2985 gutter_quad_material_) ? 1 : 0; | |
| 2986 } | |
| 2987 return num_gutter_quads; | |
| 2988 } | |
| 2989 | |
| 2990 // Make sure that the texture coordinates match their expectations. | |
| 2991 void ValidateTextureDrawQuads(const QuadList& quad_list) { | |
| 2992 for (size_t i = 0; i < quad_list.size(); ++i) { | |
| 2993 if (quad_list[i]->material == DrawQuad::TEXTURE_CONTENT) { | |
|
enne (OOO)
2013/09/03 23:18:26
style nit: early-out with a continue here, rather
ccameron
2013/09/04 02:36:47
Done.
| |
| 2994 TextureDrawQuad* quad = reinterpret_cast<TextureDrawQuad*>( | |
|
enne (OOO)
2013/09/03 23:18:26
TextureDrawQuad::MaterialCast(quad_list[i])
ccameron
2013/09/04 02:36:47
Done.
| |
| 2995 quad_list[i]); | |
| 2996 EXPECT_EQ(quad->uv_top_left.x(), | |
| 2997 quad->rect.x() / | |
| 2998 static_cast<float>(gutter_texture_size_.width())); | |
| 2999 EXPECT_EQ(quad->uv_top_left.y(), | |
| 3000 quad->rect.y() / | |
| 3001 static_cast<float>(gutter_texture_size_.height())); | |
| 3002 EXPECT_EQ(quad->uv_bottom_right.x(), | |
| 3003 (quad->rect.x() + quad->rect.width()) / | |
|
enne (OOO)
2013/09/03 23:18:26
quad->rect.right()
ccameron
2013/09/04 02:36:47
Done.
| |
| 3004 static_cast<float>(gutter_texture_size_.width())); | |
| 3005 EXPECT_EQ(quad->uv_bottom_right.y(), | |
| 3006 (quad->rect.y() + quad->rect.height()) / | |
| 3007 static_cast<float>(gutter_texture_size_.height())); | |
| 3008 } | |
| 3009 } | |
| 3010 } | |
| 3011 | |
| 3012 DrawQuad::Material gutter_quad_material_; | |
| 3013 gfx::Size gutter_texture_size_; | |
| 2981 gfx::Size viewport_size_; | 3014 gfx::Size viewport_size_; |
| 2982 BlendStateCheckLayer* child_; | 3015 BlendStateCheckLayer* child_; |
| 2983 bool did_activate_pending_tree_; | 3016 bool did_activate_pending_tree_; |
| 2984 }; | 3017 }; |
| 2985 | 3018 |
| 2986 TEST_F(LayerTreeHostImplViewportCoveredTest, ViewportCovered) { | 3019 TEST_F(LayerTreeHostImplViewportCoveredTest, ViewportCovered) { |
| 2987 bool always_draw = false; | 3020 bool always_draw = false; |
| 2988 CreateLayerTreeHostImpl(always_draw); | 3021 CreateLayerTreeHostImpl(always_draw); |
| 2989 | 3022 |
| 2990 host_impl_->SetViewportSize(viewport_size_); | 3023 host_impl_->SetViewportSize(viewport_size_); |
| 2991 SetupActiveTreeLayers(); | 3024 SetupActiveTreeLayers(); |
| 2992 TestLayerCoversFullViewport(); | 3025 TestLayerCoversFullViewport(); |
| 2993 TestEmptyLayer(); | 3026 TestEmptyLayer(); |
| 2994 TestLayerInMiddleOfViewport(); | 3027 TestLayerInMiddleOfViewport(); |
| 2995 TestLayerIsLargerThanViewport(); | 3028 TestLayerIsLargerThanViewport(); |
| 2996 } | 3029 } |
| 2997 | 3030 |
| 3031 TEST_F(LayerTreeHostImplViewportCoveredTest, ViewportCoveredOverhangBitmap) { | |
| 3032 bool always_draw = false; | |
| 3033 CreateLayerTreeHostImpl(always_draw); | |
| 3034 | |
| 3035 host_impl_->SetViewportSize(viewport_size_); | |
| 3036 SetupActiveTreeLayers(); | |
| 3037 | |
| 3038 // Specify an overhang bitmap to use. | |
| 3039 scoped_refptr<UIResourceBitmap> ui_resource_bitmap(UIResourceBitmap::Create( | |
| 3040 new uint8_t[4], UIResourceBitmap::RGBA8, gfx::Size(1, 1))); | |
| 3041 UIResourceId ui_resource_id = 12345; | |
| 3042 host_impl_->CreateUIResource(ui_resource_id, ui_resource_bitmap); | |
| 3043 host_impl_->SetOverhangUIResource(ui_resource_id, gfx::Size(32, 32)); | |
| 3044 set_gutter_quad_material(DrawQuad::TEXTURE_CONTENT); | |
| 3045 set_gutter_texture_size(gfx::Size(32, 32)); | |
| 3046 | |
| 3047 TestLayerCoversFullViewport(); | |
| 3048 TestEmptyLayer(); | |
| 3049 TestLayerInMiddleOfViewport(); | |
| 3050 TestLayerIsLargerThanViewport(); | |
| 3051 | |
| 3052 // Change the resource size. | |
| 3053 host_impl_->SetOverhangUIResource(ui_resource_id, gfx::Size(128, 16)); | |
| 3054 set_gutter_texture_size(gfx::Size(128, 16)); | |
| 3055 | |
| 3056 TestLayerCoversFullViewport(); | |
| 3057 TestEmptyLayer(); | |
| 3058 TestLayerInMiddleOfViewport(); | |
| 3059 TestLayerIsLargerThanViewport(); | |
| 3060 } | |
| 3061 | |
| 2998 TEST_F(LayerTreeHostImplViewportCoveredTest, ActiveTreeGrowViewportInvalid) { | 3062 TEST_F(LayerTreeHostImplViewportCoveredTest, ActiveTreeGrowViewportInvalid) { |
| 2999 bool always_draw = true; | 3063 bool always_draw = true; |
| 3000 CreateLayerTreeHostImpl(always_draw); | 3064 CreateLayerTreeHostImpl(always_draw); |
| 3001 | 3065 |
| 3002 // Pending tree to force active_tree size invalid. Not used otherwise. | 3066 // Pending tree to force active_tree size invalid. Not used otherwise. |
| 3003 host_impl_->CreatePendingTree(); | 3067 host_impl_->CreatePendingTree(); |
| 3004 host_impl_->SetViewportSize(viewport_size_); | 3068 host_impl_->SetViewportSize(viewport_size_); |
| 3005 EXPECT_TRUE(host_impl_->active_tree()->ViewportSizeInvalid()); | 3069 EXPECT_TRUE(host_impl_->active_tree()->ViewportSizeInvalid()); |
| 3006 | 3070 |
| 3007 SetupActiveTreeLayers(); | 3071 SetupActiveTreeLayers(); |
| 3008 TestEmptyLayer(); | 3072 TestEmptyLayer(); |
| 3009 TestLayerInMiddleOfViewport(); | 3073 TestLayerInMiddleOfViewport(); |
| 3010 TestLayerIsLargerThanViewport(); | 3074 TestLayerIsLargerThanViewport(); |
| 3011 } | 3075 } |
| 3012 | 3076 |
| 3013 TEST_F(LayerTreeHostImplViewportCoveredTest, ActiveTreeShrinkViewportInvalid) { | 3077 TEST_F(LayerTreeHostImplViewportCoveredTest, ActiveTreeShrinkViewportInvalid) { |
| 3014 bool always_draw = true; | 3078 bool always_draw = true; |
| 3015 CreateLayerTreeHostImpl(always_draw); | 3079 CreateLayerTreeHostImpl(always_draw); |
| 3016 | 3080 |
| 3017 // Set larger viewport and activate it to active tree. | 3081 // Set larger viewport and activate it to active tree. |
| 3018 host_impl_->CreatePendingTree(); | 3082 host_impl_->CreatePendingTree(); |
| 3019 gfx::Size larger_viewport(viewport_size_.width() + 100, | 3083 gfx::Size larger_viewport(viewport_size_.width() + 100, |
| 3020 viewport_size_.height() + 100); | 3084 viewport_size_.height() + 100); |
| 3021 host_impl_->SetViewportSize(larger_viewport); | 3085 host_impl_->SetViewportSize(larger_viewport); |
| 3022 EXPECT_TRUE(host_impl_->active_tree()->ViewportSizeInvalid()); | 3086 EXPECT_TRUE(host_impl_->active_tree()->ViewportSizeInvalid()); |
| 3023 did_activate_pending_tree_ = false; | |
| 3024 host_impl_->ActivatePendingTree(); | 3087 host_impl_->ActivatePendingTree(); |
| 3025 EXPECT_TRUE(did_activate_pending_tree_); | 3088 EXPECT_TRUE(did_activate_pending_tree_); |
| 3026 EXPECT_FALSE(host_impl_->active_tree()->ViewportSizeInvalid()); | 3089 EXPECT_FALSE(host_impl_->active_tree()->ViewportSizeInvalid()); |
| 3027 | 3090 |
| 3028 // Shrink pending tree viewport without activating. | 3091 // Shrink pending tree viewport without activating. |
| 3029 host_impl_->CreatePendingTree(); | 3092 host_impl_->CreatePendingTree(); |
| 3030 host_impl_->SetViewportSize(viewport_size_); | 3093 host_impl_->SetViewportSize(viewport_size_); |
| 3031 EXPECT_TRUE(host_impl_->active_tree()->ViewportSizeInvalid()); | 3094 EXPECT_TRUE(host_impl_->active_tree()->ViewportSizeInvalid()); |
| 3032 | 3095 |
| 3033 SetupActiveTreeLayers(); | 3096 SetupActiveTreeLayers(); |
| (...skipping 3342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 6376 EXPECT_EQ(0u, host_impl_->ResourceIdForUIResource(ui_resource_id)); | 6439 EXPECT_EQ(0u, host_impl_->ResourceIdForUIResource(ui_resource_id)); |
| 6377 EXPECT_EQ(0u, context3d->NumTextures()); | 6440 EXPECT_EQ(0u, context3d->NumTextures()); |
| 6378 | 6441 |
| 6379 // Should not change state for multiple deletion on one UIResourceId | 6442 // Should not change state for multiple deletion on one UIResourceId |
| 6380 host_impl_->DeleteUIResource(ui_resource_id); | 6443 host_impl_->DeleteUIResource(ui_resource_id); |
| 6381 EXPECT_EQ(0u, context3d->NumTextures()); | 6444 EXPECT_EQ(0u, context3d->NumTextures()); |
| 6382 } | 6445 } |
| 6383 | 6446 |
| 6384 } // namespace | 6447 } // namespace |
| 6385 } // namespace cc | 6448 } // namespace cc |
| OLD | NEW |