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

Side by Side Diff: cc/input/top_controls_manager.cc

Issue 139563004: Notification on finish handling of top control gesture (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 11 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
« no previous file with comments | « cc/input/input_handler.h ('k') | cc/input/top_controls_manager_client.h » ('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 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/top_controls_manager.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "cc/animation/keyframed_animation_curve.h" 10 #include "cc/animation/keyframed_animation_curve.h"
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 121
122 ResetAnimations(); 122 ResetAnimations();
123 123
124 gfx::Vector2dF applied_delta(0.f, old_offset - controls_top_offset_); 124 gfx::Vector2dF applied_delta(0.f, old_offset - controls_top_offset_);
125 return pending_delta - applied_delta; 125 return pending_delta - applied_delta;
126 } 126 }
127 127
128 void TopControlsManager::ScrollEnd() { 128 void TopControlsManager::ScrollEnd() {
129 DCHECK(!pinch_gesture_active_); 129 DCHECK(!pinch_gesture_active_);
130 StartAnimationIfNecessary(); 130 StartAnimationIfNecessary();
131 if (!top_controls_animation_)
132 client_->DidFinishTopControlsGesture();
131 } 133 }
132 134
133 void TopControlsManager::PinchBegin() { 135 void TopControlsManager::PinchBegin() {
134 DCHECK(!pinch_gesture_active_); 136 DCHECK(!pinch_gesture_active_);
135 pinch_gesture_active_ = true; 137 pinch_gesture_active_ = true;
136 StartAnimationIfNecessary(); 138 StartAnimationIfNecessary();
137 } 139 }
138 140
139 void TopControlsManager::PinchEnd() { 141 void TopControlsManager::PinchEnd() {
140 DCHECK(pinch_gesture_active_); 142 DCHECK(pinch_gesture_active_);
(...skipping 25 matching lines...) Expand all
166 SetControlsTopOffset(top_controls_animation_->GetValue(time)); 168 SetControlsTopOffset(top_controls_animation_->GetValue(time));
167 169
168 if (IsAnimationCompleteAtTime(monotonic_time)) 170 if (IsAnimationCompleteAtTime(monotonic_time))
169 ResetAnimations(); 171 ResetAnimations();
170 172
171 gfx::Vector2dF scroll_delta(0.f, controls_top_offset_ - old_offset); 173 gfx::Vector2dF scroll_delta(0.f, controls_top_offset_ - old_offset);
172 return scroll_delta; 174 return scroll_delta;
173 } 175 }
174 176
175 void TopControlsManager::ResetAnimations() { 177 void TopControlsManager::ResetAnimations() {
176 if (top_controls_animation_) 178 if (top_controls_animation_) {
177 top_controls_animation_.reset(); 179 top_controls_animation_.reset();
180 client_->DidFinishTopControlsGesture();
181 }
178 182
179 animation_direction_ = NO_ANIMATION; 183 animation_direction_ = NO_ANIMATION;
180 } 184 }
181 185
182 void TopControlsManager::SetupAnimation(AnimationDirection direction) { 186 void TopControlsManager::SetupAnimation(AnimationDirection direction) {
183 DCHECK(direction != NO_ANIMATION); 187 DCHECK(direction != NO_ANIMATION);
184 188
185 if (direction == SHOWING_CONTROLS && controls_top_offset_ == 0) 189 if (direction == SHOWING_CONTROLS && controls_top_offset_ == 0)
186 return; 190 return;
187 191
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 246
243 if ((animation_direction_ == SHOWING_CONTROLS && new_offset >= 0) || 247 if ((animation_direction_ == SHOWING_CONTROLS && new_offset >= 0) ||
244 (animation_direction_ == HIDING_CONTROLS 248 (animation_direction_ == HIDING_CONTROLS
245 && new_offset <= -top_controls_height_)) { 249 && new_offset <= -top_controls_height_)) {
246 return true; 250 return true;
247 } 251 }
248 return false; 252 return false;
249 } 253 }
250 254
251 } // namespace cc 255 } // namespace cc
OLDNEW
« no previous file with comments | « cc/input/input_handler.h ('k') | cc/input/top_controls_manager_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698