summaryrefslogtreecommitdiffstats
path: root/app/multi_animation.cc
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-19 20:46:07 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-19 20:46:07 +0000
commit7edf5b5462727c06c0232b541c5db549f176d84a (patch)
tree4a4ac06d13b40e52180ecd6a1fa7c9be977c14f3 /app/multi_animation.cc
parent948ab987c4bdc1a63a54434276d68bc68b3a0e07 (diff)
downloadchromium_src-7edf5b5462727c06c0232b541c5db549f176d84a.zip
chromium_src-7edf5b5462727c06c0232b541c5db549f176d84a.tar.gz
chromium_src-7edf5b5462727c06c0232b541c5db549f176d84a.tar.bz2
Tweaks the pinned background tab title change animation per Nicholas's
request. BUG=none TEST=none Review URL: http://codereview.chromium.org/3041006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52949 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'app/multi_animation.cc')
-rw-r--r--app/multi_animation.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/app/multi_animation.cc b/app/multi_animation.cc
index 703ed85..14cd7f9 100644
--- a/app/multi_animation.cc
+++ b/app/multi_animation.cc
@@ -9,8 +9,10 @@ static const int kDefaultInterval = 20;
static int TotalTime(const MultiAnimation::Parts& parts) {
int time_ms = 0;
- for (size_t i = 0; i < parts.size(); ++i)
+ for (size_t i = 0; i < parts.size(); ++i) {
+ DCHECK(parts[i].end_time_ms - parts[i].start_time_ms >= parts[i].time_ms);
time_ms += parts[i].time_ms;
+ }
return time_ms;
}
@@ -30,8 +32,9 @@ void MultiAnimation::Step(base::TimeTicks time_now) {
int delta = static_cast<int>((time_now - start_time()).InMilliseconds() %
cycle_time_ms_);
const Part& part = GetPart(&delta, &current_part_index_);
- double percent = static_cast<double>(delta) /
- static_cast<double>(part.time_ms);
+ double percent = static_cast<double>(delta + part.start_time_ms) /
+ static_cast<double>(part.end_time_ms);
+ DCHECK(percent <= 1);
current_value_ = Tween::CalculateValue(part.type, percent);
if ((current_value_ != last_value || current_part_index_ != last_index) &&