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 a12c14cf6fcb3..05619d2d56611 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 9ffabf8f58cda..656901b392e4c 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetFrame.java
@@ -106,6 +106,10 @@ public class KeyguardWidgetFrame extends FrameLayout {
int padding = (int) (res.getDisplayMetrics().density * 8);
setPadding(padding, padding, padding, padding);
+ // 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 acb2913a67824..6fba09959207f 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetPager.java
@@ -67,6 +67,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;
@@ -95,6 +96,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);
mBgPersistenceWorkerThread = new HandlerThread("KeyguardWidgetPager Persistence");
mBgPersistenceWorkerThread.start();
mBgPersistenceWorkerHandler = new Handler(mBgPersistenceWorkerThread.getLooper());
@@ -274,6 +277,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 {