Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 98751ac6 authored by Selim Cinek's avatar Selim Cinek Committed by Android (Google) Code Review
Browse files

Merge "Introduced fading views for the camera interaction on the lockscreen." into lmp-preview-dev

parents c746e1f6 1aed9736
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -130,6 +130,11 @@ public class KeyguardStatusView extends GridLayout {
        }
        }
    }
    }


    @Override
    public boolean hasOverlappingRendering() {
        return false;
    }

    private void updateOwnerInfo() {
    private void updateOwnerInfo() {
        String ownerInfo = getOwnerInfo();
        String ownerInfo = getOwnerInfo();
        if (!TextUtils.isEmpty(ownerInfo)) {
        if (!TextUtils.isEmpty(ownerInfo)) {
+44 −6
Original line number Original line Diff line number Diff line
@@ -246,7 +246,9 @@ public class KeyguardPageSwipeHelper {
    private void startHintTranslationAnimations(float target, long duration,
    private void startHintTranslationAnimations(float target, long duration,
            Interpolator interpolator) {
            Interpolator interpolator) {
        ArrayList<View> targetViews = mCallback.getTranslationViews();
        ArrayList<View> targetViews = mCallback.getTranslationViews();
        for (View targetView : targetViews) {
        int length = targetViews.size();
        for (int i = 0; i < length; i++) {
            View targetView = targetViews.get(i);
            targetView.animate()
            targetView.animate()
                    .setDuration(duration)
                    .setDuration(duration)
                    .setInterpolator(interpolator)
                    .setInterpolator(interpolator)
@@ -259,8 +261,16 @@ public class KeyguardPageSwipeHelper {
    }
    }


    private void cancelAnimations() {
    private void cancelAnimations() {
        ArrayList<View> targetViews = mCallback.getTranslationViews();
        ArrayList<View> translatingViews = mCallback.getTranslationViews();
        for (View target : targetViews) {
        int length = translatingViews.size();
        for (int i = 0; i < length; i++) {
            View target = translatingViews.get(i);
            target.animate().cancel();
        }
        ArrayList<View> fadingViews = mCallback.getFadingViews();
        length = fadingViews.size();
        for (int i = 0; i < length; i++) {
            View target = fadingViews.get(i);
            target.animate().cancel();
            target.animate().cancel();
        }
        }
        View targetView = mTranslation > 0 ? mLeftIcon : mRightIcon;
        View targetView = mTranslation > 0 ? mLeftIcon : mRightIcon;
@@ -291,6 +301,11 @@ public class KeyguardPageSwipeHelper {
        // translation Animation
        // translation Animation
        startTranslationAnimations(vel, target);
        startTranslationAnimations(vel, target);


        // fade animations
        if (snapBack) {
            startFadeInAnimations();
        }

        // animate left / right icon
        // animate left / right icon
        startIconAnimation(vel, snapBack, target);
        startIconAnimation(vel, snapBack, target);


@@ -346,9 +361,20 @@ public class KeyguardPageSwipeHelper {
        mSwipeAnimator = animator;
        mSwipeAnimator = animator;
    }
    }


    private void startFadeInAnimations() {
        ArrayList<View> fadingViews = mCallback.getFadingViews();
        int length = fadingViews.size();
        for (int i = 0; i < length; i++) {
            View targetView = fadingViews.get(i);
            targetView.animate().alpha(1.0f);
        }
    }

    private void startTranslationAnimations(float vel, float target) {
    private void startTranslationAnimations(float vel, float target) {
        ArrayList<View> targetViews = mCallback.getTranslationViews();
        ArrayList<View> targetViews = mCallback.getTranslationViews();
        for (View targetView : targetViews) {
        int length = targetViews.size();
        for (int i = 0; i < length; i++) {
            View targetView = targetViews.get(i);
            ViewPropertyAnimator animator = targetView.animate();
            ViewPropertyAnimator animator = targetView.animate();
            mFlingAnimationUtils.apply(animator, mTranslation, target, vel);
            mFlingAnimationUtils.apply(animator, mTranslation, target, vel);
            animator.translationX(target);
            animator.translationX(target);
@@ -375,8 +401,18 @@ public class KeyguardPageSwipeHelper {
        translation = leftSwipePossible() ? translation : Math.min(0, translation);
        translation = leftSwipePossible() ? translation : Math.min(0, translation);
        if (translation != mTranslation || isReset) {
        if (translation != mTranslation || isReset) {
            ArrayList<View> translatedViews = mCallback.getTranslationViews();
            ArrayList<View> translatedViews = mCallback.getTranslationViews();
            for (View view : translatedViews) {
            int length = translatedViews.size();
                view.setTranslationX(translation);
            for (int i = 0; i < length; i++) {
                View target = translatedViews.get(i);
                target.setTranslationX(translation);
            }
            float targetAlpha = 1.0f - Math.abs(translation / mMinTranslationAmount);
            targetAlpha = Math.max(0.0f, targetAlpha);
            ArrayList<View> fadingViews = mCallback.getFadingViews();
            length = fadingViews.size();
            for (int i = 0; i < length; i++) {
                View view = fadingViews.get(i);
                view.setAlpha(targetAlpha);
            }
            }
            if (translation == 0.0f) {
            if (translation == 0.0f) {
                boolean animate = !isReset;
                boolean animate = !isReset;
@@ -494,6 +530,8 @@ public class KeyguardPageSwipeHelper {


        ArrayList<View> getTranslationViews();
        ArrayList<View> getTranslationViews();


        ArrayList<View> getFadingViews();

        View getLeftIcon();
        View getLeftIcon();


        View getCenterIcon();
        View getCenterIcon();
+7 −1
Original line number Original line Diff line number Diff line
@@ -108,6 +108,7 @@ public class NotificationPanelView extends PanelView implements
    private KeyguardBottomAreaView mKeyguardBottomArea;
    private KeyguardBottomAreaView mKeyguardBottomArea;
    private boolean mBlockTouches;
    private boolean mBlockTouches;
    private ArrayList<View> mSwipeTranslationViews = new ArrayList<>();
    private ArrayList<View> mSwipeTranslationViews = new ArrayList<>();
    private ArrayList<View> mSwipeFadingViews = new ArrayList<>();


    public NotificationPanelView(Context context, AttributeSet attrs) {
    public NotificationPanelView(Context context, AttributeSet attrs) {
        super(context, attrs);
        super(context, attrs);
@@ -152,7 +153,7 @@ public class NotificationPanelView extends PanelView implements
                android.R.interpolator.fast_out_linear_in);
                android.R.interpolator.fast_out_linear_in);
        mKeyguardBottomArea = (KeyguardBottomAreaView) findViewById(R.id.keyguard_bottom_area);
        mKeyguardBottomArea = (KeyguardBottomAreaView) findViewById(R.id.keyguard_bottom_area);
        mSwipeTranslationViews.add(mNotificationStackScroller);
        mSwipeTranslationViews.add(mNotificationStackScroller);
        mSwipeTranslationViews.add(mKeyguardStatusView);
        mSwipeFadingViews.add(mKeyguardStatusView);
        mPageSwiper = new KeyguardPageSwipeHelper(this, getContext());
        mPageSwiper = new KeyguardPageSwipeHelper(this, getContext());
    }
    }


@@ -957,6 +958,11 @@ public class NotificationPanelView extends PanelView implements
        return mSwipeTranslationViews;
        return mSwipeTranslationViews;
    }
    }


    @Override
    public ArrayList<View> getFadingViews() {
        return mSwipeFadingViews;
    }

    @Override
    @Override
    public View getLeftIcon() {
    public View getLeftIcon() {
        return getLayoutDirection() == LAYOUT_DIRECTION_RTL
        return getLayoutDirection() == LAYOUT_DIRECTION_RTL