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

Commit b75eace6 authored by Danesh Mondegarian's avatar Danesh Mondegarian Committed by Gerrit Code Review
Browse files

Re-implement magnetic targets

This reverts commit 8d037a2d.

Change-Id: I26da0ab2c9d65828bf9cd16a82dad7d1c50dc891
parent 21b9406c
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -951,11 +951,6 @@ public class GlowPadView extends View {
                        if (angleMatches && (dist2(tx, ty) > snapDistance2)) {
                            activeTarget = i;
                            activeAngle = (float) -angleRad;
                            break;
                        } else if (dist2(tx, ty) > snapDistance2 &&
                            mMagneticTargets && activeTarget == -1) {
                            activeTarget = 0;
                            activeAngle = (float) -angleRad;
                        }
                    }
                }
@@ -975,6 +970,7 @@ public class GlowPadView extends View {
            switchToState(STATE_TRACKING, x, y);
            updateGlowPosition(x, y);
        }

        if (mActiveTarget != activeTarget) {
            // Defocus the old target
            if (mActiveTarget != -1) {
@@ -992,7 +988,7 @@ public class GlowPadView extends View {
                if (target.hasState(TargetDrawable.STATE_FOCUSED)) {
                    target.setState(TargetDrawable.STATE_FOCUSED);
                }
                if (mMagneticTargets && activeTarget <= 0) {
                if (mMagneticTargets) {
                    updateTargetPosition(activeTarget, mWaveCenterX, mWaveCenterY, activeAngle);
                }
                if (AccessibilityManager.getInstance(mContext).isEnabled()) {
+1 −1
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@
    prvandroid:innerRadius="@*android:dimen/glowpadview_inner_radius"
    prvandroid:snapMargin="@*android:dimen/glowpadview_snap_margin"
    prvandroid:firstItemOffset="@integer/kg_glowpad_rotation_offset"
    prvandroid:magneticTargets="true"
    prvandroid:magneticTargets="false"
    prvandroid:feedbackCount="1"
    prvandroid:vibrationDuration="20"
    prvandroid:glowRadius="@*android:dimen/glowpadview_glow_radius"
+13 −6
Original line number Diff line number Diff line
@@ -109,6 +109,9 @@ public class KeyguardSelectorView extends LinearLayout implements KeyguardSecuri
                } else {
                    target -= 1 + mTargetOffset;
                    if (target < mStoredTargets.length && mStoredTargets[target] != null) {
                        if (mStoredTargets[target].equals(GlowPadView.EMPTY_TARGET)) {
                            mCallback.dismiss(false);
                        } else {
                            try {
                                Intent launchIntent = Intent.parseUri(mStoredTargets[target], 0);
                                mActivityLauncher.launchActivity(launchIntent, false, true, null, null);
@@ -119,6 +122,7 @@ public class KeyguardSelectorView extends LinearLayout implements KeyguardSecuri
                    }
                }
            }
        }

        public void onReleased(View v, int handle) {
            if (!mIsBouncing) {
@@ -308,6 +312,9 @@ public class KeyguardSelectorView extends LinearLayout implements KeyguardSecuri
            final boolean isLandscape = mCreationOrientation == Configuration.ORIENTATION_LANDSCAPE;
            final Drawable blankActiveDrawable = res.getDrawable(R.drawable.ic_lockscreen_target_activated);
            final InsetDrawable activeBack = new InsetDrawable(blankActiveDrawable, 0, 0, 0, 0);
            //Magnetic target replacement
            final Drawable blankInActiveDrawable = res.getDrawable(com.android.internal.R.drawable.ic_lockscreen_lock_pressed);
            final Drawable unlockActiveDrawable = res.getDrawable(com.android.internal.R.drawable.ic_lockscreen_unlock_activated);
            // Shift targets for landscape lockscreen on phones
            mTargetOffset = isLandscape && !mIsScreenLarge ? 2 : 0;
            if (mTargetOffset == 2) {
@@ -385,7 +392,7 @@ public class KeyguardSelectorView extends LinearLayout implements KeyguardSecuri
                            storedDraw.add(new TargetDrawable(res, 0));
                        }
                    } else {
                        storedDraw.add(new TargetDrawable(res, 0));
                        storedDraw.add(new TargetDrawable(res, getLayeredDrawable(unlockActiveDrawable, blankInActiveDrawable, tmpInset, true)));
                    }
                } else {
                    storedDraw.add(new TargetDrawable(res, 0));