diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2013-11-19 09:13:01 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2013-11-19 09:13:01 -0800 |
commit | cb4998d0e660b1d7538f0ee931bf2e4b8f693a1e (patch) | |
tree | c77b9660fa89523de07e7b971599a1db36cf41f2 /src/com/android/camera | |
parent | ef524f102cc5f492fc0f43dc498a498a0779e0d0 (diff) | |
parent | ea8e0398360d951288fce6f06c3c7a54cafd5917 (diff) | |
download | android_packages_apps_Snap-cb4998d0e660b1d7538f0ee931bf2e4b8f693a1e.tar.gz android_packages_apps_Snap-cb4998d0e660b1d7538f0ee931bf2e4b8f693a1e.tar.bz2 android_packages_apps_Snap-cb4998d0e660b1d7538f0ee931bf2e4b8f693a1e.zip |
Merge "Consider layout width for pie menu arc radius"
Diffstat (limited to 'src/com/android/camera')
-rw-r--r-- | src/com/android/camera/ui/PieRenderer.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/com/android/camera/ui/PieRenderer.java b/src/com/android/camera/ui/PieRenderer.java index 3967f7946..008bc40ca 100644 --- a/src/com/android/camera/ui/PieRenderer.java +++ b/src/com/android/camera/ui/PieRenderer.java @@ -114,7 +114,7 @@ public class PieRenderer extends OverlayRenderer private int mPieCenterX; private int mPieCenterY; private int mSliceRadius; - private int mArcRadius; + private int mArcRadius, mMaxArcRadius; private int mArcOffset; private int mDialAngle; @@ -221,6 +221,7 @@ public class PieRenderer extends OverlayRenderer mMenuArcPaint.setStyle(Paint.Style.STROKE); mSliceRadius = res.getDimensionPixelSize(R.dimen.pie_item_radius); mArcRadius = res.getDimensionPixelSize(R.dimen.pie_arc_radius); + mMaxArcRadius = mArcRadius; mArcOffset = res.getDimensionPixelSize(R.dimen.pie_arc_offset); mLabel = new TextDrawable(res); mLabel.setDropShadow(true); @@ -348,6 +349,12 @@ public class PieRenderer extends OverlayRenderer mCenterX = (r - l) / 2; mCenterY = (b - t) / 2; + int layoutWidth = r - l; + if( (layoutWidth > 0) && ((mMaxArcRadius + mCenterX) > layoutWidth) ){ + mArcRadius = layoutWidth - mCenterX; + } else { + mArcRadius = mMaxArcRadius; + } mFocusX = mCenterX; mFocusY = mCenterY; resetPieCenter(); |