Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "athena/home/home_card_impl.h" | 5 #include "athena/home/home_card_impl.h" |
| 6 | 6 |
| 7 #include <cmath> | 7 #include <cmath> |
| 8 #include <limits> | 8 #include <limits> |
| 9 | 9 |
| 10 #include "athena/common/container_priorities.h" | 10 #include "athena/common/container_priorities.h" |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 150 // the home card. | 150 // the home card. |
| 151 // TODO(mukai): make it so after the detailed UI has been fixed. | 151 // TODO(mukai): make it so after the detailed UI has been fixed. |
| 152 main_view_ = new AthenaStartPageView(view_delegate); | 152 main_view_ = new AthenaStartPageView(view_delegate); |
| 153 AddChildView(main_view_); | 153 AddChildView(main_view_); |
| 154 } | 154 } |
| 155 | 155 |
| 156 void SetStateProgress(HomeCard::State from_state, | 156 void SetStateProgress(HomeCard::State from_state, |
| 157 HomeCard::State to_state, | 157 HomeCard::State to_state, |
| 158 float progress) { | 158 float progress) { |
| 159 // TODO(mukai): not clear the focus, but simply close the virtual keyboard. | 159 // TODO(mukai): not clear the focus, but simply close the virtual keyboard. |
| 160 if (from_state != HomeCard::VISIBLE_CENTERED || | 160 GetFocusManager()->ClearFocus(); |
|
Jun Mukai
2014/09/02 03:51:42
Not sure why how this change is related to the bug
pkotwicz
2014/09/02 04:41:32
This change is related to this CL given that if |f
Jun Mukai
2014/09/02 08:22:42
Hmm, that sounds a bug then.
In case the user drag
| |
| 161 to_state != HomeCard::VISIBLE_CENTERED) { | 161 |
| 162 GetFocusManager()->ClearFocus(); | |
| 163 } | |
| 164 if (from_state == HomeCard::VISIBLE_CENTERED) | 162 if (from_state == HomeCard::VISIBLE_CENTERED) |
| 165 main_view_->SetLayoutState(1.0f - progress); | 163 main_view_->SetLayoutState(1.0f - progress); |
| 166 else if (to_state == HomeCard::VISIBLE_CENTERED) | 164 else if (to_state == HomeCard::VISIBLE_CENTERED) |
| 167 main_view_->SetLayoutState(progress); | 165 main_view_->SetLayoutState(progress); |
| 168 else | 166 else |
| 169 SetState(to_state); | 167 SetState(to_state); |
| 170 } | 168 } |
| 171 | 169 |
| 172 void SetState(HomeCard::State state) { | 170 void SetState(HomeCard::State state) { |
| 173 if (state == HomeCard::VISIBLE_CENTERED) | 171 if (state == HomeCard::VISIBLE_CENTERED) |
| (...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 395 state_ = final_state; | 393 state_ = final_state; |
| 396 home_card_view_->SetStateWithAnimation(state_); | 394 home_card_view_->SetStateWithAnimation(state_); |
| 397 layout_manager_->Layout(true); | 395 layout_manager_->Layout(true); |
| 398 } | 396 } |
| 399 } | 397 } |
| 400 | 398 |
| 401 void HomeCardImpl::OnGestureProgressed( | 399 void HomeCardImpl::OnGestureProgressed( |
| 402 State from_state, State to_state, float progress) { | 400 State from_state, State to_state, float progress) { |
| 403 if (from_state == VISIBLE_MINIMIZED || to_state == VISIBLE_MINIMIZED) { | 401 if (from_state == VISIBLE_MINIMIZED || to_state == VISIBLE_MINIMIZED) { |
| 404 minimized_home_->layer()->SetVisible(true); | 402 minimized_home_->layer()->SetVisible(true); |
| 405 float opacity = | 403 float opacity = 1.0f; |
| 406 (from_state == VISIBLE_MINIMIZED) ? 1.0f - progress : progress; | 404 if (from_state != to_state) |
| 405 opacity = (from_state == VISIBLE_MINIMIZED) ? 1.0f - progress : progress; | |
|
Jun Mukai
2014/09/02 03:51:42
Can you fix home_card_gesture_manager side in this
pkotwicz
2014/09/02 04:41:32
I have now fixed this in home_card_gesture_manager
| |
| 407 minimized_home_->layer()->SetOpacity(opacity); | 406 minimized_home_->layer()->SetOpacity(opacity); |
| 408 } | 407 } |
| 409 gfx::Rect screen_bounds = | 408 gfx::Rect screen_bounds = |
| 410 home_card_widget_->GetNativeWindow()->GetRootWindow()->bounds(); | 409 home_card_widget_->GetNativeWindow()->GetRootWindow()->bounds(); |
| 411 home_card_widget_->SetBounds(gfx::Tween::RectValueBetween( | 410 home_card_widget_->SetBounds(gfx::Tween::RectValueBetween( |
| 412 progress, | 411 progress, |
| 413 GetBoundsForState(screen_bounds, from_state), | 412 GetBoundsForState(screen_bounds, from_state), |
| 414 GetBoundsForState(screen_bounds, to_state))); | 413 GetBoundsForState(screen_bounds, to_state))); |
| 415 | 414 |
| 416 home_card_view_->SetStateProgress(from_state, to_state, progress); | 415 home_card_view_->SetStateProgress(from_state, to_state, progress); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 453 instance = NULL; | 452 instance = NULL; |
| 454 } | 453 } |
| 455 | 454 |
| 456 // static | 455 // static |
| 457 HomeCard* HomeCard::Get() { | 456 HomeCard* HomeCard::Get() { |
| 458 DCHECK(instance); | 457 DCHECK(instance); |
| 459 return instance; | 458 return instance; |
| 460 } | 459 } |
| 461 | 460 |
| 462 } // namespace athena | 461 } // namespace athena |
| OLD | NEW |