diff options
Diffstat (limited to 'src/com/android/launcher3/InfoDropTarget.java')
-rw-r--r-- | src/com/android/launcher3/InfoDropTarget.java | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/com/android/launcher3/InfoDropTarget.java b/src/com/android/launcher3/InfoDropTarget.java index 374238c49..7e55af228 100644 --- a/src/com/android/launcher3/InfoDropTarget.java +++ b/src/com/android/launcher3/InfoDropTarget.java @@ -26,6 +26,8 @@ import android.util.AttributeSet; import android.view.View; import android.view.ViewGroup; +import com.android.launcher3.compat.UserHandleCompat; + public class InfoDropTarget extends ButtonDropTarget { private ColorStateList mOriginalTextColor; @@ -49,6 +51,13 @@ public class InfoDropTarget extends ButtonDropTarget { Resources r = getResources(); mHoverColor = r.getColor(R.color.info_target_hover_tint); mDrawable = (TransitionDrawable) getCurrentDrawable(); + + if (mDrawable == null) { + // TODO: investigate why this is ever happening. Presently only on one known device. + mDrawable = (TransitionDrawable) r.getDrawable(R.drawable.info_target_selector); + setCompoundDrawablesRelativeWithIntrinsicBounds(mDrawable, null, null, null); + } + if (null != mDrawable) { mDrawable.setCrossFadeEnabled(true); } @@ -75,8 +84,15 @@ public class InfoDropTarget extends ButtonDropTarget { } else if (d.dragInfo instanceof PendingAddItemInfo) { componentName = ((PendingAddItemInfo) d.dragInfo).componentName; } + final UserHandleCompat user; + if (d.dragInfo instanceof ItemInfo) { + user = ((ItemInfo) d.dragInfo).user; + } else { + user = UserHandleCompat.myUserHandle(); + } + if (componentName != null) { - mLauncher.startApplicationDetailsActivity(componentName); + mLauncher.startApplicationDetailsActivity(componentName, user); } // There is no post-drop animation, so clean up the DragView now |