OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/input/top_controls_manager.h" | 5 #include "cc/input/browser_controls_offset_manager.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <cmath> | 8 #include <cmath> |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
11 #include "base/logging.h" | 11 #include "base/logging.h" |
12 #include "base/time/time.h" | 12 #include "base/time/time.h" |
13 #include "cc/input/top_controls_manager_client.h" | 13 #include "cc/input/browser_controls_offset_manager_client.h" |
14 #include "cc/layers/layer_impl.h" | 14 #include "cc/layers/layer_impl.h" |
15 #include "cc/test/fake_impl_task_runner_provider.h" | 15 #include "cc/test/fake_impl_task_runner_provider.h" |
16 #include "cc/test/fake_layer_tree_host_impl.h" | 16 #include "cc/test/fake_layer_tree_host_impl.h" |
17 #include "cc/test/test_shared_bitmap_manager.h" | 17 #include "cc/test/test_shared_bitmap_manager.h" |
18 #include "cc/test/test_task_graph_runner.h" | 18 #include "cc/test/test_task_graph_runner.h" |
19 #include "cc/trees/layer_tree_impl.h" | 19 #include "cc/trees/layer_tree_impl.h" |
20 #include "testing/gtest/include/gtest/gtest.h" | 20 #include "testing/gtest/include/gtest/gtest.h" |
21 #include "ui/gfx/geometry/vector2d_f.h" | 21 #include "ui/gfx/geometry/vector2d_f.h" |
22 | 22 |
23 namespace cc { | 23 namespace cc { |
24 namespace { | 24 namespace { |
25 | 25 |
26 class MockTopControlsManagerClient : public TopControlsManagerClient { | 26 class MockBrowserControlsOffsetManagerClient |
| 27 : public BrowserControlsOffsetManagerClient { |
27 public: | 28 public: |
28 MockTopControlsManagerClient(float top_controls_height, | 29 MockBrowserControlsOffsetManagerClient(float top_controls_height, |
29 float top_controls_show_threshold, | 30 float browser_controls_show_threshold, |
30 float top_controls_hide_threshold) | 31 float browser_controls_hide_threshold) |
31 : host_impl_(&task_runner_provider_, | 32 : host_impl_(&task_runner_provider_, |
32 &shared_bitmap_manager_, | 33 &shared_bitmap_manager_, |
33 &task_graph_runner_), | 34 &task_graph_runner_), |
34 redraw_needed_(false), | 35 redraw_needed_(false), |
35 update_draw_properties_needed_(false), | 36 update_draw_properties_needed_(false), |
36 bottom_controls_height_(0.f), | 37 bottom_controls_height_(0.f), |
37 top_controls_shown_ratio_(1.f), | 38 top_controls_shown_ratio_(1.f), |
38 top_controls_height_(top_controls_height), | 39 top_controls_height_(top_controls_height), |
39 top_controls_show_threshold_(top_controls_show_threshold), | 40 browser_controls_show_threshold_(browser_controls_show_threshold), |
40 top_controls_hide_threshold_(top_controls_hide_threshold) { | 41 browser_controls_hide_threshold_(browser_controls_hide_threshold) { |
41 active_tree_ = base::MakeUnique<LayerTreeImpl>( | 42 active_tree_ = base::MakeUnique<LayerTreeImpl>( |
42 &host_impl_, new SyncedProperty<ScaleGroup>, new SyncedTopControls, | 43 &host_impl_, new SyncedProperty<ScaleGroup>, new SyncedBrowserControls, |
43 new SyncedElasticOverscroll); | 44 new SyncedElasticOverscroll); |
44 root_scroll_layer_ = LayerImpl::Create(active_tree_.get(), 1); | 45 root_scroll_layer_ = LayerImpl::Create(active_tree_.get(), 1); |
45 } | 46 } |
46 | 47 |
47 ~MockTopControlsManagerClient() override {} | 48 ~MockBrowserControlsOffsetManagerClient() override {} |
48 | 49 |
49 void DidChangeTopControlsPosition() override { | 50 void DidChangeBrowserControlsPosition() override { |
50 redraw_needed_ = true; | 51 redraw_needed_ = true; |
51 update_draw_properties_needed_ = true; | 52 update_draw_properties_needed_ = true; |
52 } | 53 } |
53 | 54 |
54 bool HaveRootScrollLayer() const override { return true; } | 55 bool HaveRootScrollLayer() const override { return true; } |
55 | 56 |
56 float BottomControlsHeight() const override { | 57 float BottomControlsHeight() const override { |
57 return bottom_controls_height_; | 58 return bottom_controls_height_; |
58 } | 59 } |
59 | 60 |
60 float TopControlsHeight() const override { return top_controls_height_; } | 61 float TopControlsHeight() const override { return top_controls_height_; } |
61 | 62 |
62 void SetCurrentTopControlsShownRatio(float ratio) override { | 63 void SetCurrentBrowserControlsShownRatio(float ratio) override { |
63 ASSERT_FALSE(std::isnan(ratio)); | 64 ASSERT_FALSE(std::isnan(ratio)); |
64 ASSERT_FALSE(ratio == std::numeric_limits<float>::infinity()); | 65 ASSERT_FALSE(ratio == std::numeric_limits<float>::infinity()); |
65 ASSERT_FALSE(ratio == -std::numeric_limits<float>::infinity()); | 66 ASSERT_FALSE(ratio == -std::numeric_limits<float>::infinity()); |
66 ratio = std::max(ratio, 0.f); | 67 ratio = std::max(ratio, 0.f); |
67 ratio = std::min(ratio, 1.f); | 68 ratio = std::min(ratio, 1.f); |
68 top_controls_shown_ratio_ = ratio; | 69 top_controls_shown_ratio_ = ratio; |
69 } | 70 } |
70 | 71 |
71 float CurrentTopControlsShownRatio() const override { | 72 float CurrentBrowserControlsShownRatio() const override { |
72 return top_controls_shown_ratio_; | 73 return top_controls_shown_ratio_; |
73 } | 74 } |
74 | 75 |
75 LayerImpl* rootScrollLayer() { | 76 LayerImpl* rootScrollLayer() { return root_scroll_layer_.get(); } |
76 return root_scroll_layer_.get(); | |
77 } | |
78 | 77 |
79 TopControlsManager* manager() { | 78 BrowserControlsOffsetManager* manager() { |
80 if (!manager_) { | 79 if (!manager_) { |
81 manager_ = TopControlsManager::Create(this, | 80 manager_ = BrowserControlsOffsetManager::Create( |
82 top_controls_show_threshold_, | 81 this, browser_controls_show_threshold_, |
83 top_controls_hide_threshold_); | 82 browser_controls_hide_threshold_); |
84 } | 83 } |
85 return manager_.get(); | 84 return manager_.get(); |
86 } | 85 } |
87 | 86 |
88 void SetTopControlsHeight(float height) { top_controls_height_ = height; } | 87 void SetBrowserControlsHeight(float height) { top_controls_height_ = height; } |
89 | 88 |
90 void SetBottomControlsHeight(float height) { | 89 void SetBottomControlsHeight(float height) { |
91 bottom_controls_height_ = height; | 90 bottom_controls_height_ = height; |
92 } | 91 } |
93 | 92 |
94 private: | 93 private: |
95 FakeImplTaskRunnerProvider task_runner_provider_; | 94 FakeImplTaskRunnerProvider task_runner_provider_; |
96 TestSharedBitmapManager shared_bitmap_manager_; | 95 TestSharedBitmapManager shared_bitmap_manager_; |
97 TestTaskGraphRunner task_graph_runner_; | 96 TestTaskGraphRunner task_graph_runner_; |
98 FakeLayerTreeHostImpl host_impl_; | 97 FakeLayerTreeHostImpl host_impl_; |
99 std::unique_ptr<LayerTreeImpl> active_tree_; | 98 std::unique_ptr<LayerTreeImpl> active_tree_; |
100 std::unique_ptr<LayerImpl> root_scroll_layer_; | 99 std::unique_ptr<LayerImpl> root_scroll_layer_; |
101 std::unique_ptr<TopControlsManager> manager_; | 100 std::unique_ptr<BrowserControlsOffsetManager> manager_; |
102 bool redraw_needed_; | 101 bool redraw_needed_; |
103 bool update_draw_properties_needed_; | 102 bool update_draw_properties_needed_; |
104 | 103 |
105 float bottom_controls_height_; | 104 float bottom_controls_height_; |
106 float top_controls_shown_ratio_; | 105 float top_controls_shown_ratio_; |
107 float top_controls_height_; | 106 float top_controls_height_; |
108 float top_controls_show_threshold_; | 107 float browser_controls_show_threshold_; |
109 float top_controls_hide_threshold_; | 108 float browser_controls_hide_threshold_; |
110 }; | 109 }; |
111 | 110 |
112 TEST(TopControlsManagerTest, EnsureScrollThresholdApplied) { | 111 TEST(BrowserControlsOffsetManagerTest, EnsureScrollThresholdApplied) { |
113 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 112 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
114 TopControlsManager* manager = client.manager(); | 113 BrowserControlsOffsetManager* manager = client.manager(); |
115 | 114 |
116 manager->ScrollBegin(); | 115 manager->ScrollBegin(); |
117 | 116 |
118 // Scroll down to hide the controls entirely. | 117 // Scroll down to hide the controls entirely. |
119 manager->ScrollBy(gfx::Vector2dF(0.f, 30.f)); | 118 manager->ScrollBy(gfx::Vector2dF(0.f, 30.f)); |
120 EXPECT_FLOAT_EQ(-30.f, manager->ControlsTopOffset()); | 119 EXPECT_FLOAT_EQ(-30.f, manager->ControlsTopOffset()); |
121 | 120 |
122 manager->ScrollBy(gfx::Vector2dF(0.f, 30.f)); | 121 manager->ScrollBy(gfx::Vector2dF(0.f, 30.f)); |
123 EXPECT_FLOAT_EQ(-60.f, manager->ControlsTopOffset()); | 122 EXPECT_FLOAT_EQ(-60.f, manager->ControlsTopOffset()); |
124 | 123 |
(...skipping 21 matching lines...) Expand all Loading... |
146 manager->ScrollBy(gfx::Vector2dF(0.f, -100.f)); | 145 manager->ScrollBy(gfx::Vector2dF(0.f, -100.f)); |
147 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 146 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
148 | 147 |
149 // See that scrolling down the page now will result in the controls hiding. | 148 // See that scrolling down the page now will result in the controls hiding. |
150 manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); | 149 manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); |
151 EXPECT_FLOAT_EQ(-20.f, manager->ControlsTopOffset()); | 150 EXPECT_FLOAT_EQ(-20.f, manager->ControlsTopOffset()); |
152 | 151 |
153 manager->ScrollEnd(); | 152 manager->ScrollEnd(); |
154 } | 153 } |
155 | 154 |
156 TEST(TopControlsManagerTest, PartialShownHideAnimation) { | 155 TEST(BrowserControlsOffsetManagerTest, PartialShownHideAnimation) { |
157 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 156 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
158 TopControlsManager* manager = client.manager(); | 157 BrowserControlsOffsetManager* manager = client.manager(); |
159 manager->ScrollBegin(); | 158 manager->ScrollBegin(); |
160 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); | 159 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); |
161 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 160 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
162 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 161 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
163 manager->ScrollEnd(); | 162 manager->ScrollEnd(); |
164 | 163 |
165 manager->ScrollBegin(); | 164 manager->ScrollBegin(); |
166 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); | 165 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); |
167 EXPECT_FLOAT_EQ(-85.f, manager->ControlsTopOffset()); | 166 EXPECT_FLOAT_EQ(-85.f, manager->ControlsTopOffset()); |
168 EXPECT_FLOAT_EQ(15.f, manager->ContentTopOffset()); | 167 EXPECT_FLOAT_EQ(15.f, manager->ContentTopOffset()); |
169 manager->ScrollEnd(); | 168 manager->ScrollEnd(); |
170 | 169 |
171 EXPECT_TRUE(manager->has_animation()); | 170 EXPECT_TRUE(manager->has_animation()); |
172 | 171 |
173 base::TimeTicks time = base::TimeTicks::Now(); | 172 base::TimeTicks time = base::TimeTicks::Now(); |
174 float previous; | 173 float previous; |
175 while (manager->has_animation()) { | 174 while (manager->has_animation()) { |
176 previous = manager->TopControlsShownRatio(); | 175 previous = manager->TopControlsShownRatio(); |
177 time = base::TimeDelta::FromMicroseconds(100) + time; | 176 time = base::TimeDelta::FromMicroseconds(100) + time; |
178 manager->Animate(time); | 177 manager->Animate(time); |
179 EXPECT_LT(manager->TopControlsShownRatio(), previous); | 178 EXPECT_LT(manager->TopControlsShownRatio(), previous); |
180 } | 179 } |
181 EXPECT_FALSE(manager->has_animation()); | 180 EXPECT_FALSE(manager->has_animation()); |
182 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 181 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
183 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 182 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
184 } | 183 } |
185 | 184 |
186 TEST(TopControlsManagerTest, PartialShownShowAnimation) { | 185 TEST(BrowserControlsOffsetManagerTest, PartialShownShowAnimation) { |
187 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 186 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
188 TopControlsManager* manager = client.manager(); | 187 BrowserControlsOffsetManager* manager = client.manager(); |
189 manager->ScrollBegin(); | 188 manager->ScrollBegin(); |
190 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); | 189 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); |
191 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 190 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
192 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 191 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
193 manager->ScrollEnd(); | 192 manager->ScrollEnd(); |
194 | 193 |
195 manager->ScrollBegin(); | 194 manager->ScrollBegin(); |
196 manager->ScrollBy(gfx::Vector2dF(0.f, -70.f)); | 195 manager->ScrollBy(gfx::Vector2dF(0.f, -70.f)); |
197 EXPECT_FLOAT_EQ(-30.f, manager->ControlsTopOffset()); | 196 EXPECT_FLOAT_EQ(-30.f, manager->ControlsTopOffset()); |
198 EXPECT_FLOAT_EQ(70.f, manager->ContentTopOffset()); | 197 EXPECT_FLOAT_EQ(70.f, manager->ContentTopOffset()); |
199 manager->ScrollEnd(); | 198 manager->ScrollEnd(); |
200 | 199 |
201 EXPECT_TRUE(manager->has_animation()); | 200 EXPECT_TRUE(manager->has_animation()); |
202 | 201 |
203 base::TimeTicks time = base::TimeTicks::Now(); | 202 base::TimeTicks time = base::TimeTicks::Now(); |
204 float previous; | 203 float previous; |
205 while (manager->has_animation()) { | 204 while (manager->has_animation()) { |
206 previous = manager->TopControlsShownRatio(); | 205 previous = manager->TopControlsShownRatio(); |
207 time = base::TimeDelta::FromMicroseconds(100) + time; | 206 time = base::TimeDelta::FromMicroseconds(100) + time; |
208 manager->Animate(time); | 207 manager->Animate(time); |
209 EXPECT_GT(manager->TopControlsShownRatio(), previous); | 208 EXPECT_GT(manager->TopControlsShownRatio(), previous); |
210 } | 209 } |
211 EXPECT_FALSE(manager->has_animation()); | 210 EXPECT_FALSE(manager->has_animation()); |
212 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 211 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
213 EXPECT_FLOAT_EQ(100.f, manager->ContentTopOffset()); | 212 EXPECT_FLOAT_EQ(100.f, manager->ContentTopOffset()); |
214 } | 213 } |
215 | 214 |
216 TEST(TopControlsManagerTest, PartialHiddenWithAmbiguousThresholdShows) { | 215 TEST(BrowserControlsOffsetManagerTest, |
217 MockTopControlsManagerClient client(100.f, 0.25f, 0.25f); | 216 PartialHiddenWithAmbiguousThresholdShows) { |
218 TopControlsManager* manager = client.manager(); | 217 MockBrowserControlsOffsetManagerClient client(100.f, 0.25f, 0.25f); |
| 218 BrowserControlsOffsetManager* manager = client.manager(); |
219 | 219 |
220 manager->ScrollBegin(); | 220 manager->ScrollBegin(); |
221 | 221 |
222 manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); | 222 manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); |
223 EXPECT_FLOAT_EQ(-20.f, manager->ControlsTopOffset()); | 223 EXPECT_FLOAT_EQ(-20.f, manager->ControlsTopOffset()); |
224 EXPECT_FLOAT_EQ(80.f, manager->ContentTopOffset()); | 224 EXPECT_FLOAT_EQ(80.f, manager->ContentTopOffset()); |
225 | 225 |
226 manager->ScrollEnd(); | 226 manager->ScrollEnd(); |
227 EXPECT_TRUE(manager->has_animation()); | 227 EXPECT_TRUE(manager->has_animation()); |
228 | 228 |
229 base::TimeTicks time = base::TimeTicks::Now(); | 229 base::TimeTicks time = base::TimeTicks::Now(); |
230 float previous; | 230 float previous; |
231 while (manager->has_animation()) { | 231 while (manager->has_animation()) { |
232 previous = manager->TopControlsShownRatio(); | 232 previous = manager->TopControlsShownRatio(); |
233 time = base::TimeDelta::FromMicroseconds(100) + time; | 233 time = base::TimeDelta::FromMicroseconds(100) + time; |
234 manager->Animate(time); | 234 manager->Animate(time); |
235 EXPECT_GT(manager->TopControlsShownRatio(), previous); | 235 EXPECT_GT(manager->TopControlsShownRatio(), previous); |
236 } | 236 } |
237 EXPECT_FALSE(manager->has_animation()); | 237 EXPECT_FALSE(manager->has_animation()); |
238 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 238 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
239 EXPECT_FLOAT_EQ(100.f, manager->ContentTopOffset()); | 239 EXPECT_FLOAT_EQ(100.f, manager->ContentTopOffset()); |
240 } | 240 } |
241 | 241 |
242 TEST(TopControlsManagerTest, PartialHiddenWithAmbiguousThresholdHides) { | 242 TEST(BrowserControlsOffsetManagerTest, |
243 MockTopControlsManagerClient client(100.f, 0.25f, 0.25f); | 243 PartialHiddenWithAmbiguousThresholdHides) { |
244 TopControlsManager* manager = client.manager(); | 244 MockBrowserControlsOffsetManagerClient client(100.f, 0.25f, 0.25f); |
| 245 BrowserControlsOffsetManager* manager = client.manager(); |
245 | 246 |
246 manager->ScrollBegin(); | 247 manager->ScrollBegin(); |
247 | 248 |
248 manager->ScrollBy(gfx::Vector2dF(0.f, 30.f)); | 249 manager->ScrollBy(gfx::Vector2dF(0.f, 30.f)); |
249 EXPECT_FLOAT_EQ(-30.f, manager->ControlsTopOffset()); | 250 EXPECT_FLOAT_EQ(-30.f, manager->ControlsTopOffset()); |
250 EXPECT_FLOAT_EQ(70.f, manager->ContentTopOffset()); | 251 EXPECT_FLOAT_EQ(70.f, manager->ContentTopOffset()); |
251 | 252 |
252 manager->ScrollEnd(); | 253 manager->ScrollEnd(); |
253 EXPECT_TRUE(manager->has_animation()); | 254 EXPECT_TRUE(manager->has_animation()); |
254 | 255 |
255 base::TimeTicks time = base::TimeTicks::Now(); | 256 base::TimeTicks time = base::TimeTicks::Now(); |
256 float previous; | 257 float previous; |
257 while (manager->has_animation()) { | 258 while (manager->has_animation()) { |
258 previous = manager->TopControlsShownRatio(); | 259 previous = manager->TopControlsShownRatio(); |
259 time = base::TimeDelta::FromMicroseconds(100) + time; | 260 time = base::TimeDelta::FromMicroseconds(100) + time; |
260 manager->Animate(time); | 261 manager->Animate(time); |
261 EXPECT_LT(manager->TopControlsShownRatio(), previous); | 262 EXPECT_LT(manager->TopControlsShownRatio(), previous); |
262 } | 263 } |
263 EXPECT_FALSE(manager->has_animation()); | 264 EXPECT_FALSE(manager->has_animation()); |
264 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 265 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
265 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 266 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
266 } | 267 } |
267 | 268 |
268 TEST(TopControlsManagerTest, PartialShownWithAmbiguousThresholdHides) { | 269 TEST(BrowserControlsOffsetManagerTest, |
269 MockTopControlsManagerClient client(100.f, 0.25f, 0.25f); | 270 PartialShownWithAmbiguousThresholdHides) { |
270 TopControlsManager* manager = client.manager(); | 271 MockBrowserControlsOffsetManagerClient client(100.f, 0.25f, 0.25f); |
| 272 BrowserControlsOffsetManager* manager = client.manager(); |
271 | 273 |
272 manager->ScrollBy(gfx::Vector2dF(0.f, 200.f)); | 274 manager->ScrollBy(gfx::Vector2dF(0.f, 200.f)); |
273 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 275 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
274 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 276 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
275 | 277 |
276 manager->ScrollBegin(); | 278 manager->ScrollBegin(); |
277 | 279 |
278 manager->ScrollBy(gfx::Vector2dF(0.f, -20.f)); | 280 manager->ScrollBy(gfx::Vector2dF(0.f, -20.f)); |
279 EXPECT_FLOAT_EQ(-80.f, manager->ControlsTopOffset()); | 281 EXPECT_FLOAT_EQ(-80.f, manager->ControlsTopOffset()); |
280 EXPECT_FLOAT_EQ(20.f, manager->ContentTopOffset()); | 282 EXPECT_FLOAT_EQ(20.f, manager->ContentTopOffset()); |
281 | 283 |
282 manager->ScrollEnd(); | 284 manager->ScrollEnd(); |
283 EXPECT_TRUE(manager->has_animation()); | 285 EXPECT_TRUE(manager->has_animation()); |
284 | 286 |
285 base::TimeTicks time = base::TimeTicks::Now(); | 287 base::TimeTicks time = base::TimeTicks::Now(); |
286 float previous; | 288 float previous; |
287 while (manager->has_animation()) { | 289 while (manager->has_animation()) { |
288 previous = manager->TopControlsShownRatio(); | 290 previous = manager->TopControlsShownRatio(); |
289 time = base::TimeDelta::FromMicroseconds(100) + time; | 291 time = base::TimeDelta::FromMicroseconds(100) + time; |
290 manager->Animate(time); | 292 manager->Animate(time); |
291 EXPECT_LT(manager->TopControlsShownRatio(), previous); | 293 EXPECT_LT(manager->TopControlsShownRatio(), previous); |
292 } | 294 } |
293 EXPECT_FALSE(manager->has_animation()); | 295 EXPECT_FALSE(manager->has_animation()); |
294 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 296 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
295 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 297 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
296 } | 298 } |
297 | 299 |
298 TEST(TopControlsManagerTest, PartialShownWithAmbiguousThresholdShows) { | 300 TEST(BrowserControlsOffsetManagerTest, |
299 MockTopControlsManagerClient client(100.f, 0.25f, 0.25f); | 301 PartialShownWithAmbiguousThresholdShows) { |
300 TopControlsManager* manager = client.manager(); | 302 MockBrowserControlsOffsetManagerClient client(100.f, 0.25f, 0.25f); |
| 303 BrowserControlsOffsetManager* manager = client.manager(); |
301 | 304 |
302 manager->ScrollBy(gfx::Vector2dF(0.f, 200.f)); | 305 manager->ScrollBy(gfx::Vector2dF(0.f, 200.f)); |
303 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 306 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
304 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 307 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
305 | 308 |
306 manager->ScrollBegin(); | 309 manager->ScrollBegin(); |
307 | 310 |
308 manager->ScrollBy(gfx::Vector2dF(0.f, -30.f)); | 311 manager->ScrollBy(gfx::Vector2dF(0.f, -30.f)); |
309 EXPECT_FLOAT_EQ(-70.f, manager->ControlsTopOffset()); | 312 EXPECT_FLOAT_EQ(-70.f, manager->ControlsTopOffset()); |
310 EXPECT_FLOAT_EQ(30.f, manager->ContentTopOffset()); | 313 EXPECT_FLOAT_EQ(30.f, manager->ContentTopOffset()); |
311 | 314 |
312 manager->ScrollEnd(); | 315 manager->ScrollEnd(); |
313 EXPECT_TRUE(manager->has_animation()); | 316 EXPECT_TRUE(manager->has_animation()); |
314 | 317 |
315 base::TimeTicks time = base::TimeTicks::Now(); | 318 base::TimeTicks time = base::TimeTicks::Now(); |
316 float previous; | 319 float previous; |
317 while (manager->has_animation()) { | 320 while (manager->has_animation()) { |
318 previous = manager->TopControlsShownRatio(); | 321 previous = manager->TopControlsShownRatio(); |
319 time = base::TimeDelta::FromMicroseconds(100) + time; | 322 time = base::TimeDelta::FromMicroseconds(100) + time; |
320 manager->Animate(time); | 323 manager->Animate(time); |
321 EXPECT_GT(manager->TopControlsShownRatio(), previous); | 324 EXPECT_GT(manager->TopControlsShownRatio(), previous); |
322 } | 325 } |
323 EXPECT_FALSE(manager->has_animation()); | 326 EXPECT_FALSE(manager->has_animation()); |
324 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 327 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
325 EXPECT_FLOAT_EQ(100.f, manager->ContentTopOffset()); | 328 EXPECT_FLOAT_EQ(100.f, manager->ContentTopOffset()); |
326 } | 329 } |
327 | 330 |
328 TEST(TopControlsManagerTest, PinchIgnoresScroll) { | 331 TEST(BrowserControlsOffsetManagerTest, PinchIgnoresScroll) { |
329 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 332 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
330 TopControlsManager* manager = client.manager(); | 333 BrowserControlsOffsetManager* manager = client.manager(); |
331 | 334 |
332 // Hide the controls. | 335 // Hide the controls. |
333 manager->ScrollBegin(); | 336 manager->ScrollBegin(); |
334 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 337 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
335 | 338 |
336 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); | 339 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); |
337 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 340 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
338 | 341 |
339 manager->PinchBegin(); | 342 manager->PinchBegin(); |
340 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 343 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
341 | 344 |
342 // Scrolls are ignored during pinch. | 345 // Scrolls are ignored during pinch. |
343 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); | 346 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); |
344 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 347 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
345 manager->PinchEnd(); | 348 manager->PinchEnd(); |
346 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 349 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
347 | 350 |
348 // Scrolls should no long be ignored. | 351 // Scrolls should no long be ignored. |
349 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); | 352 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); |
350 EXPECT_FLOAT_EQ(-85.f, manager->ControlsTopOffset()); | 353 EXPECT_FLOAT_EQ(-85.f, manager->ControlsTopOffset()); |
351 EXPECT_FLOAT_EQ(15.f, manager->ContentTopOffset()); | 354 EXPECT_FLOAT_EQ(15.f, manager->ContentTopOffset()); |
352 manager->ScrollEnd(); | 355 manager->ScrollEnd(); |
353 | 356 |
354 EXPECT_TRUE(manager->has_animation()); | 357 EXPECT_TRUE(manager->has_animation()); |
355 } | 358 } |
356 | 359 |
357 TEST(TopControlsManagerTest, PinchBeginStartsAnimationIfNecessary) { | 360 TEST(BrowserControlsOffsetManagerTest, PinchBeginStartsAnimationIfNecessary) { |
358 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 361 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
359 TopControlsManager* manager = client.manager(); | 362 BrowserControlsOffsetManager* manager = client.manager(); |
360 | 363 |
361 manager->ScrollBegin(); | 364 manager->ScrollBegin(); |
362 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); | 365 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); |
363 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 366 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
364 | 367 |
365 manager->PinchBegin(); | 368 manager->PinchBegin(); |
366 EXPECT_FALSE(manager->has_animation()); | 369 EXPECT_FALSE(manager->has_animation()); |
367 | 370 |
368 manager->PinchEnd(); | 371 manager->PinchEnd(); |
369 EXPECT_FALSE(manager->has_animation()); | 372 EXPECT_FALSE(manager->has_animation()); |
(...skipping 30 matching lines...) Expand all Loading... |
400 while (manager->has_animation()) { | 403 while (manager->has_animation()) { |
401 previous = manager->TopControlsShownRatio(); | 404 previous = manager->TopControlsShownRatio(); |
402 time = base::TimeDelta::FromMicroseconds(100) + time; | 405 time = base::TimeDelta::FromMicroseconds(100) + time; |
403 manager->Animate(time); | 406 manager->Animate(time); |
404 EXPECT_GT(manager->TopControlsShownRatio(), previous); | 407 EXPECT_GT(manager->TopControlsShownRatio(), previous); |
405 } | 408 } |
406 EXPECT_FALSE(manager->has_animation()); | 409 EXPECT_FALSE(manager->has_animation()); |
407 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 410 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
408 } | 411 } |
409 | 412 |
410 TEST(TopControlsManagerTest, HeightChangeMaintainsFullyVisibleControls) { | 413 TEST(BrowserControlsOffsetManagerTest, |
411 MockTopControlsManagerClient client(0.f, 0.5f, 0.5f); | 414 HeightChangeMaintainsFullyVisibleControls) { |
412 TopControlsManager* manager = client.manager(); | 415 MockBrowserControlsOffsetManagerClient client(0.f, 0.5f, 0.5f); |
| 416 BrowserControlsOffsetManager* manager = client.manager(); |
413 | 417 |
414 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 418 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
415 | 419 |
416 client.SetTopControlsHeight(100.f); | 420 client.SetBrowserControlsHeight(100.f); |
417 EXPECT_FALSE(manager->has_animation()); | 421 EXPECT_FALSE(manager->has_animation()); |
418 EXPECT_FLOAT_EQ(100.f, manager->TopControlsHeight()); | 422 EXPECT_FLOAT_EQ(100.f, manager->TopControlsHeight()); |
419 EXPECT_FLOAT_EQ(0, manager->ControlsTopOffset()); | 423 EXPECT_FLOAT_EQ(0, manager->ControlsTopOffset()); |
420 | 424 |
421 client.SetTopControlsHeight(50.f); | 425 client.SetBrowserControlsHeight(50.f); |
422 EXPECT_FALSE(manager->has_animation()); | 426 EXPECT_FALSE(manager->has_animation()); |
423 EXPECT_FLOAT_EQ(50.f, manager->TopControlsHeight()); | 427 EXPECT_FLOAT_EQ(50.f, manager->TopControlsHeight()); |
424 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 428 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
425 } | 429 } |
426 | 430 |
427 TEST(TopControlsManagerTest, GrowingHeightKeepsTopControlsHidden) { | 431 TEST(BrowserControlsOffsetManagerTest, |
428 MockTopControlsManagerClient client(0.f, 0.5f, 0.5f); | 432 GrowingHeightKeepsBrowserControlsHidden) { |
429 TopControlsManager* manager = client.manager(); | 433 MockBrowserControlsOffsetManagerClient client(0.f, 0.5f, 0.5f); |
430 client.SetTopControlsHeight(1.f); | 434 BrowserControlsOffsetManager* manager = client.manager(); |
431 manager->UpdateTopControlsState(HIDDEN, HIDDEN, false); | 435 client.SetBrowserControlsHeight(1.f); |
| 436 manager->UpdateBrowserControlsState(HIDDEN, HIDDEN, false); |
432 EXPECT_EQ(-1.f, manager->ControlsTopOffset()); | 437 EXPECT_EQ(-1.f, manager->ControlsTopOffset()); |
433 EXPECT_EQ(0.f, manager->ContentTopOffset()); | 438 EXPECT_EQ(0.f, manager->ContentTopOffset()); |
434 | 439 |
435 client.SetTopControlsHeight(50.f); | 440 client.SetBrowserControlsHeight(50.f); |
436 EXPECT_FALSE(manager->has_animation()); | 441 EXPECT_FALSE(manager->has_animation()); |
437 EXPECT_EQ(-50.f, manager->ControlsTopOffset()); | 442 EXPECT_EQ(-50.f, manager->ControlsTopOffset()); |
438 EXPECT_EQ(0.f, manager->ContentTopOffset()); | 443 EXPECT_EQ(0.f, manager->ContentTopOffset()); |
439 | 444 |
440 client.SetTopControlsHeight(100.f); | 445 client.SetBrowserControlsHeight(100.f); |
441 EXPECT_FALSE(manager->has_animation()); | 446 EXPECT_FALSE(manager->has_animation()); |
442 EXPECT_EQ(-100.f, manager->ControlsTopOffset()); | 447 EXPECT_EQ(-100.f, manager->ControlsTopOffset()); |
443 EXPECT_EQ(0.f, manager->ContentTopOffset()); | 448 EXPECT_EQ(0.f, manager->ContentTopOffset()); |
444 } | 449 } |
445 | 450 |
446 TEST(TopControlsManagerTest, ShrinkingHeightKeepsTopControlsHidden) { | 451 TEST(BrowserControlsOffsetManagerTest, |
447 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 452 ShrinkingHeightKeepsBrowserControlsHidden) { |
448 TopControlsManager* manager = client.manager(); | 453 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
| 454 BrowserControlsOffsetManager* manager = client.manager(); |
449 | 455 |
450 manager->ScrollBegin(); | 456 manager->ScrollBegin(); |
451 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); | 457 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); |
452 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); | 458 EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset()); |
453 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 459 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
454 manager->ScrollEnd(); | 460 manager->ScrollEnd(); |
455 | 461 |
456 client.SetTopControlsHeight(50.f); | 462 client.SetBrowserControlsHeight(50.f); |
457 EXPECT_FALSE(manager->has_animation()); | 463 EXPECT_FALSE(manager->has_animation()); |
458 EXPECT_FLOAT_EQ(-50.f, manager->ControlsTopOffset()); | 464 EXPECT_FLOAT_EQ(-50.f, manager->ControlsTopOffset()); |
459 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 465 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
460 | 466 |
461 client.SetTopControlsHeight(0.f); | 467 client.SetBrowserControlsHeight(0.f); |
462 EXPECT_FALSE(manager->has_animation()); | 468 EXPECT_FALSE(manager->has_animation()); |
463 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 469 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
464 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 470 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
465 } | 471 } |
466 | 472 |
467 TEST(TopControlsManagerTest, ScrollByWithZeroHeightControlsIsNoop) { | 473 TEST(BrowserControlsOffsetManagerTest, ScrollByWithZeroHeightControlsIsNoop) { |
468 MockTopControlsManagerClient client(0.f, 0.5f, 0.5f); | 474 MockBrowserControlsOffsetManagerClient client(0.f, 0.5f, 0.5f); |
469 TopControlsManager* manager = client.manager(); | 475 BrowserControlsOffsetManager* manager = client.manager(); |
470 manager->UpdateTopControlsState(BOTH, BOTH, false); | 476 manager->UpdateBrowserControlsState(BOTH, BOTH, false); |
471 | 477 |
472 manager->ScrollBegin(); | 478 manager->ScrollBegin(); |
473 gfx::Vector2dF pending = manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); | 479 gfx::Vector2dF pending = manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); |
474 EXPECT_FLOAT_EQ(20.f, pending.y()); | 480 EXPECT_FLOAT_EQ(20.f, pending.y()); |
475 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); | 481 EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset()); |
476 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); | 482 EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset()); |
477 EXPECT_FLOAT_EQ(1.f, client.CurrentTopControlsShownRatio()); | 483 EXPECT_FLOAT_EQ(1.f, client.CurrentBrowserControlsShownRatio()); |
478 manager->ScrollEnd(); | 484 manager->ScrollEnd(); |
479 } | 485 } |
480 | 486 |
481 TEST(TopControlsManagerTest, ScrollThenRestoreBottomControls) { | 487 TEST(BrowserControlsOffsetManagerTest, ScrollThenRestoreBottomControls) { |
482 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 488 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
483 client.SetBottomControlsHeight(100.f); | 489 client.SetBottomControlsHeight(100.f); |
484 TopControlsManager* manager = client.manager(); | 490 BrowserControlsOffsetManager* manager = client.manager(); |
485 manager->ScrollBegin(); | 491 manager->ScrollBegin(); |
486 manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); | 492 manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); |
487 EXPECT_FLOAT_EQ(80.f, manager->ContentBottomOffset()); | 493 EXPECT_FLOAT_EQ(80.f, manager->ContentBottomOffset()); |
| 494 EXPECT_FLOAT_EQ(0.8f, manager->BottomControlsShownRatio()); |
| 495 manager->ScrollEnd(); |
| 496 |
| 497 manager->ScrollBegin(); |
| 498 manager->ScrollBy(gfx::Vector2dF(0.f, -200.f)); |
| 499 EXPECT_FLOAT_EQ(100.f, manager->ContentBottomOffset()); |
| 500 EXPECT_FLOAT_EQ(1.f, manager->BottomControlsShownRatio()); |
| 501 manager->ScrollEnd(); |
| 502 } |
| 503 |
| 504 TEST(BrowserControlsOffsetManagerTest, |
| 505 ScrollThenRestoreBottomControlsNoBrowserControls) { |
| 506 MockBrowserControlsOffsetManagerClient client(0.f, 0.5f, 0.5f); |
| 507 client.SetBottomControlsHeight(100.f); |
| 508 BrowserControlsOffsetManager* manager = client.manager(); |
| 509 manager->ScrollBegin(); |
| 510 manager->ScrollBy(gfx::Vector2dF(0.f, 20.f)); |
| 511 EXPECT_FLOAT_EQ(80.f, manager->ContentBottomOffset()); |
488 EXPECT_FLOAT_EQ(0.8f, manager->BottomControlsShownRatio()); | 512 EXPECT_FLOAT_EQ(0.8f, manager->BottomControlsShownRatio()); |
489 manager->ScrollEnd(); | 513 manager->ScrollEnd(); |
490 | 514 |
491 manager->ScrollBegin(); | 515 manager->ScrollBegin(); |
492 manager->ScrollBy(gfx::Vector2dF(0.f, -200.f)); | 516 manager->ScrollBy(gfx::Vector2dF(0.f, -200.f)); |
493 EXPECT_FLOAT_EQ(100.f, manager->ContentBottomOffset()); | 517 EXPECT_FLOAT_EQ(100.f, manager->ContentBottomOffset()); |
494 EXPECT_FLOAT_EQ(1.f, manager->BottomControlsShownRatio()); | 518 EXPECT_FLOAT_EQ(1.f, manager->BottomControlsShownRatio()); |
495 manager->ScrollEnd(); | 519 manager->ScrollEnd(); |
496 } | 520 } |
497 | 521 |
498 TEST(TopControlsManagerTest, HideAndPeekBottomControls) { | 522 TEST(BrowserControlsOffsetManagerTest, HideAndPeekBottomControls) { |
499 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 523 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
500 client.SetBottomControlsHeight(100.f); | 524 client.SetBottomControlsHeight(100.f); |
501 TopControlsManager* manager = client.manager(); | 525 BrowserControlsOffsetManager* manager = client.manager(); |
502 manager->ScrollBegin(); | 526 manager->ScrollBegin(); |
503 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); | 527 manager->ScrollBy(gfx::Vector2dF(0.f, 300.f)); |
504 EXPECT_FLOAT_EQ(0.f, manager->ContentBottomOffset()); | 528 EXPECT_FLOAT_EQ(0.f, manager->ContentBottomOffset()); |
505 EXPECT_FLOAT_EQ(0.f, manager->BottomControlsShownRatio()); | 529 EXPECT_FLOAT_EQ(0.f, manager->BottomControlsShownRatio()); |
506 manager->ScrollEnd(); | 530 manager->ScrollEnd(); |
507 | 531 |
508 manager->ScrollBegin(); | 532 manager->ScrollBegin(); |
509 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); | 533 manager->ScrollBy(gfx::Vector2dF(0.f, -15.f)); |
510 EXPECT_FLOAT_EQ(15.f, manager->ContentBottomOffset()); | 534 EXPECT_FLOAT_EQ(15.f, manager->ContentBottomOffset()); |
511 EXPECT_FLOAT_EQ(0.15f, manager->BottomControlsShownRatio()); | 535 EXPECT_FLOAT_EQ(0.15f, manager->BottomControlsShownRatio()); |
512 manager->ScrollEnd(); | 536 manager->ScrollEnd(); |
513 } | 537 } |
514 | 538 |
515 TEST(TopControlsManagerTest, HideAndImmediateShowKeepsControlsVisible) { | 539 TEST(BrowserControlsOffsetManagerTest, |
516 MockTopControlsManagerClient client(100.f, 0.5f, 0.5f); | 540 HideAndImmediateShowKeepsControlsVisible) { |
| 541 MockBrowserControlsOffsetManagerClient client(100.f, 0.5f, 0.5f); |
517 client.SetBottomControlsHeight(100.f); | 542 client.SetBottomControlsHeight(100.f); |
518 TopControlsManager* manager = client.manager(); | 543 BrowserControlsOffsetManager* manager = client.manager(); |
519 EXPECT_FLOAT_EQ(1.f, client.CurrentTopControlsShownRatio()); | 544 EXPECT_FLOAT_EQ(1.f, client.CurrentBrowserControlsShownRatio()); |
520 | 545 |
521 manager->UpdateTopControlsState(BOTH, HIDDEN, true); | 546 manager->UpdateBrowserControlsState(BOTH, HIDDEN, true); |
522 EXPECT_TRUE(manager->has_animation()); | 547 EXPECT_TRUE(manager->has_animation()); |
523 EXPECT_FLOAT_EQ(1.f, client.CurrentTopControlsShownRatio()); | 548 EXPECT_FLOAT_EQ(1.f, client.CurrentBrowserControlsShownRatio()); |
524 | 549 |
525 manager->UpdateTopControlsState(BOTH, SHOWN, true); | 550 manager->UpdateBrowserControlsState(BOTH, SHOWN, true); |
526 EXPECT_FALSE(manager->has_animation()); | 551 EXPECT_FALSE(manager->has_animation()); |
527 EXPECT_FLOAT_EQ(1.f, client.CurrentTopControlsShownRatio()); | 552 EXPECT_FLOAT_EQ(1.f, client.CurrentBrowserControlsShownRatio()); |
528 } | 553 } |
529 | 554 |
530 } // namespace | 555 } // namespace |
531 } // namespace cc | 556 } // namespace cc |
OLD | NEW |