Using public API for widget padding
Change-Id: I37c90ddf6309cdf29daacdf2c7663eb41d13338b
This commit is contained in:
@@ -72,13 +72,6 @@
|
||||
<dimen name="dragViewOffsetX">0dp</dimen>
|
||||
<dimen name="dragViewOffsetY">-12dp</dimen>
|
||||
|
||||
<!-- Workspace grid -->
|
||||
<!-- Padding applied to AppWidgets -->
|
||||
<dimen name="app_widget_padding_left">12dp</dimen>
|
||||
<dimen name="app_widget_padding_right">12dp</dimen>
|
||||
<dimen name="app_widget_padding_top">4dp</dimen>
|
||||
<dimen name="app_widget_padding_bottom">20dp</dimen>
|
||||
|
||||
<!-- Folders -->
|
||||
<!-- The size of the image which sits behind the preview of the folder contents -->
|
||||
<dimen name="folder_preview_size">80dp</dimen>
|
||||
|
||||
@@ -106,10 +106,6 @@
|
||||
<dimen name="dragViewOffsetY">-8dp</dimen>
|
||||
|
||||
<!-- Padding applied to AppWidgets -->
|
||||
<dimen name="app_widget_padding_left">16dp</dimen>
|
||||
<dimen name="app_widget_padding_right">16dp</dimen>
|
||||
<dimen name="app_widget_padding_top">16dp</dimen>
|
||||
<dimen name="app_widget_padding_bottom">16dp</dimen>
|
||||
<dimen name="app_widget_preview_padding_left">8dp</dimen>
|
||||
<dimen name="app_widget_preview_padding_top">8dp</dimen>
|
||||
|
||||
|
||||
@@ -5,9 +5,10 @@ import android.animation.ObjectAnimator;
|
||||
import android.animation.PropertyValuesHolder;
|
||||
import android.animation.ValueAnimator;
|
||||
import android.animation.ValueAnimator.AnimatorUpdateListener;
|
||||
import android.appwidget.AppWidgetHostView;
|
||||
import android.appwidget.AppWidgetProviderInfo;
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.Rect;
|
||||
import android.view.Gravity;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageView;
|
||||
@@ -111,7 +112,8 @@ public class AppWidgetResizeFrame extends FrameLayout {
|
||||
Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM);
|
||||
addView(mBottomHandle, lp);
|
||||
|
||||
Launcher.Padding p = mLauncher.getPaddingForWidget(widgetView.getAppWidgetInfo().provider);
|
||||
Rect p = AppWidgetHostView.getDefaultPaddingForWidget(context,
|
||||
widgetView.getAppWidgetInfo().provider, null);
|
||||
mWidgetPaddingLeft = p.left;
|
||||
mWidgetPaddingTop = p.top;
|
||||
mWidgetPaddingRight = p.right;
|
||||
|
||||
@@ -29,6 +29,7 @@ import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.app.SearchManager;
|
||||
import android.app.StatusBarManager;
|
||||
import android.appwidget.AppWidgetHostView;
|
||||
import android.appwidget.AppWidgetManager;
|
||||
import android.appwidget.AppWidgetProviderInfo;
|
||||
import android.content.ActivityNotFoundException;
|
||||
@@ -75,9 +76,9 @@ import android.view.MenuItem;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.Surface;
|
||||
import android.view.View;
|
||||
import android.view.View.OnLongClickListener;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.WindowManager;
|
||||
import android.view.View.OnLongClickListener;
|
||||
import android.view.accessibility.AccessibilityEvent;
|
||||
import android.view.animation.AccelerateDecelerateInterpolator;
|
||||
import android.view.animation.AccelerateInterpolator;
|
||||
@@ -888,48 +889,12 @@ public final class Launcher extends Activity
|
||||
}
|
||||
}
|
||||
|
||||
class Padding {
|
||||
int left = 0;
|
||||
int right = 0;
|
||||
int top = 0;
|
||||
int bottom = 0;
|
||||
}
|
||||
|
||||
Padding getPaddingForWidget(ComponentName component) {
|
||||
PackageManager packageManager = getPackageManager();
|
||||
Padding p = new Padding();
|
||||
android.content.pm.ApplicationInfo appInfo;
|
||||
|
||||
try {
|
||||
appInfo = packageManager.getApplicationInfo(component.getPackageName(), 0);
|
||||
} catch (Exception e) {
|
||||
// if we can't find the package, return 0 padding
|
||||
return p;
|
||||
}
|
||||
|
||||
if (appInfo.targetSdkVersion >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
|
||||
Resources r = getResources();
|
||||
// The default padding values are private API currently, but will be added in
|
||||
// API level 15. The current values are (8, 8, 8, 8).
|
||||
p.left = r.getDimensionPixelSize(com.android.internal.
|
||||
R.dimen.default_app_widget_padding_left);
|
||||
p.right = r.getDimensionPixelSize(com.android.internal.
|
||||
R.dimen.default_app_widget_padding_right);
|
||||
p.top = r.getDimensionPixelSize(com.android.internal.
|
||||
R.dimen.default_app_widget_padding_top);
|
||||
p.bottom = r.getDimensionPixelSize(com.android.internal.
|
||||
R.dimen.default_app_widget_padding_bottom);
|
||||
}
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
int[] getSpanForWidget(ComponentName component, int minWidth, int minHeight, int[] spanXY) {
|
||||
if (spanXY == null) {
|
||||
spanXY = new int[2];
|
||||
}
|
||||
|
||||
Padding padding = getPaddingForWidget(component);
|
||||
Rect padding = AppWidgetHostView.getDefaultPaddingForWidget(this, component, null);
|
||||
// We want to account for the extra amount of padding that we are adding to the widget
|
||||
// to ensure that it gets the full amount of space that it has requested
|
||||
int requiredWidth = minWidth + padding.left + padding.right;
|
||||
|
||||
@@ -27,7 +27,6 @@ import android.view.ViewConfiguration;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import com.android.launcher.R;
|
||||
import com.android.launcher2.Launcher.Padding;
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
|
||||
Reference in New Issue
Block a user