summaryrefslogtreecommitdiffstats
path: root/core/java/com/android/internal/widget/RotarySelector.java
diff options
context:
space:
mode:
authorJim Miller <jaggies@google.com>2009-10-05 13:00:58 -0700
committerJim Miller <jaggies@google.com>2009-10-06 13:20:46 -0700
commit5037e57fd43bccf79be80bc140b33d1fa69abe13 (patch)
tree1b865e1d5d516d31a941134f1f11631229ec734c /core/java/com/android/internal/widget/RotarySelector.java
parent5c8dba21bf5e6a54f848c2e7f46dc86c27a09102 (diff)
downloadframeworks_base-5037e57fd43bccf79be80bc140b33d1fa69abe13.zip
frameworks_base-5037e57fd43bccf79be80bc140b33d1fa69abe13.tar.gz
frameworks_base-5037e57fd43bccf79be80bc140b33d1fa69abe13.tar.bz2
Fix for 2161835: Tweaks to rotary lock screen:
- Make inactive dimples dim. - When an item is grabbed, make all other dimples dim.
Diffstat (limited to 'core/java/com/android/internal/widget/RotarySelector.java')
-rw-r--r--core/java/com/android/internal/widget/RotarySelector.java82
1 files changed, 37 insertions, 45 deletions
diff --git a/core/java/com/android/internal/widget/RotarySelector.java b/core/java/com/android/internal/widget/RotarySelector.java
index 0998744..e103a5b 100644
--- a/core/java/com/android/internal/widget/RotarySelector.java
+++ b/core/java/com/android/internal/widget/RotarySelector.java
@@ -48,6 +48,7 @@ public class RotarySelector extends View {
private static final String LOG_TAG = "RotarySelector";
private static final boolean DBG = false;
+ private static final boolean VISUAL_DEBUG = false;
// Listener for onDialTrigger() callbacks.
private OnDialTriggerListener mOnDialTriggerListener;
@@ -290,10 +291,12 @@ public class RotarySelector extends View {
final int width = getWidth();
- // DEBUG: draw bounding box around widget
-// mPaint.setColor(Color.RED);
-// mPaint.setStyle(Paint.Style.STROKE);
-// canvas.drawRect(0, 0, width, getHeight(), mPaint);
+ if (VISUAL_DEBUG) {
+ // draw bounding box around widget
+ mPaint.setColor(0xffff0000);
+ mPaint.setStyle(Paint.Style.STROKE);
+ canvas.drawRect(0, 0, width, getHeight(), mPaint);
+ }
final int height = getHeight();
@@ -336,21 +339,18 @@ public class RotarySelector extends View {
final int bgTop = isHoriz() ?
height - bgHeight:
width - bgHeight;
- // DEBUG: draw circle bounding arc drawable: good sanity check we're doing the math
- // correctly
-// float or = OUTER_ROTARY_RADIUS_DIP * mDensity;
-// final int vOffset = mBackgroundWidth - height;
-// final int midX = isHoriz() ?
-// width / 2 :
-// mBackgroundWidth / 2 - vOffset;
-// if (isHoriz()) {
-// canvas.drawCircle(midX, or + bgTop, or, mPaint);
-// } else {
-// canvas.drawCircle(or + bgTop, midX, or, mPaint);
-// }
-
- // dimple selection
- Bitmap dimpleBitmap = mGrabbedState == NOTHING_GRABBED ? mDimple : mDimpleDim;
+
+ if (VISUAL_DEBUG) {
+ // draw circle bounding arc drawable: good sanity check we're doing the math correctly
+ float or = OUTER_ROTARY_RADIUS_DIP * mDensity;
+ final int vOffset = mBackgroundWidth - height;
+ final int midX = isHoriz() ? width / 2 : mBackgroundWidth / 2 - vOffset;
+ if (isHoriz()) {
+ canvas.drawCircle(midX, or + bgTop, or, mPaint);
+ } else {
+ canvas.drawCircle(or + bgTop, midX, or, mPaint);
+ }
+ }
// left dimple / icon
{
@@ -360,17 +360,13 @@ public class RotarySelector extends View {
mInnerRadius,
mOuterRadius,
xOffset);
- if (isHoriz()) {
- drawCentered(dimpleBitmap, canvas, xOffset, drawableY + bgTop);
- if (mGrabbedState != RIGHT_HANDLE_GRABBED) {
- drawCentered(mLeftHandleIcon, canvas, xOffset, drawableY + bgTop);
- }
+ final int x = isHoriz() ? xOffset : drawableY + bgTop;
+ final int y = isHoriz() ? drawableY + bgTop : height - xOffset;
+ if (mGrabbedState != RIGHT_HANDLE_GRABBED) {
+ drawCentered(mDimple, canvas, x, y);
+ drawCentered(mLeftHandleIcon, canvas, x, y);
} else {
- // vertical
- drawCentered(dimpleBitmap, canvas, drawableY + bgTop, height - xOffset);
- if (mGrabbedState != RIGHT_HANDLE_GRABBED) {
- drawCentered(mLeftHandleIcon, canvas, drawableY + bgTop, height - xOffset);
- }
+ drawCentered(mDimpleDim, canvas, x, y);
}
}
@@ -386,10 +382,10 @@ public class RotarySelector extends View {
xOffset);
if (isHoriz()) {
- drawCentered(dimpleBitmap, canvas, xOffset, drawableY + bgTop);
+ drawCentered(mDimpleDim, canvas, xOffset, drawableY + bgTop);
} else {
// vertical
- drawCentered(dimpleBitmap, canvas, drawableY + bgTop, height - xOffset);
+ drawCentered(mDimpleDim, canvas, drawableY + bgTop, height - xOffset);
}
}
@@ -402,17 +398,13 @@ public class RotarySelector extends View {
mOuterRadius,
xOffset);
- if (isHoriz()) {
- drawCentered(dimpleBitmap, canvas, xOffset, drawableY + bgTop);
- if (mGrabbedState != LEFT_HANDLE_GRABBED) {
- drawCentered(mRightHandleIcon, canvas, xOffset, drawableY + bgTop);
- }
+ final int x = isHoriz() ? xOffset : drawableY + bgTop;
+ final int y = isHoriz() ? drawableY + bgTop : height - xOffset;
+ if (mGrabbedState != LEFT_HANDLE_GRABBED) {
+ drawCentered(mDimple, canvas, x, y);
+ drawCentered(mRightHandleIcon, canvas, x, y);
} else {
- // vertical
- drawCentered(dimpleBitmap, canvas, drawableY + bgTop, height - xOffset);
- if (mGrabbedState != LEFT_HANDLE_GRABBED) {
- drawCentered(mRightHandleIcon, canvas, drawableY + bgTop, height - xOffset);
- }
+ drawCentered(mDimpleDim, canvas, x, y);
}
}
@@ -427,9 +419,9 @@ public class RotarySelector extends View {
dimpleLeft);
if (isHoriz()) {
- drawCentered(dimpleBitmap, canvas, dimpleLeft, drawableY + bgTop);
+ drawCentered(mDimpleDim, canvas, dimpleLeft, drawableY + bgTop);
} else {
- drawCentered(dimpleBitmap, canvas, drawableY + bgTop, height - dimpleLeft);
+ drawCentered(mDimpleDim, canvas, drawableY + bgTop, height - dimpleLeft);
}
dimpleLeft -= mDimpleSpacing;
}
@@ -445,9 +437,9 @@ public class RotarySelector extends View {
dimpleRight);
if (isHoriz()) {
- drawCentered(dimpleBitmap, canvas, dimpleRight, drawableY + bgTop);
+ drawCentered(mDimpleDim, canvas, dimpleRight, drawableY + bgTop);
} else {
- drawCentered(dimpleBitmap, canvas, drawableY + bgTop, height - dimpleRight);
+ drawCentered(mDimpleDim, canvas, drawableY + bgTop, height - dimpleRight);
}
dimpleRight += mDimpleSpacing;
}