diff --git a/core/res/res/values-sw600dp/bools.xml b/core/res/res/values-sw600dp/bools.xml
index eae4f87d7b09a..72731f1ba3431 100644
--- a/core/res/res/values-sw600dp/bools.xml
+++ b/core/res/res/values-sw600dp/bools.xml
@@ -21,4 +21,5 @@
false
false
+ true
diff --git a/core/res/res/values/bools.xml b/core/res/res/values/bools.xml
index d4ead012f3a0f..b5a9023202150 100644
--- a/core/res/res/values/bools.xml
+++ b/core/res/res/values/bools.xml
@@ -16,6 +16,7 @@
true
+ false
true
false
true
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
index 3a24cc1fa1cb7..b8ec138d85777 100644
--- a/core/res/res/values/dimens.xml
+++ b/core/res/res/values/dimens.xml
@@ -335,4 +335,9 @@
due to the appearance of the IME), then drop the multiuser selector. -->
600dp
+
+ 160dp
+
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index dfa2b4a08cb47..1d57c0b5b11b1 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -1216,6 +1216,7 @@
+
@@ -1235,6 +1236,7 @@
+
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 213b82fa55812..fa1a1ae2648e8 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java
@@ -112,6 +112,10 @@ public class KeyguardWidgetFrame extends FrameLayout {
mFrameStrokeAdjustment = (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);
mGradientColor = res.getColor(com.android.internal.R.color.kg_widget_pager_gradient);
mGradientPaint.setXfermode(sAddBlendMode);
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 7943b23712e15..fca347fd17230 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java
@@ -64,6 +64,7 @@ public class KeyguardWidgetPager extends PagedView implements PagedView.PageSwit
private static final long CUSTOM_WIDGET_USER_ACTIVITY_TIMEOUT = 30000;
private static final String TAG = "KeyguardWidgetPager";
+ private boolean mCenterSmallWidgetsVertically;
private int mPage = 0;
private Callbacks mCallbacks;
@@ -94,6 +95,8 @@ public class KeyguardWidgetPager extends PagedView implements PagedView.PageSwit
Resources r = getResources();
mCameraWidgetEnabled = r.getBoolean(R.bool.kg_enable_camera_default_widget);
+ mCenterSmallWidgetsVertically =
+ r.getBoolean(com.android.internal.R.bool.kg_center_small_widgets_vertically);
mBackgroundWorkerThread = new HandlerThread("KeyguardWidgetPager Worker");
mBackgroundWorkerThread.start();
mBackgroundWorkerHandler = new Handler(mBackgroundWorkerThread.getLooper());
@@ -277,6 +280,9 @@ public class KeyguardWidgetPager extends PagedView implements PagedView.PageSwit
} else {
// Lock the widget to be small.
frame.setWidgetLockedSmall(true);
+ if (mCenterSmallWidgetsVertically) {
+ lp.gravity = Gravity.CENTER;
+ }
}
}
} else {