CameraUtil.showErrorAndFinish(this, R.string.cannot_connect_camera);
}
+ @Override
+ public void onFilmstripHidden() {
+ setSystemBarsVisibility(false);
+ }
+
private class MainHandler extends Handler {
public MainHandler(Looper looper) {
super(looper);
import android.widget.FrameLayout;
import com.android.camera.LocationManager;
+import com.android.camera.ui.FilmstripLayout;
import com.android.camera.ui.ModeListView;
import com.android.camera.SettingsController;
import com.android.camera.settings.SettingsManager;
/**
* The controller at app level.
*/
-public interface AppController {
+public interface AppController extends FilmstripLayout.Listener {
/**
* An interface which defines the shutter events listener.
mAppRootView = appRootView;
mFilmstripLayout = (FilmstripLayout) appRootView.findViewById(R.id.filmstrip_layout);
+ mFilmstripLayout.setListener(controller);
mCameraRootView = (FrameLayout) appRootView.findViewById(R.id.camera_app_root);
mModeTransitionView = (ModeTransitionView)
mAppRootView.findViewById(R.id.mode_transition_view);
* filmstrip.
*/
public class FilmstripLayout extends FrameLayout {
+
+ // TODO: Remove this quick hack.
+ public interface Listener {
+ void onFilmstripHidden();
+ }
+
private static final long DEFAULT_DURATION_MS = 200;
private static final int ANIM_DIRECTION_IN = 1;
private static final int ANIM_DIRECTION_OUT = 2;
private FilmstripGestureRecognizer mGestureRecognizer;
private FilmstripGestureRecognizer.Listener mFilmstripGestureListener;
private final ValueAnimator mFilmstripAnimator = ValueAnimator.ofFloat(null);
+ private Listener mListener;
private int mSwipeTrend;
private MyBackgroundDrawable mBackgroundDrawable;
private int mAnimationDirection;
if (mFilmstripView.getTranslationX() != 0f) {
mFilmstripView.getController().goToFilmStrip();
setVisibility(INVISIBLE);
+ // TODO: Remove this quick hack.
+ if (mListener != null) {
+ mListener.onFilmstripHidden();
+ }
setHiding(false);
} else {
setHiding(true);
mFilmstripAnimator.addListener(mFilmstripAnimatorListener);
}
+ public void setListener(Listener l) {
+ mListener = l;
+ }
+
@Override
public void onLayout(boolean changed, int l, int t, int r, int b) {
super.onLayout(changed, l, t, r, b);