diff --git a/res/layout-xlarge-land/all_apps_tabbed.xml b/res/layout-xlarge-land/all_apps_tabbed.xml index 3a07b9543d..fd9d9cbf6e 100644 --- a/res/layout-xlarge-land/all_apps_tabbed.xml +++ b/res/layout-xlarge-land/all_apps_tabbed.xml @@ -15,8 +15,7 @@ --> + xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"> + android:tabStripEnabled="false" /> + launcher:pageLayoutPaddingLeft="40dp" + launcher:pageLayoutPaddingRight="40dp"> diff --git a/res/layout-xlarge-land/launcher.xml b/res/layout-xlarge-land/launcher.xml index 65f29df00a..0ef946f9ad 100644 --- a/res/layout-xlarge-land/launcher.xml +++ b/res/layout-xlarge-land/launcher.xml @@ -26,7 +26,7 @@ layout="@layout/all_apps_tabbed" android:id="@+id/all_apps_view" android:layout_width="match_parent" - android:layout_height="550dip" + android:layout_height="600dip" android:layout_gravity="top"/> diff --git a/res/layout-xlarge-port/all_apps_tabbed.xml b/res/layout-xlarge-port/all_apps_tabbed.xml index 6675adc554..d61c979def 100644 --- a/res/layout-xlarge-port/all_apps_tabbed.xml +++ b/res/layout-xlarge-port/all_apps_tabbed.xml @@ -26,8 +26,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" - android:tabStripEnabled="false" - android:paddingBottom="10dp" /> + android:tabStripEnabled="false" /> + launcher:pageLayoutPaddingLeft="20dp" + launcher:pageLayoutPaddingRight="20dp"> diff --git a/res/layout-xlarge-port/customization_drawer.xml b/res/layout-xlarge-port/customization_drawer.xml index 20c207f42a..53d1f6f88d 100644 --- a/res/layout-xlarge-port/customization_drawer.xml +++ b/res/layout-xlarge-port/customization_drawer.xml @@ -24,5 +24,5 @@ launcher:cellCountY="4" launcher:pageLayoutPaddingTop="15dp" launcher:pageLayoutPaddingBottom="25dp" - launcher:pageLayoutPaddingLeft="0dp" - launcher:pageLayoutPaddingRight="0dp" /> \ No newline at end of file + launcher:pageLayoutPaddingLeft="15dp" + launcher:pageLayoutPaddingRight="15dp" /> diff --git a/res/layout-xlarge-port/launcher.xml b/res/layout-xlarge-port/launcher.xml index a418b36aa7..df7abc161b 100644 --- a/res/layout-xlarge-port/launcher.xml +++ b/res/layout-xlarge-port/launcher.xml @@ -26,7 +26,7 @@ layout="@layout/all_apps_tabbed" android:id="@+id/all_apps_view" android:layout_width="match_parent" - android:layout_height="1000dip" + android:layout_height="1040dip" android:layout_gravity="top"/> diff --git a/res/layout-xlarge/all_apps_paged_view_application.xml b/res/layout-xlarge/all_apps_paged_view_application.xml index 8e53e06564..f687739980 100644 --- a/res/layout-xlarge/all_apps_paged_view_application.xml +++ b/res/layout-xlarge/all_apps_paged_view_application.xml @@ -22,6 +22,7 @@ launcher:outlineColor="#FF8CD2FF" launcher:checkedBlurColor="#FFBBE83C" launcher:checkedOutlineColor="#FF8CD2FF" + launcher:scaledIconSize="64dp" android:id="@+id/application_icon" android:layout_width="match_parent" @@ -30,7 +31,7 @@ android:paddingTop="2dip" android:textColor="#FFFFFFFF" - android:textSize="14sp" + android:textSize="13sp" android:shadowColor="#FF000000" android:shadowDx="0.0" android:shadowDy="1.0" diff --git a/res/values-xlarge/dimens.xml b/res/values-xlarge/dimens.xml index 4662aad9f7..ecc6f3a65f 100644 --- a/res/values-xlarge/dimens.xml +++ b/res/values-xlarge/dimens.xml @@ -23,7 +23,8 @@ 0dip - 60dip + 30dip + 60dip 10dip diff --git a/res/values/attrs.xml b/res/values/attrs.xml index 14a5e98ac1..a0e2706e01 100644 --- a/res/values/attrs.xml +++ b/res/values/attrs.xml @@ -66,6 +66,8 @@ + + + + + diff --git a/src/com/android/launcher2/AllAppsPagedView.java b/src/com/android/launcher2/AllAppsPagedView.java index 42101eb4ca..5de53d80fb 100644 --- a/src/com/android/launcher2/AllAppsPagedView.java +++ b/src/com/android/launcher2/AllAppsPagedView.java @@ -358,6 +358,7 @@ public class AllAppsPagedView extends PagedView layout.setCellCount(mCellCountX, mCellCountY); layout.setPadding(mPageLayoutPaddingLeft, mPageLayoutPaddingTop, mPageLayoutPaddingRight, mPageLayoutPaddingBottom); + layout.setGap(mPageLayoutWidthGap, mPageLayoutHeightGap); addView(layout); } @@ -414,7 +415,7 @@ public class AllAppsPagedView extends PagedView final int index = i - startIndex; final ApplicationInfo info = mFilteredApps.get(i); PagedViewIcon icon = (PagedViewIcon) layout.getChildAt(index); - icon.applyFromApplicationInfo(info, mPageViewIconCache); + icon.applyFromApplicationInfo(info, mPageViewIconCache, true); PagedViewCellLayout.LayoutParams params = (PagedViewCellLayout.LayoutParams) icon.getLayoutParams(); diff --git a/src/com/android/launcher2/CustomizePagedView.java b/src/com/android/launcher2/CustomizePagedView.java index 6b7aa98cb9..f832b62bdf 100644 --- a/src/com/android/launcher2/CustomizePagedView.java +++ b/src/com/android/launcher2/CustomizePagedView.java @@ -722,7 +722,7 @@ public class CustomizePagedView extends PagedView final ApplicationInfo info = mApps.get(i); PagedViewIcon icon = (PagedViewIcon) mInflater.inflate( R.layout.all_apps_paged_view_application, layout, false); - icon.applyFromApplicationInfo(info, mPageViewIconCache); + icon.applyFromApplicationInfo(info, mPageViewIconCache, false); icon.setOnClickListener(this); icon.setOnLongClickListener(this); diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java index 39a6af0480..4ccc4aeab0 100644 --- a/src/com/android/launcher2/PagedView.java +++ b/src/com/android/launcher2/PagedView.java @@ -96,6 +96,8 @@ public abstract class PagedView extends ViewGroup { protected int mPageLayoutPaddingBottom; protected int mPageLayoutPaddingLeft; protected int mPageLayoutPaddingRight; + protected int mPageLayoutWidthGap; + protected int mPageLayoutHeightGap; protected int mCellCountX; protected int mCellCountY; @@ -184,6 +186,10 @@ public abstract class PagedView extends ViewGroup { R.styleable.PagedView_pageLayoutPaddingLeft, 10); mPageLayoutPaddingRight = a.getDimensionPixelSize( R.styleable.PagedView_pageLayoutPaddingRight, 10); + mPageLayoutWidthGap = a.getDimensionPixelSize( + R.styleable.PagedView_pageLayoutWidthGap, -1); + mPageLayoutHeightGap = a.getDimensionPixelSize( + R.styleable.PagedView_pageLayoutHeightGap, -1); a.recycle(); setHapticFeedbackEnabled(false); diff --git a/src/com/android/launcher2/PagedViewCellLayout.java b/src/com/android/launcher2/PagedViewCellLayout.java index b247a065f5..0a5a2ec290 100644 --- a/src/com/android/launcher2/PagedViewCellLayout.java +++ b/src/com/android/launcher2/PagedViewCellLayout.java @@ -46,6 +46,8 @@ public class PagedViewCellLayout extends ViewGroup { private int mCellCountY; private int mCellWidth; private int mCellHeight; + private int mWidthGap; + private int mHeightGap; private static int sDefaultCellDimensions = 96; public PagedViewCellLayout(Context context) { @@ -66,6 +68,7 @@ public class PagedViewCellLayout extends ViewGroup { mCellCountX = LauncherModel.getCellCountX(); mCellCountY = LauncherModel.getCellCountY(); mHolographicAlpha = 0.0f; + mWidthGap = mHeightGap = -1; } @Override @@ -168,12 +171,17 @@ public class PagedViewCellLayout extends ViewGroup { paddingLeft += ((widthGap - minGap) * (mCellCountX - 1)) / 2; } */ - widthGap = heightGap = minGap; + if (mWidthGap > -1 && mHeightGap > -1) { + widthGap = mWidthGap; + heightGap = mHeightGap; + } else { + widthGap = heightGap = minGap; + } int newWidth = mPaddingLeft + mPaddingRight + (mCellCountX * cellWidth) + - ((mCellCountX - 1) * minGap); + ((mCellCountX - 1) * widthGap); int newHeight = mPaddingTop + mPaddingBottom + (mCellCountY * cellHeight) + - ((mCellCountY - 1) * minGap); + ((mCellCountY - 1) * heightGap); final int count = getChildCount(); for (int i = 0; i < count; i++) { @@ -252,6 +260,11 @@ public class PagedViewCellLayout extends ViewGroup { requestLayout(); } + public void setGap(int widthGap, int heightGap) { + mWidthGap = widthGap; + mHeightGap = heightGap; + } + public void setCellDimensions(int width, int height) { mCellWidth = width; mCellHeight = height; diff --git a/src/com/android/launcher2/PagedViewIcon.java b/src/com/android/launcher2/PagedViewIcon.java index 0f7898b271..010c573f1b 100644 --- a/src/com/android/launcher2/PagedViewIcon.java +++ b/src/com/android/launcher2/PagedViewIcon.java @@ -54,6 +54,7 @@ public class PagedViewIcon extends TextView implements Checkable { private Object mIconCacheKey; private PagedViewIconCache mIconCache; + private int mScaledIconSize; private int mAlpha; private int mHolographicAlpha; @@ -82,6 +83,7 @@ public class PagedViewIcon extends TextView implements Checkable { mHoloOutlineColor = a.getColor(R.styleable.PagedViewIcon_outlineColor, 0); mCheckedBlurColor = a.getColor(R.styleable.PagedViewIcon_checkedBlurColor, 0); mCheckedOutlineColor = a.getColor(R.styleable.PagedViewIcon_checkedOutlineColor, 0); + mScaledIconSize = a.getDimensionPixelSize(R.styleable.PagedViewIcon_scaledIconSize, 64); a.recycle(); if (sHolographicOutlineHelper == null) { @@ -93,13 +95,21 @@ public class PagedViewIcon extends TextView implements Checkable { setBackgroundDrawable(null); } - public void applyFromApplicationInfo(ApplicationInfo info, PagedViewIconCache cache) { + public void applyFromApplicationInfo(ApplicationInfo info, PagedViewIconCache cache, + boolean scaleUp) { mIconCache = cache; mIconCacheKey = info; mHolographicOutline = mIconCache.getOutline(mIconCacheKey); + Bitmap icon; + if (scaleUp) { + icon = Bitmap.createScaledBitmap(info.iconBitmap, mScaledIconSize, + mScaledIconSize, true); + } else { + icon = info.iconBitmap; + } setCompoundDrawablesWithIntrinsicBounds(null, - new FastBitmapDrawable(info.iconBitmap), null, null); + new FastBitmapDrawable(icon), null, null); setText(info.title); setTag(info); } diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java index d123374d20..42a6f1b70d 100644 --- a/src/com/android/launcher2/Workspace.java +++ b/src/com/android/launcher2/Workspace.java @@ -715,7 +715,10 @@ public class Workspace extends SmoothPagedView final int screenCount = getChildCount(); float totalWidth = screenCount * scaledPageWidth + (screenCount - 1) * extraScaledSpacing; - float newY = getResources().getDimension(R.dimen.smallScreenVerticalMargin); + boolean isPortrait = getMeasuredHeight() > getMeasuredWidth(); + float newY = (isPortrait ? + getResources().getDimension(R.dimen.smallScreenVerticalMarginPortrait) : + getResources().getDimension(R.dimen.smallScreenVerticalMarginLandscape)); float finalAlpha = 1.0f; float extraShrinkFactor = 1.0f; if (shrinkPosition == ShrinkPosition.SHRINK_TO_BOTTOM_VISIBLE) {