summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRandall Rushing <randall.rushing@gmail.com>2016-08-10 00:44:46 -0700
committerLorDClockaN <lordclockan@gmail.com>2016-08-15 08:57:26 +0200
commit66a635c20e07943a409fcfac7a1d6f5045348bb4 (patch)
tree71a594c731d24b0148544b52c660c72da4159ab2
parenta490da6c9f6c1a0f512f32c25857db8dc309a11b (diff)
Fling: Trails width configuration [3/3]mm6.0
Change-Id: Iaa82e0a79dec2ea69ea761c190b36580e9e85023
-rw-r--r--src/com/android/systemui/navigation/fling/FlingTrails.java22
-rw-r--r--src/com/android/systemui/navigation/fling/FlingView.java9
2 files changed, 28 insertions, 3 deletions
diff --git a/src/com/android/systemui/navigation/fling/FlingTrails.java b/src/com/android/systemui/navigation/fling/FlingTrails.java
index f1a5ea1..3ef538b 100644
--- a/src/com/android/systemui/navigation/fling/FlingTrails.java
+++ b/src/com/android/systemui/navigation/fling/FlingTrails.java
@@ -23,6 +23,8 @@
package com.android.systemui.navigation.fling;
+import com.android.internal.utils.du.DUActionUtils;
+import com.orange.dgil.trail.android.AndroidMetrics;
import com.orange.dgil.trail.android.animation.IAnimListener;
import com.orange.dgil.trail.android.impl.TrailDrawer;
@@ -34,8 +36,14 @@ import android.view.MotionEvent;
import android.view.View;
public class FlingTrails implements View.OnTouchListener, IAnimListener {
+ public static final String TAG = FlingTrails.class.getSimpleName();
+ public static final int TRAIL_WIDTH_DEFAULT = 15;
+
private static final int ANIM_DELAY = 100;
private static final int ANIM_DURATION = 400;
+ // trail width constraints, in density pixels
+ private static final int TRAIL_WIDTH_MIN = 1;
+ private static final int TRAIL_WIDTH_MAX = 25;
private TrailDrawer mTrailDrawer;
private boolean mEnabled;
private View mHost;
@@ -58,9 +66,6 @@ public class FlingTrails implements View.OnTouchListener, IAnimListener {
if (w == 0 || h == 0) {
return;
}
- //int dimen = w > h ? h : w;
- //dimen = Math.round(dimen * SIZE_RELATIVE_TO_BAR);
- //mTrailDrawer.getTrailOptions().setTrailWidthMicrometers(dimen);
mTrailDrawer.clear();
}
@@ -83,6 +88,13 @@ public class FlingTrails implements View.OnTouchListener, IAnimListener {
}
}
+ public void setTrailWidth(int dp) {
+ mTrailDrawer.clear();
+ int px = DUActionUtils.ConvertDpToPixelAsInt(validateTrailWidthRange(dp), mHost.getContext());
+ int microns = AndroidMetrics.get(mHost.getContext()).pixelsToMicrometers(px);
+ mTrailDrawer.getTrailOptions().setTrailWidthMicrometers(microns);
+ }
+
public void onDraw(Canvas canvas) {
if (mEnabled) {
mTrailDrawer.draw(canvas);
@@ -125,4 +137,8 @@ public class FlingTrails implements View.OnTouchListener, IAnimListener {
private void onMove(float x, float y) {
mTrailDrawer.touchMove((int) x, (int) y);
}
+
+ private static int validateTrailWidthRange(int dp) {
+ return (int) Math.max(TRAIL_WIDTH_MIN, Math.min(TRAIL_WIDTH_MAX, dp));
+ }
}
diff --git a/src/com/android/systemui/navigation/fling/FlingView.java b/src/com/android/systemui/navigation/fling/FlingView.java
index ef46e95..272ee02 100644
--- a/src/com/android/systemui/navigation/fling/FlingView.java
+++ b/src/com/android/systemui/navigation/fling/FlingView.java
@@ -71,6 +71,7 @@ public class FlingView extends BaseNavigationBar {
sUris.add(Settings.Secure.getUriFor(Settings.Secure.FLING_RIPPLE_COLOR));
sUris.add(Settings.Secure.getUriFor(Settings.Secure.FLING_TRAILS_ENABLED));
sUris.add(Settings.Secure.getUriFor(Settings.Secure.FLING_TRAILS_COLOR));
+ sUris.add(Settings.Secure.getUriFor(Settings.Secure.FLING_TRAILS_WIDTH));
}
private FlingActionHandler mActionHandler;
@@ -252,6 +253,13 @@ public class FlingView extends BaseNavigationBar {
mTrails.setTrailColor(color);
}
+ private void updateTrailsWidth() {
+ int width = Settings.Secure.getIntForUser(mContext.getContentResolver(),
+ Settings.Secure.FLING_TRAILS_WIDTH, FlingTrails.TRAIL_WIDTH_DEFAULT,
+ UserHandle.USER_CURRENT);
+ mTrails.setTrailWidth(width);
+ }
+
@Override
public void updateNavbarThemedResources(Resources res) {
// mRipple.updateResources(res);
@@ -281,6 +289,7 @@ public class FlingView extends BaseNavigationBar {
updateRippleColor();
updateTrailsEnabled();
updateTrailsColor();
+ updateTrailsWidth();
int lpTimeout = Settings.Secure.getIntForUser(mContext.getContentResolver(),
Settings.Secure.FLING_LONGPRESS_TIMEOUT, FlingGestureDetectorPriv.LP_TIMEOUT_MAX, UserHandle.USER_CURRENT);
mGestureDetector.setLongPressTimeout(lpTimeout);