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

Unified Diff: athena/home/home_card_gesture_manager.cc

Issue 863033002: Delete athena/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « athena/home/home_card_gesture_manager.h ('k') | athena/home/home_card_gesture_manager_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: athena/home/home_card_gesture_manager.cc
diff --git a/athena/home/home_card_gesture_manager.cc b/athena/home/home_card_gesture_manager.cc
deleted file mode 100644
index e08731789cbe092bcea99521fdb021e9c29b8dfa..0000000000000000000000000000000000000000
--- a/athena/home/home_card_gesture_manager.cc
+++ /dev/null
@@ -1,136 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "athena/home/home_card_gesture_manager.h"
-
-#include "athena/home/home_card_constants.h"
-#include "ui/events/event.h"
-
-namespace athena {
-
-namespace {
-
-// The maximum height, in pixels, of a home card with final state
-// VISIBLE_MINIMIZED.
-const int kMinimizedFinalStateMaxHeight = 50 + kHomeCardMinimizedHeight;
-
-// The maximum height, in pixels, of an initially centered home card with final
-// state VISIBLE_MINIMIZED.
-const int kMinimizedFinalStateMaxHeightInitiallyCentered =
- 90 + kHomeCardMinimizedHeight;
-
-// The minimum height, as a percentage of the screen height, of a home card with
-// final state VISIBLE_CENTERED.
-const float kCenteredFinalStateMinScreenRatio = 0.5f;
-
-// The minimum height, as a percentage of the screen height, of an initially
-// minimized home card with final state VISIBLE_CENTERED.
-const float kCenteredFinalStateMinScreenRatioInitiallyMinimized = 0.3f;
-
-}
-
-HomeCardGestureManager::HomeCardGestureManager(Delegate* delegate,
- const gfx::Rect& screen_bounds)
- : delegate_(delegate),
- original_state_(HomeCard::HIDDEN),
- y_offset_(0),
- last_estimated_height_(0),
- screen_bounds_(screen_bounds) {}
-
-HomeCardGestureManager::~HomeCardGestureManager() {}
-
-void HomeCardGestureManager::ProcessGestureEvent(ui::GestureEvent* event) {
- switch (event->type()) {
- case ui::ET_GESTURE_SCROLL_BEGIN:
- y_offset_ = event->location().y();
- original_state_ = HomeCard::Get()->GetState();
- DCHECK_NE(HomeCard::HIDDEN, original_state_);
- event->SetHandled();
- break;
- case ui::ET_GESTURE_SCROLL_END:
- event->SetHandled();
- delegate_->OnGestureEnded(GetFinalState(), false);
- break;
- case ui::ET_GESTURE_SCROLL_UPDATE:
- UpdateScrollState(*event);
- break;
- case ui::ET_SCROLL_FLING_START: {
- const ui::GestureEventDetails& details = event->details();
- const float kFlingCompletionVelocity = 100.0f;
- HomeCard::State final_state = GetFinalState();
-
- // When the user does not drag far enough to switch the final state, but
- // a fling happens at the end of the gesture, the state should change
- // based on the direction of the fling.
- // Checking |final_state| == |original_state| may cause unexpected results
- // for gestures where the user flings in the opposite direction that they
- // moved the home card (e.g. drag home card up from minimized state and
- // then fling down)
- // TODO(mukai): Consider this case once reported.
- bool is_fling = ::fabs(details.velocity_y()) > kFlingCompletionVelocity;
- if (final_state == original_state_ && is_fling) {
- if (details.velocity_y() > 0) {
- final_state = std::min(HomeCard::VISIBLE_MINIMIZED,
- static_cast<HomeCard::State>(final_state + 1));
- } else {
- final_state = std::max(HomeCard::VISIBLE_CENTERED,
- static_cast<HomeCard::State>(final_state - 1));
- }
- }
- delegate_->OnGestureEnded(final_state, is_fling);
- break;
- }
- default:
- // do nothing.
- break;
- }
-}
-
-HomeCard::State HomeCardGestureManager::GetFinalState() const {
- int max_height = (original_state_ == HomeCard::VISIBLE_CENTERED)
- ? kMinimizedFinalStateMaxHeightInitiallyCentered
- : kMinimizedFinalStateMaxHeight;
- if (last_estimated_height_ < max_height)
- return HomeCard::VISIBLE_MINIMIZED;
-
- float ratio = (original_state_ == HomeCard::VISIBLE_MINIMIZED)
- ? kCenteredFinalStateMinScreenRatioInitiallyMinimized
- : kCenteredFinalStateMinScreenRatio;
- if (last_estimated_height_ < screen_bounds_.height() * ratio)
- return HomeCard::VISIBLE_BOTTOM;
-
- return HomeCard::VISIBLE_CENTERED;
-}
-
-void HomeCardGestureManager::UpdateScrollState(const ui::GestureEvent& event) {
- last_estimated_height_ =
- screen_bounds_.height() - event.root_location().y() + y_offset_;
-
- if (last_estimated_height_ <= kHomeCardMinimizedHeight) {
- delegate_->OnGestureProgressed(
- HomeCard::VISIBLE_BOTTOM, HomeCard::VISIBLE_MINIMIZED, 1.0f);
- return;
- }
-
- HomeCard::State bigger_state = HomeCard::VISIBLE_BOTTOM;
- float smaller_height = kHomeCardMinimizedHeight;
- float bigger_height = kHomeCardHeight;
- if (last_estimated_height_ > kHomeCardHeight) {
- bigger_state = HomeCard::VISIBLE_CENTERED;
- smaller_height = kHomeCardHeight;
- bigger_height = screen_bounds_.height();
- }
-
- // The finger is between two states.
- float progress = (last_estimated_height_ - smaller_height) /
- (bigger_height - smaller_height);
- progress = std::min(1.0f, std::max(0.0f, progress));
-
- delegate_->OnGestureProgressed(
- static_cast<HomeCard::State>(bigger_state + 1),
- bigger_state,
- progress);
-}
-
-} // namespace athena
« no previous file with comments | « athena/home/home_card_gesture_manager.h ('k') | athena/home/home_card_gesture_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698