diff options
| -rw-r--r-- | core/res/res/drawable-hdpi/kg_widget_bg_padded.9.png | bin | 0 -> 3272 bytes | |||
| -rw-r--r-- | core/res/res/drawable-mdpi/kg_widget_bg_padded.9.png | bin | 0 -> 3149 bytes | |||
| -rw-r--r-- | core/res/res/drawable-xhdpi/kg_widget_bg_padded.9.png | bin | 0 -> 3474 bytes | |||
| -rw-r--r-- | core/res/res/values/symbols.xml | 2 | ||||
| -rw-r--r-- | policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewStateManager.java | 8 | ||||
| -rw-r--r-- | policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java | 29 | ||||
| -rw-r--r-- | policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java | 6 | ||||
| -rw-r--r-- | policy/src/com/android/internal/policy/impl/keyguard/PagedView.java | 4 |
8 files changed, 31 insertions, 18 deletions
diff --git a/core/res/res/drawable-hdpi/kg_widget_bg_padded.9.png b/core/res/res/drawable-hdpi/kg_widget_bg_padded.9.png Binary files differnew file mode 100644 index 0000000..dff1dfa --- /dev/null +++ b/core/res/res/drawable-hdpi/kg_widget_bg_padded.9.png diff --git a/core/res/res/drawable-mdpi/kg_widget_bg_padded.9.png b/core/res/res/drawable-mdpi/kg_widget_bg_padded.9.png Binary files differnew file mode 100644 index 0000000..c313df1 --- /dev/null +++ b/core/res/res/drawable-mdpi/kg_widget_bg_padded.9.png diff --git a/core/res/res/drawable-xhdpi/kg_widget_bg_padded.9.png b/core/res/res/drawable-xhdpi/kg_widget_bg_padded.9.png Binary files differnew file mode 100644 index 0000000..a84bfa3 --- /dev/null +++ b/core/res/res/drawable-xhdpi/kg_widget_bg_padded.9.png diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index aefbbf1..86f8665 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -1257,7 +1257,7 @@ <java-symbol type="drawable" name="magnified_region_frame" /> <java-symbol type="drawable" name="menu_background" /> <java-symbol type="drawable" name="stat_sys_secure" /> - <java-symbol type="drawable" name="kg_bouncer_bg_white" /> + <java-symbol type="drawable" name="kg_widget_bg_padded" /> <java-symbol type="id" name="action_mode_bar_stub" /> <java-symbol type="id" name="alarm_status" /> <java-symbol type="id" name="backspace" /> 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); |
