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

Side by Side Diff: chrome/browser/ui/tabs/tab_utils.cc

Issue 1865213004: Convert //chrome/browser/ui from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 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 "chrome/browser/ui/tabs/tab_utils.h" 5 #include "chrome/browser/ui/tabs/tab_utils.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/strings/string16.h" 10 #include "base/strings/string16.h"
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 60
61 // Animation that throbs in (towards 1.0) and out (towards 0.0), and ends in the 61 // Animation that throbs in (towards 1.0) and out (towards 0.0), and ends in the
62 // "in" state. 62 // "in" state.
63 class TabRecordingIndicatorAnimation : public gfx::MultiAnimation { 63 class TabRecordingIndicatorAnimation : public gfx::MultiAnimation {
64 public: 64 public:
65 ~TabRecordingIndicatorAnimation() override {} 65 ~TabRecordingIndicatorAnimation() override {}
66 66
67 // Overridden to provide alternating "towards in" and "towards out" behavior. 67 // Overridden to provide alternating "towards in" and "towards out" behavior.
68 double GetCurrentValue() const override; 68 double GetCurrentValue() const override;
69 69
70 static scoped_ptr<TabRecordingIndicatorAnimation> Create(); 70 static std::unique_ptr<TabRecordingIndicatorAnimation> Create();
71 71
72 private: 72 private:
73 TabRecordingIndicatorAnimation(const gfx::MultiAnimation::Parts& parts, 73 TabRecordingIndicatorAnimation(const gfx::MultiAnimation::Parts& parts,
74 const base::TimeDelta interval) 74 const base::TimeDelta interval)
75 : MultiAnimation(parts, interval) {} 75 : MultiAnimation(parts, interval) {}
76 76
77 // Number of times to "toggle throb" the recording and tab capture indicators 77 // Number of times to "toggle throb" the recording and tab capture indicators
78 // when they first appear. 78 // when they first appear.
79 static const int kCaptureIndicatorThrobCycles = 5; 79 static const int kCaptureIndicatorThrobCycles = 5;
80 }; 80 };
81 81
82 double TabRecordingIndicatorAnimation::GetCurrentValue() const { 82 double TabRecordingIndicatorAnimation::GetCurrentValue() const {
83 return current_part_index() % 2 ? 83 return current_part_index() % 2 ?
84 1.0 - MultiAnimation::GetCurrentValue() : 84 1.0 - MultiAnimation::GetCurrentValue() :
85 MultiAnimation::GetCurrentValue(); 85 MultiAnimation::GetCurrentValue();
86 } 86 }
87 87
88 scoped_ptr<TabRecordingIndicatorAnimation> 88 std::unique_ptr<TabRecordingIndicatorAnimation>
89 TabRecordingIndicatorAnimation::Create() { 89 TabRecordingIndicatorAnimation::Create() {
90 MultiAnimation::Parts parts; 90 MultiAnimation::Parts parts;
91 static_assert(kCaptureIndicatorThrobCycles % 2 != 0, 91 static_assert(kCaptureIndicatorThrobCycles % 2 != 0,
92 "odd number of cycles required so animation finishes in showing state"); 92 "odd number of cycles required so animation finishes in showing state");
93 for (int i = 0; i < kCaptureIndicatorThrobCycles; ++i) { 93 for (int i = 0; i < kCaptureIndicatorThrobCycles; ++i) {
94 parts.push_back(MultiAnimation::Part( 94 parts.push_back(MultiAnimation::Part(
95 i % 2 ? kIndicatorFadeOutDurationMs : kIndicatorFadeInDurationMs, 95 i % 2 ? kIndicatorFadeOutDurationMs : kIndicatorFadeInDurationMs,
96 gfx::Tween::EASE_IN)); 96 gfx::Tween::EASE_IN));
97 } 97 }
98 const base::TimeDelta interval = 98 const base::TimeDelta interval =
99 base::TimeDelta::FromMilliseconds(kIndicatorFrameIntervalMs); 99 base::TimeDelta::FromMilliseconds(kIndicatorFrameIntervalMs);
100 scoped_ptr<TabRecordingIndicatorAnimation> animation( 100 std::unique_ptr<TabRecordingIndicatorAnimation> animation(
101 new TabRecordingIndicatorAnimation(parts, interval)); 101 new TabRecordingIndicatorAnimation(parts, interval));
102 animation->set_continuous(false); 102 animation->set_continuous(false);
103 return animation; 103 return animation;
104 } 104 }
105 105
106 } // namespace 106 } // namespace
107 107
108 bool ShouldTabShowFavicon(int capacity, 108 bool ShouldTabShowFavicon(int capacity,
109 bool is_pinned_tab, 109 bool is_pinned_tab,
110 bool is_active_tab, 110 bool is_active_tab,
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
226 case TabAlertState::NONE: 226 case TabAlertState::NONE:
227 case TabAlertState::MEDIA_RECORDING: 227 case TabAlertState::MEDIA_RECORDING:
228 case TabAlertState::TAB_CAPTURING: 228 case TabAlertState::TAB_CAPTURING:
229 case TabAlertState::BLUETOOTH_CONNECTED: 229 case TabAlertState::BLUETOOTH_CONNECTED:
230 return GetTabAlertIndicatorImage(alert_state, button_color); 230 return GetTabAlertIndicatorImage(alert_state, button_color);
231 } 231 }
232 NOTREACHED(); 232 NOTREACHED();
233 return GetTabAlertIndicatorImage(alert_state, button_color); 233 return GetTabAlertIndicatorImage(alert_state, button_color);
234 } 234 }
235 235
236 scoped_ptr<gfx::Animation> CreateTabAlertIndicatorFadeAnimation( 236 std::unique_ptr<gfx::Animation> CreateTabAlertIndicatorFadeAnimation(
237 TabAlertState alert_state) { 237 TabAlertState alert_state) {
238 if (alert_state == TabAlertState::MEDIA_RECORDING || 238 if (alert_state == TabAlertState::MEDIA_RECORDING ||
239 alert_state == TabAlertState::TAB_CAPTURING) { 239 alert_state == TabAlertState::TAB_CAPTURING) {
240 return TabRecordingIndicatorAnimation::Create(); 240 return TabRecordingIndicatorAnimation::Create();
241 } 241 }
242 242
243 // Note: While it seems silly to use a one-part MultiAnimation, it's the only 243 // Note: While it seems silly to use a one-part MultiAnimation, it's the only
244 // gfx::Animation implementation that lets us control the frame interval. 244 // gfx::Animation implementation that lets us control the frame interval.
245 gfx::MultiAnimation::Parts parts; 245 gfx::MultiAnimation::Parts parts;
246 const bool is_for_fade_in = (alert_state != TabAlertState::NONE); 246 const bool is_for_fade_in = (alert_state != TabAlertState::NONE);
247 parts.push_back(gfx::MultiAnimation::Part( 247 parts.push_back(gfx::MultiAnimation::Part(
248 is_for_fade_in ? kIndicatorFadeInDurationMs : kIndicatorFadeOutDurationMs, 248 is_for_fade_in ? kIndicatorFadeInDurationMs : kIndicatorFadeOutDurationMs,
249 gfx::Tween::EASE_IN)); 249 gfx::Tween::EASE_IN));
250 const base::TimeDelta interval = 250 const base::TimeDelta interval =
251 base::TimeDelta::FromMilliseconds(kIndicatorFrameIntervalMs); 251 base::TimeDelta::FromMilliseconds(kIndicatorFrameIntervalMs);
252 scoped_ptr<gfx::MultiAnimation> animation( 252 std::unique_ptr<gfx::MultiAnimation> animation(
253 new gfx::MultiAnimation(parts, interval)); 253 new gfx::MultiAnimation(parts, interval));
254 animation->set_continuous(false); 254 animation->set_continuous(false);
255 return std::move(animation); 255 return std::move(animation);
256 } 256 }
257 257
258 base::string16 AssembleTabTooltipText(const base::string16& title, 258 base::string16 AssembleTabTooltipText(const base::string16& title,
259 TabAlertState alert_state) { 259 TabAlertState alert_state) {
260 if (alert_state == TabAlertState::NONE) 260 if (alert_state == TabAlertState::NONE)
261 return title; 261 return title;
262 262
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
375 const std::vector<int>& indices) { 375 const std::vector<int>& indices) {
376 for (std::vector<int>::const_iterator i = indices.begin(); i != indices.end(); 376 for (std::vector<int>::const_iterator i = indices.begin(); i != indices.end();
377 ++i) { 377 ++i) {
378 if (!tab_strip.GetWebContentsAt(*i)->IsAudioMuted()) 378 if (!tab_strip.GetWebContentsAt(*i)->IsAudioMuted())
379 return false; 379 return false;
380 } 380 }
381 return true; 381 return true;
382 } 382 }
383 383
384 } // namespace chrome 384 } // namespace chrome
OLDNEW
« no previous file with comments | « chrome/browser/ui/tabs/tab_utils.h ('k') | chrome/browser/ui/task_manager/task_manager_table_model.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698