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

Side by Side Diff: ash/shelf/shelf_view.cc

Issue 684643002: Standardize usage of virtual/override/final specifiers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 1 month 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
« no previous file with comments | « ash/shelf/shelf_view.h ('k') | ash/shelf/shelf_view_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "ash/shelf/shelf_view.h" 5 #include "ash/shelf/shelf_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "ash/ash_constants.h" 9 #include "ash/ash_constants.h"
10 #include "ash/ash_switches.h" 10 #include "ash/ash_switches.h"
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 DISALLOW_COPY_AND_ASSIGN(BoundsAnimatorDisabler); 134 DISALLOW_COPY_AND_ASSIGN(BoundsAnimatorDisabler);
135 }; 135 };
136 136
137 // The MenuModelAdapter gets slightly changed to adapt the menu appearance to 137 // The MenuModelAdapter gets slightly changed to adapt the menu appearance to
138 // our requirements. 138 // our requirements.
139 class ShelfMenuModelAdapter : public views::MenuModelAdapter { 139 class ShelfMenuModelAdapter : public views::MenuModelAdapter {
140 public: 140 public:
141 explicit ShelfMenuModelAdapter(ShelfMenuModel* menu_model); 141 explicit ShelfMenuModelAdapter(ShelfMenuModel* menu_model);
142 142
143 // views::MenuModelAdapter: 143 // views::MenuModelAdapter:
144 virtual const gfx::FontList* GetLabelFontList(int command_id) const override; 144 const gfx::FontList* GetLabelFontList(int command_id) const override;
145 virtual bool IsCommandEnabled(int id) const override; 145 bool IsCommandEnabled(int id) const override;
146 virtual void GetHorizontalIconMargins(int id, 146 void GetHorizontalIconMargins(int id,
147 int icon_size, 147 int icon_size,
148 int* left_margin, 148 int* left_margin,
149 int* right_margin) const override; 149 int* right_margin) const override;
150 virtual bool GetForegroundColor(int command_id, 150 bool GetForegroundColor(int command_id,
151 bool is_hovered, 151 bool is_hovered,
152 SkColor* override_color) const override; 152 SkColor* override_color) const override;
153 virtual bool GetBackgroundColor(int command_id, 153 bool GetBackgroundColor(int command_id,
154 bool is_hovered, 154 bool is_hovered,
155 SkColor* override_color) const override; 155 SkColor* override_color) const override;
156 virtual int GetMaxWidthForMenu(views::MenuItemView* menu) override; 156 int GetMaxWidthForMenu(views::MenuItemView* menu) override;
157 virtual bool ShouldReserveSpaceForSubmenuIndicator() const override; 157 bool ShouldReserveSpaceForSubmenuIndicator() const override;
158 158
159 private: 159 private:
160 ShelfMenuModel* menu_model_; 160 ShelfMenuModel* menu_model_;
161 161
162 DISALLOW_COPY_AND_ASSIGN(ShelfMenuModelAdapter); 162 DISALLOW_COPY_AND_ASSIGN(ShelfMenuModelAdapter);
163 }; 163 };
164 164
165 ShelfMenuModelAdapter::ShelfMenuModelAdapter(ShelfMenuModel* menu_model) 165 ShelfMenuModelAdapter::ShelfMenuModelAdapter(ShelfMenuModel* menu_model)
166 : MenuModelAdapter(menu_model), 166 : MenuModelAdapter(menu_model),
167 menu_model_(menu_model) { 167 menu_model_(menu_model) {
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 return false; 218 return false;
219 } 219 }
220 220
221 // Custom FocusSearch used to navigate the shelf in the order items are in 221 // Custom FocusSearch used to navigate the shelf in the order items are in
222 // the ViewModel. 222 // the ViewModel.
223 class ShelfFocusSearch : public views::FocusSearch { 223 class ShelfFocusSearch : public views::FocusSearch {
224 public: 224 public:
225 explicit ShelfFocusSearch(views::ViewModel* view_model) 225 explicit ShelfFocusSearch(views::ViewModel* view_model)
226 : FocusSearch(NULL, true, true), 226 : FocusSearch(NULL, true, true),
227 view_model_(view_model) {} 227 view_model_(view_model) {}
228 virtual ~ShelfFocusSearch() {} 228 ~ShelfFocusSearch() override {}
229 229
230 // views::FocusSearch overrides: 230 // views::FocusSearch overrides:
231 virtual View* FindNextFocusableView( 231 View* FindNextFocusableView(View* starting_view,
232 View* starting_view, 232 bool reverse,
233 bool reverse, 233 Direction direction,
234 Direction direction, 234 bool check_starting_view,
235 bool check_starting_view, 235 views::FocusTraversable** focus_traversable,
236 views::FocusTraversable** focus_traversable, 236 View** focus_traversable_view) override {
237 View** focus_traversable_view) override {
238 int index = view_model_->GetIndexOfView(starting_view); 237 int index = view_model_->GetIndexOfView(starting_view);
239 if (index == -1) 238 if (index == -1)
240 return view_model_->view_at(0); 239 return view_model_->view_at(0);
241 240
242 if (reverse) { 241 if (reverse) {
243 --index; 242 --index;
244 if (index < 0) 243 if (index < 0)
245 index = view_model_->view_size() - 1; 244 index = view_model_->view_size() - 1;
246 } else { 245 } else {
247 ++index; 246 ++index;
248 if (index >= view_model_->view_size()) 247 if (index >= view_model_->view_size())
249 index = 0; 248 index = 0;
250 } 249 }
251 return view_model_->view_at(index); 250 return view_model_->view_at(index);
252 } 251 }
253 252
254 private: 253 private:
255 views::ViewModel* view_model_; 254 views::ViewModel* view_model_;
256 255
257 DISALLOW_COPY_AND_ASSIGN(ShelfFocusSearch); 256 DISALLOW_COPY_AND_ASSIGN(ShelfFocusSearch);
258 }; 257 };
259 258
260 // AnimationDelegate used when inserting a new item. This steadily increases the 259 // AnimationDelegate used when inserting a new item. This steadily increases the
261 // opacity of the layer as the animation progress. 260 // opacity of the layer as the animation progress.
262 class FadeInAnimationDelegate : public gfx::AnimationDelegate { 261 class FadeInAnimationDelegate : public gfx::AnimationDelegate {
263 public: 262 public:
264 explicit FadeInAnimationDelegate(views::View* view) : view_(view) {} 263 explicit FadeInAnimationDelegate(views::View* view) : view_(view) {}
265 virtual ~FadeInAnimationDelegate() {} 264 ~FadeInAnimationDelegate() override {}
266 265
267 // AnimationDelegate overrides: 266 // AnimationDelegate overrides:
268 virtual void AnimationProgressed(const Animation* animation) override { 267 void AnimationProgressed(const Animation* animation) override {
269 view_->layer()->SetOpacity(animation->GetCurrentValue()); 268 view_->layer()->SetOpacity(animation->GetCurrentValue());
270 view_->layer()->ScheduleDraw(); 269 view_->layer()->ScheduleDraw();
271 } 270 }
272 virtual void AnimationEnded(const Animation* animation) override { 271 void AnimationEnded(const Animation* animation) override {
273 view_->layer()->SetOpacity(1.0f); 272 view_->layer()->SetOpacity(1.0f);
274 view_->layer()->ScheduleDraw(); 273 view_->layer()->ScheduleDraw();
275 } 274 }
276 virtual void AnimationCanceled(const Animation* animation) override { 275 void AnimationCanceled(const Animation* animation) override {
277 view_->layer()->SetOpacity(1.0f); 276 view_->layer()->SetOpacity(1.0f);
278 view_->layer()->ScheduleDraw(); 277 view_->layer()->ScheduleDraw();
279 } 278 }
280 279
281 private: 280 private:
282 views::View* view_; 281 views::View* view_;
283 282
284 DISALLOW_COPY_AND_ASSIGN(FadeInAnimationDelegate); 283 DISALLOW_COPY_AND_ASSIGN(FadeInAnimationDelegate);
285 }; 284 };
286 285
(...skipping 24 matching lines...) Expand all
311 310
312 } // namespace 311 } // namespace
313 312
314 // AnimationDelegate used when deleting an item. This steadily decreased the 313 // AnimationDelegate used when deleting an item. This steadily decreased the
315 // opacity of the layer as the animation progress. 314 // opacity of the layer as the animation progress.
316 class ShelfView::FadeOutAnimationDelegate : public gfx::AnimationDelegate { 315 class ShelfView::FadeOutAnimationDelegate : public gfx::AnimationDelegate {
317 public: 316 public:
318 FadeOutAnimationDelegate(ShelfView* host, views::View* view) 317 FadeOutAnimationDelegate(ShelfView* host, views::View* view)
319 : shelf_view_(host), 318 : shelf_view_(host),
320 view_(view) {} 319 view_(view) {}
321 virtual ~FadeOutAnimationDelegate() {} 320 ~FadeOutAnimationDelegate() override {}
322 321
323 // AnimationDelegate overrides: 322 // AnimationDelegate overrides:
324 virtual void AnimationProgressed(const Animation* animation) override { 323 void AnimationProgressed(const Animation* animation) override {
325 view_->layer()->SetOpacity(1 - animation->GetCurrentValue()); 324 view_->layer()->SetOpacity(1 - animation->GetCurrentValue());
326 view_->layer()->ScheduleDraw(); 325 view_->layer()->ScheduleDraw();
327 } 326 }
328 virtual void AnimationEnded(const Animation* animation) override { 327 void AnimationEnded(const Animation* animation) override {
329 shelf_view_->OnFadeOutAnimationEnded(); 328 shelf_view_->OnFadeOutAnimationEnded();
330 } 329 }
331 virtual void AnimationCanceled(const Animation* animation) override { 330 void AnimationCanceled(const Animation* animation) override {}
332 }
333 331
334 private: 332 private:
335 ShelfView* shelf_view_; 333 ShelfView* shelf_view_;
336 scoped_ptr<views::View> view_; 334 scoped_ptr<views::View> view_;
337 335
338 DISALLOW_COPY_AND_ASSIGN(FadeOutAnimationDelegate); 336 DISALLOW_COPY_AND_ASSIGN(FadeOutAnimationDelegate);
339 }; 337 };
340 338
341 // AnimationDelegate used to trigger fading an element in. When an item is 339 // AnimationDelegate used to trigger fading an element in. When an item is
342 // inserted this delegate is attached to the animation that expands the size of 340 // inserted this delegate is attached to the animation that expands the size of
343 // the item. When done it kicks off another animation to fade the item in. 341 // the item. When done it kicks off another animation to fade the item in.
344 class ShelfView::StartFadeAnimationDelegate : public gfx::AnimationDelegate { 342 class ShelfView::StartFadeAnimationDelegate : public gfx::AnimationDelegate {
345 public: 343 public:
346 StartFadeAnimationDelegate(ShelfView* host, 344 StartFadeAnimationDelegate(ShelfView* host,
347 views::View* view) 345 views::View* view)
348 : shelf_view_(host), 346 : shelf_view_(host),
349 view_(view) {} 347 view_(view) {}
350 virtual ~StartFadeAnimationDelegate() {} 348 ~StartFadeAnimationDelegate() override {}
351 349
352 // AnimationDelegate overrides: 350 // AnimationDelegate overrides:
353 virtual void AnimationEnded(const Animation* animation) override { 351 void AnimationEnded(const Animation* animation) override {
354 shelf_view_->FadeIn(view_); 352 shelf_view_->FadeIn(view_);
355 } 353 }
356 virtual void AnimationCanceled(const Animation* animation) override { 354 void AnimationCanceled(const Animation* animation) override {
357 view_->layer()->SetOpacity(1.0f); 355 view_->layer()->SetOpacity(1.0f);
358 } 356 }
359 357
360 private: 358 private:
361 ShelfView* shelf_view_; 359 ShelfView* shelf_view_;
362 views::View* view_; 360 views::View* view_;
363 361
364 DISALLOW_COPY_AND_ASSIGN(StartFadeAnimationDelegate); 362 DISALLOW_COPY_AND_ASSIGN(StartFadeAnimationDelegate);
365 }; 363 };
366 364
(...skipping 1560 matching lines...) Expand 10 before | Expand all | Expand 10 after
1927 distance = bounds.x() - coordinate.x(); 1925 distance = bounds.x() - coordinate.x();
1928 break; 1926 break;
1929 case SHELF_ALIGNMENT_TOP: 1927 case SHELF_ALIGNMENT_TOP:
1930 distance = coordinate.y() - bounds.bottom(); 1928 distance = coordinate.y() - bounds.bottom();
1931 break; 1929 break;
1932 } 1930 }
1933 return distance > 0 ? distance : 0; 1931 return distance > 0 ? distance : 0;
1934 } 1932 }
1935 1933
1936 } // namespace ash 1934 } // namespace ash
OLDNEW
« no previous file with comments | « ash/shelf/shelf_view.h ('k') | ash/shelf/shelf_view_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698