From 947245ba8ad74aee3dadd02693514765dbb4b5a2 Mon Sep 17 00:00:00 2001 From: Winson Chung Date: Tue, 15 May 2012 16:34:19 -0700 Subject: Fixing issue where landscape delete button is not centered. (Bug 6493651) Change-Id: I782351da2daf511a79e5c9f1d3cef90bec2ca6d1 --- src/com/android/launcher2/ButtonDropTarget.java | 11 +++++++++++ src/com/android/launcher2/DeleteDropTarget.java | 5 +++-- src/com/android/launcher2/InfoDropTarget.java | 3 +-- 3 files changed, 15 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/com/android/launcher2/ButtonDropTarget.java b/src/com/android/launcher2/ButtonDropTarget.java index e9f8ce8b5..1c9fa5f95 100644 --- a/src/com/android/launcher2/ButtonDropTarget.java +++ b/src/com/android/launcher2/ButtonDropTarget.java @@ -20,6 +20,7 @@ import android.content.Context; import android.content.res.Resources; import android.graphics.PointF; import android.graphics.Rect; +import android.graphics.drawable.Drawable; import android.util.AttributeSet; import android.widget.TextView; @@ -68,6 +69,16 @@ public class ButtonDropTarget extends TextView implements DropTarget, DragContro mSearchDropTargetBar = searchDropTargetBar; } + protected Drawable getCurrentDrawable() { + Drawable[] drawables = getCompoundDrawables(); + for (int i = 0; i < drawables.length; ++i) { + if (drawables[i] != null) { + return drawables[i]; + } + } + return null; + } + public void onDrop(DragObject d) { } diff --git a/src/com/android/launcher2/DeleteDropTarget.java b/src/com/android/launcher2/DeleteDropTarget.java index eb831f6e9..1edc2abe9 100644 --- a/src/com/android/launcher2/DeleteDropTarget.java +++ b/src/com/android/launcher2/DeleteDropTarget.java @@ -25,6 +25,7 @@ import android.content.res.Configuration; import android.content.res.Resources; import android.graphics.PointF; import android.graphics.Rect; +import android.graphics.drawable.Drawable; import android.graphics.drawable.TransitionDrawable; import android.util.AttributeSet; import android.view.View; @@ -76,7 +77,7 @@ public class DeleteDropTarget extends ButtonDropTarget { // The current drawable is set to either the remove drawable or the uninstall drawable // and is initially set to the remove drawable, as set in the layout xml. - mCurrentDrawable = (TransitionDrawable) getCompoundDrawables()[0]; + mCurrentDrawable = (TransitionDrawable) getCurrentDrawable(); // Remove the text in the Phone UI in landscape int orientation = getResources().getConfiguration().orientation; @@ -157,7 +158,7 @@ public class DeleteDropTarget extends ButtonDropTarget { } else { setCompoundDrawablesWithIntrinsicBounds(mRemoveDrawable, null, null, null); } - mCurrentDrawable = (TransitionDrawable) getCompoundDrawables()[0]; + mCurrentDrawable = (TransitionDrawable) getCurrentDrawable(); mActive = isVisible; resetHoverColor(); diff --git a/src/com/android/launcher2/InfoDropTarget.java b/src/com/android/launcher2/InfoDropTarget.java index 134f4cb56..d6bf5f2cc 100644 --- a/src/com/android/launcher2/InfoDropTarget.java +++ b/src/com/android/launcher2/InfoDropTarget.java @@ -16,7 +16,6 @@ package com.android.launcher2; -import android.appwidget.AppWidgetProviderInfo; import android.content.ComponentName; import android.content.Context; import android.content.res.ColorStateList; @@ -51,7 +50,7 @@ public class InfoDropTarget extends ButtonDropTarget { // Get the hover color Resources r = getResources(); mHoverColor = r.getColor(R.color.info_target_hover_tint); - mDrawable = (TransitionDrawable) getCompoundDrawables()[0]; + mDrawable = (TransitionDrawable) getCurrentDrawable(); mDrawable.setCrossFadeEnabled(true); // Remove the text in the Phone UI in landscape -- cgit v1.2.3