OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 "content/browser/web_contents/aura/window_slider.h" | 5 #include "content/browser/web_contents/aura/window_slider.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/time/time.h" | 8 #include "base/time/time.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 #include "ui/aura/test/aura_test_base.h" | 10 #include "ui/aura/test/aura_test_base.h" |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 ui::EventType type, | 65 ui::EventType type, |
66 const gfx::Vector2dF& delta) { | 66 const gfx::Vector2dF& delta) { |
67 EXPECT_FALSE(slider->IsSlideInProgress()); | 67 EXPECT_FALSE(slider->IsSlideInProgress()); |
68 } | 68 } |
69 | 69 |
70 // The window delegate does not receive any events. | 70 // The window delegate does not receive any events. |
71 class NoEventWindowDelegate : public aura::test::TestWindowDelegate { | 71 class NoEventWindowDelegate : public aura::test::TestWindowDelegate { |
72 public: | 72 public: |
73 NoEventWindowDelegate() { | 73 NoEventWindowDelegate() { |
74 } | 74 } |
75 virtual ~NoEventWindowDelegate() {} | 75 ~NoEventWindowDelegate() override {} |
76 | 76 |
77 private: | 77 private: |
78 // Overridden from aura::WindowDelegate: | 78 // Overridden from aura::WindowDelegate: |
79 virtual bool HasHitTestMask() const override { return true; } | 79 bool HasHitTestMask() const override { return true; } |
80 | 80 |
81 DISALLOW_COPY_AND_ASSIGN(NoEventWindowDelegate); | 81 DISALLOW_COPY_AND_ASSIGN(NoEventWindowDelegate); |
82 }; | 82 }; |
83 | 83 |
84 class WindowSliderDelegateTest : public WindowSlider::Delegate { | 84 class WindowSliderDelegateTest : public WindowSlider::Delegate { |
85 public: | 85 public: |
86 WindowSliderDelegateTest() | 86 WindowSliderDelegateTest() |
87 : can_create_layer_(true), | 87 : can_create_layer_(true), |
88 created_back_layer_(false), | 88 created_back_layer_(false), |
89 created_front_layer_(false), | 89 created_front_layer_(false), |
90 slide_completing_(false), | 90 slide_completing_(false), |
91 slide_completed_(false), | 91 slide_completed_(false), |
92 slide_aborted_(false), | 92 slide_aborted_(false), |
93 slider_destroyed_(false) { | 93 slider_destroyed_(false) { |
94 } | 94 } |
95 virtual ~WindowSliderDelegateTest() { | 95 ~WindowSliderDelegateTest() override { |
96 // Make sure slide_completed() gets called if slide_completing() was called. | 96 // Make sure slide_completed() gets called if slide_completing() was called. |
97 CHECK(!slide_completing_ || slide_completed_); | 97 CHECK(!slide_completing_ || slide_completed_); |
98 } | 98 } |
99 | 99 |
100 void Reset() { | 100 void Reset() { |
101 can_create_layer_ = true; | 101 can_create_layer_ = true; |
102 created_back_layer_ = false; | 102 created_back_layer_ = false; |
103 created_front_layer_ = false; | 103 created_front_layer_ = false; |
104 slide_completing_ = false; | 104 slide_completing_ = false; |
105 slide_completed_ = false; | 105 slide_completed_ = false; |
(...skipping 14 matching lines...) Expand all Loading... |
120 | 120 |
121 protected: | 121 protected: |
122 ui::Layer* CreateLayerForTest() { | 122 ui::Layer* CreateLayerForTest() { |
123 CHECK(can_create_layer_); | 123 CHECK(can_create_layer_); |
124 ui::Layer* layer = new ui::Layer(ui::LAYER_SOLID_COLOR); | 124 ui::Layer* layer = new ui::Layer(ui::LAYER_SOLID_COLOR); |
125 layer->SetColor(SK_ColorRED); | 125 layer->SetColor(SK_ColorRED); |
126 return layer; | 126 return layer; |
127 } | 127 } |
128 | 128 |
129 // Overridden from WindowSlider::Delegate: | 129 // Overridden from WindowSlider::Delegate: |
130 virtual ui::Layer* CreateBackLayer() override { | 130 ui::Layer* CreateBackLayer() override { |
131 if (!can_create_layer_) | 131 if (!can_create_layer_) |
132 return NULL; | 132 return NULL; |
133 created_back_layer_ = true; | 133 created_back_layer_ = true; |
134 return CreateLayerForTest(); | 134 return CreateLayerForTest(); |
135 } | 135 } |
136 | 136 |
137 virtual ui::Layer* CreateFrontLayer() override { | 137 ui::Layer* CreateFrontLayer() override { |
138 if (!can_create_layer_) | 138 if (!can_create_layer_) |
139 return NULL; | 139 return NULL; |
140 created_front_layer_ = true; | 140 created_front_layer_ = true; |
141 return CreateLayerForTest(); | 141 return CreateLayerForTest(); |
142 } | 142 } |
143 | 143 |
144 virtual void OnWindowSlideCompleted(scoped_ptr<ui::Layer> layer) override { | 144 void OnWindowSlideCompleted(scoped_ptr<ui::Layer> layer) override { |
145 slide_completed_ = true; | 145 slide_completed_ = true; |
146 } | 146 } |
147 | 147 |
148 virtual void OnWindowSlideCompleting() override { | 148 void OnWindowSlideCompleting() override { slide_completing_ = true; } |
149 slide_completing_ = true; | |
150 } | |
151 | 149 |
152 virtual void OnWindowSlideAborted() override { | 150 void OnWindowSlideAborted() override { slide_aborted_ = true; } |
153 slide_aborted_ = true; | |
154 } | |
155 | 151 |
156 virtual void OnWindowSliderDestroyed() override { | 152 void OnWindowSliderDestroyed() override { slider_destroyed_ = true; } |
157 slider_destroyed_ = true; | |
158 } | |
159 | 153 |
160 private: | 154 private: |
161 bool can_create_layer_; | 155 bool can_create_layer_; |
162 bool created_back_layer_; | 156 bool created_back_layer_; |
163 bool created_front_layer_; | 157 bool created_front_layer_; |
164 bool slide_completing_; | 158 bool slide_completing_; |
165 bool slide_completed_; | 159 bool slide_completed_; |
166 bool slide_aborted_; | 160 bool slide_aborted_; |
167 bool slider_destroyed_; | 161 bool slider_destroyed_; |
168 | 162 |
169 DISALLOW_COPY_AND_ASSIGN(WindowSliderDelegateTest); | 163 DISALLOW_COPY_AND_ASSIGN(WindowSliderDelegateTest); |
170 }; | 164 }; |
171 | 165 |
172 // This delegate destroys the owner window when the slider is destroyed. | 166 // This delegate destroys the owner window when the slider is destroyed. |
173 class WindowSliderDeleteOwnerOnDestroy : public WindowSliderDelegateTest { | 167 class WindowSliderDeleteOwnerOnDestroy : public WindowSliderDelegateTest { |
174 public: | 168 public: |
175 explicit WindowSliderDeleteOwnerOnDestroy(aura::Window* owner) | 169 explicit WindowSliderDeleteOwnerOnDestroy(aura::Window* owner) |
176 : owner_(owner) { | 170 : owner_(owner) { |
177 } | 171 } |
178 virtual ~WindowSliderDeleteOwnerOnDestroy() {} | 172 ~WindowSliderDeleteOwnerOnDestroy() override {} |
179 | 173 |
180 private: | 174 private: |
181 // Overridden from WindowSlider::Delegate: | 175 // Overridden from WindowSlider::Delegate: |
182 virtual void OnWindowSliderDestroyed() override { | 176 void OnWindowSliderDestroyed() override { |
183 WindowSliderDelegateTest::OnWindowSliderDestroyed(); | 177 WindowSliderDelegateTest::OnWindowSliderDestroyed(); |
184 delete owner_; | 178 delete owner_; |
185 } | 179 } |
186 | 180 |
187 aura::Window* owner_; | 181 aura::Window* owner_; |
188 DISALLOW_COPY_AND_ASSIGN(WindowSliderDeleteOwnerOnDestroy); | 182 DISALLOW_COPY_AND_ASSIGN(WindowSliderDeleteOwnerOnDestroy); |
189 }; | 183 }; |
190 | 184 |
191 // This delegate destroyes the owner window when a slide is completed. | 185 // This delegate destroyes the owner window when a slide is completed. |
192 class WindowSliderDeleteOwnerOnComplete : public WindowSliderDelegateTest { | 186 class WindowSliderDeleteOwnerOnComplete : public WindowSliderDelegateTest { |
193 public: | 187 public: |
194 explicit WindowSliderDeleteOwnerOnComplete(aura::Window* owner) | 188 explicit WindowSliderDeleteOwnerOnComplete(aura::Window* owner) |
195 : owner_(owner) { | 189 : owner_(owner) { |
196 } | 190 } |
197 virtual ~WindowSliderDeleteOwnerOnComplete() {} | 191 ~WindowSliderDeleteOwnerOnComplete() override {} |
198 | 192 |
199 private: | 193 private: |
200 // Overridden from WindowSlider::Delegate: | 194 // Overridden from WindowSlider::Delegate: |
201 virtual void OnWindowSlideCompleted(scoped_ptr<ui::Layer> layer) override { | 195 void OnWindowSlideCompleted(scoped_ptr<ui::Layer> layer) override { |
202 WindowSliderDelegateTest::OnWindowSlideCompleted(layer.Pass()); | 196 WindowSliderDelegateTest::OnWindowSlideCompleted(layer.Pass()); |
203 delete owner_; | 197 delete owner_; |
204 } | 198 } |
205 | 199 |
206 aura::Window* owner_; | 200 aura::Window* owner_; |
207 DISALLOW_COPY_AND_ASSIGN(WindowSliderDeleteOwnerOnComplete); | 201 DISALLOW_COPY_AND_ASSIGN(WindowSliderDeleteOwnerOnComplete); |
208 }; | 202 }; |
209 | 203 |
210 typedef aura::test::AuraTestBase WindowSliderTest; | 204 typedef aura::test::AuraTestBase WindowSliderTest; |
211 | 205 |
(...skipping 427 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
639 animator->Step(start_time2 + duration); | 633 animator->Step(start_time2 + duration); |
640 // The animation for the second slide should now be completed. | 634 // The animation for the second slide should now be completed. |
641 EXPECT_TRUE(slider_delegate.slide_completed()); | 635 EXPECT_TRUE(slider_delegate.slide_completed()); |
642 slider_delegate.Reset(); | 636 slider_delegate.Reset(); |
643 | 637 |
644 window.reset(); | 638 window.reset(); |
645 EXPECT_TRUE(slider_delegate.slider_destroyed()); | 639 EXPECT_TRUE(slider_delegate.slider_destroyed()); |
646 } | 640 } |
647 | 641 |
648 } // namespace content | 642 } // namespace content |
OLD | NEW |