diff options
| author | Adam Cohen <adamcohen@google.com> | 2012-11-07 17:08:30 -0800 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-11-07 17:08:31 -0800 |
| commit | 85c4281aae518c27ca3f95e330f6aa56159e1328 (patch) | |
| tree | 72fa6094daa01b88ffb358f9d0f91e480dcc19c6 /policy | |
| parent | 5da893c93b55c83b07558a1648f53dfec89b1f32 (diff) | |
| parent | d51700b3cc6d4c66a33d18348f7c1eb66cd50ac2 (diff) | |
| download | frameworks_base-85c4281aae518c27ca3f95e330f6aa56159e1328.zip frameworks_base-85c4281aae518c27ca3f95e330f6aa56159e1328.tar.gz frameworks_base-85c4281aae518c27ca3f95e330f6aa56159e1328.tar.bz2 | |
Merge "Fixing up overscroll asset / sizing" into jb-mr1-lockscreen-dev
Diffstat (limited to 'policy')
4 files changed, 30 insertions, 17 deletions
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewStateManager.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewStateManager.java index 41db69a..b82d7c7 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewStateManager.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewStateManager.java @@ -220,7 +220,9 @@ public class KeyguardViewStateManager implements mKeyguardWidgetPager.setWidgetToResetOnPageFadeOut(mPageListeningToSlider); } } - frame.hideFrame(this); + if (scrollState != SlidingChallengeLayout.SCROLL_STATE_FADING) { + frame.hideFrame(this); + } updateEdgeSwiping(); if (mChallengeLayout.isChallengeShowing()) { @@ -239,7 +241,9 @@ public class KeyguardViewStateManager implements // Skip showing the frame and shrinking the widget if we are if (!mChallengeLayout.isBouncing()) { - frame.showFrame(this); + if (scrollState != SlidingChallengeLayout.SCROLL_STATE_FADING) { + frame.showFrame(this); + } // As soon as the security begins sliding, the widget becomes small (if it wasn't // small to begin with). diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java index fa1a1ae..d9953bf 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java @@ -110,13 +110,13 @@ public class KeyguardWidgetFrame extends FrameLayout { int padding = (int) (res.getDisplayMetrics().density * 8); setPadding(padding, padding, padding, padding); - mFrameStrokeAdjustment = (int) (2 * density); + mFrameStrokeAdjustment = 2 + (int) (2 * density); // This will be overriden on phones based on the current security mode, however on tablets // we need to specify a height. mSmallWidgetHeight = res.getDimensionPixelSize(com.android.internal.R.dimen.kg_small_widget_height); - mBackgroundDrawable = res.getDrawable(R.drawable.kg_bouncer_bg_white); + mBackgroundDrawable = res.getDrawable(R.drawable.kg_widget_bg_padded); mGradientColor = res.getColor(com.android.internal.R.color.kg_widget_pager_gradient); mGradientPaint.setXfermode(sAddBlendMode); } @@ -372,6 +372,10 @@ public class KeyguardWidgetFrame extends FrameLayout { public void setFrameHeight(int height) { mFrameHeight = height; mBackgroundRect.set(0, 0, getMeasuredWidth(), Math.min(mFrameHeight, getMeasuredHeight())); + mForegroundRect.set(mFrameStrokeAdjustment, mFrameStrokeAdjustment,getMeasuredWidth() - + mFrameStrokeAdjustment, Math.min(getMeasuredHeight(), mFrameHeight) - + mFrameStrokeAdjustment); + updateGradient(); invalidate(); } @@ -401,27 +405,30 @@ public class KeyguardWidgetFrame extends FrameLayout { mFrameFade.start(); } - @Override - protected void onSizeChanged(int w, int h, int oldw, int oldh) { - super.onSizeChanged(w, h, oldw, oldh); - - // mFrameStrokeAdjustment is a cludge to prevent the overlay from drawing outside the - // rounded rect background. - mForegroundRect.set(mFrameStrokeAdjustment, mFrameStrokeAdjustment, - w - mFrameStrokeAdjustment, h - mFrameStrokeAdjustment); - + private void updateGradient() { float x0 = mLeftToRight ? 0 : mForegroundRect.width(); float x1 = mLeftToRight ? mForegroundRect.width(): 0; mLeftToRightGradient = new LinearGradient(x0, 0f, x1, 0f, mGradientColor, 0, Shader.TileMode.CLAMP); mRightToLeftGradient = new LinearGradient(x1, 0f, x0, 0f, mGradientColor, 0, Shader.TileMode.CLAMP); + } + + @Override + protected void onSizeChanged(int w, int h, int oldw, int oldh) { + super.onSizeChanged(w, h, oldw, oldh); if (!mIsSmall) { mFrameHeight = h; } + // mFrameStrokeAdjustment is a cludge to prevent the overlay from drawing outside the + // rounded rect background. + mForegroundRect.set(mFrameStrokeAdjustment, mFrameStrokeAdjustment, + w - mFrameStrokeAdjustment, Math.min(h, mFrameHeight) - mFrameStrokeAdjustment); + mBackgroundRect.set(0, 0, getMeasuredWidth(), Math.min(h, mFrameHeight)); + updateGradient(); invalidate(); } diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java index f20b8d4..083d47e 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java @@ -476,6 +476,10 @@ public class KeyguardWidgetPager extends PagedView implements PagedView.PageSwit v.setCameraDistance(mDensity * CAMERA_DISTANCE); if (isOverScrollChild(i, scrollProgress) && PERFORM_OVERSCROLL_ROTATION) { + float pivotX = v.getMeasuredWidth() / 2; + float pivotY = v.getMeasuredHeight() / 2; + v.setPivotX(pivotX); + v.setPivotY(pivotY); v.setRotationY(- OVERSCROLL_MAX_ROTATION * scrollProgress); v.setOverScrollAmount(Math.abs(scrollProgress), scrollProgress < 0); } else { @@ -762,6 +766,8 @@ public class KeyguardWidgetPager extends PagedView implements PagedView.PageSwit mZoomInOutAnim.cancel(); } View currentPage = getPageAt(getCurrentPage()); + currentPage.setPivotY(0); + currentPage.setPivotX(currentPage.getMeasuredWidth() / 2); if (!(currentPage.getScaleX() < 1f || currentPage.getScaleY() < 1f)) { mZoomInOutAnim = new AnimatorSet(); mZoomInOutAnim.setDuration(BOUNCER_ZOOM_IN_OUT_DURATION); diff --git a/policy/src/com/android/internal/policy/impl/keyguard/PagedView.java b/policy/src/com/android/internal/policy/impl/keyguard/PagedView.java index 2f25835..e991d16 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/PagedView.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/PagedView.java @@ -658,10 +658,6 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc MeasureSpec.makeMeasureSpec(heightSize - verticalPadding, childHeightMode); child.measure(childWidthMeasureSpec, childHeightMeasureSpec); - if (shouldSetTopAlignedPivotForWidget(i)) { - child.setPivotX(child.getWidth() / 2); - child.setPivotY(0f); - } } setMeasuredDimension(scaledWidthSize, scaledHeightSize); |
