disable startup shimmy on sd card error
bug: 15841887
Change-Id: If1cbb463a9de916b9fdd2926d8b47db04934535c
diff --git a/src/com/android/camera/app/CameraAppUI.java b/src/com/android/camera/app/CameraAppUI.java
index 962a253..ac77af7 100644
--- a/src/com/android/camera/app/CameraAppUI.java
+++ b/src/com/android/camera/app/CameraAppUI.java
@@ -1025,7 +1025,9 @@
@Override
public void run() {
mModeTransitionView.hideModeCover(null);
- showShimmyDelayed();
+ if (!mDisableAllUserInteractions) {
+ showShimmyDelayed();
+ }
}
};
mModeCoverState = COVER_SHOWN;
@@ -1402,6 +1404,7 @@
disableModeOptions();
setShutterButtonEnabled(false);
setSwipeEnabled(false);
+ mModeListView.hideAnimated();
} else {
enableModeOptions();
setShutterButtonEnabled(true);
diff --git a/src/com/android/camera/ui/ModeListView.java b/src/com/android/camera/ui/ModeListView.java
index 63901db..98c0c2e 100644
--- a/src/com/android/camera/ui/ModeListView.java
+++ b/src/com/android/camera/ui/ModeListView.java
@@ -276,6 +276,15 @@
// Do nothing.
}
+ /**
+ * Hide the mode drawer (with animation, if supported)
+ * and switch to fully hidden state.
+ * Default is to simply call {@link #hide()}.
+ */
+ public void hideAnimated() {
+ hide();
+ }
+
/***************GestureListener implementation*****************/
@Override
public boolean onDown(MotionEvent e) {
@@ -742,6 +751,16 @@
mCurrentStateManager.setCurrentState(new FullyHiddenState());
}
+ @Override
+ public void hideAnimated() {
+ cancelAnimation();
+ animateListToWidth(0).addListener(new AnimatorListenerAdapter() {
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ mCurrentStateManager.setCurrentState(new FullyHiddenState());
+ }
+ });
+ }
}
/**
@@ -1440,6 +1459,20 @@
}
/**
+ * Hide the mode list immediately (provided the current state allows it).
+ */
+ public void hide() {
+ mCurrentStateManager.getCurrentState().hide();
+ }
+
+ /**
+ * Hide the mode list with an animation.
+ */
+ public void hideAnimated() {
+ mCurrentStateManager.getCurrentState().hideAnimated();
+ }
+
+ /**
* Resets the visible width of all the mode selectors to 0.
*/
private void resetModeSelectors() {