diff options
author | Android Build Merger (Role) <noreply-android-build-merger@google.com> | 2018-05-25 18:57:01 +0000 |
---|---|---|
committer | Android Build Merger (Role) <noreply-android-build-merger@google.com> | 2018-05-25 18:57:01 +0000 |
commit | 1d146b2264590edfd28ba8f71592979c61d1d375 (patch) | |
tree | a079d94e903d8653675796ed26105e89e1ec1380 /src | |
parent | 1b905daf5cb6837b4db9fd1129a911a95a954197 (diff) | |
parent | 4dcda06542648f19ca496085a76c3184492d1d48 (diff) | |
download | android_packages_apps_Trebuchet-1d146b2264590edfd28ba8f71592979c61d1d375.tar.gz android_packages_apps_Trebuchet-1d146b2264590edfd28ba8f71592979c61d1d375.tar.bz2 android_packages_apps_Trebuchet-1d146b2264590edfd28ba8f71592979c61d1d375.zip |
[automerger] Fixing launcher going to a different state when dragging an icon from different activity am: 4dcda06542
Change-Id: Ifcb89488c351ba866026cfbdf3645b4358eeac8f
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher3/dragndrop/BaseItemDragListener.java | 2 | ||||
-rw-r--r-- | src/com/android/launcher3/dragndrop/PinItemDragListener.java | 20 |
2 files changed, 21 insertions, 1 deletions
diff --git a/src/com/android/launcher3/dragndrop/BaseItemDragListener.java b/src/com/android/launcher3/dragndrop/BaseItemDragListener.java index df4a7c1f5..1e84b416b 100644 --- a/src/com/android/launcher3/dragndrop/BaseItemDragListener.java +++ b/src/com/android/launcher3/dragndrop/BaseItemDragListener.java @@ -159,7 +159,7 @@ public abstract class BaseItemDragListener extends InternalStateHandler implemen postCleanup(); } - private void postCleanup() { + protected void postCleanup() { clearReference(); if (mLauncher != null) { // Remove any drag params from the launcher intent since the drag operation is complete. diff --git a/src/com/android/launcher3/dragndrop/PinItemDragListener.java b/src/com/android/launcher3/dragndrop/PinItemDragListener.java index 924bb4c25..07eb0d60b 100644 --- a/src/com/android/launcher3/dragndrop/PinItemDragListener.java +++ b/src/com/android/launcher3/dragndrop/PinItemDragListener.java @@ -22,14 +22,17 @@ import android.content.pm.LauncherApps.PinItemRequest; import android.graphics.Rect; import android.os.Build; import android.os.Bundle; +import android.os.CancellationSignal; import android.view.DragEvent; import android.view.View; import android.widget.RemoteViews; import com.android.launcher3.DragSource; import com.android.launcher3.ItemInfo; +import com.android.launcher3.Launcher; import com.android.launcher3.LauncherAppWidgetProviderInfo; import com.android.launcher3.PendingAddItemInfo; +import com.android.launcher3.uioverrides.UiFactory; import com.android.launcher3.userevent.nano.LauncherLogProto; import com.android.launcher3.widget.PendingAddShortcutInfo; import com.android.launcher3.widget.PendingAddWidgetInfo; @@ -44,11 +47,13 @@ import com.android.launcher3.widget.WidgetAddFlowHandler; public class PinItemDragListener extends BaseItemDragListener { private final PinItemRequest mRequest; + private final CancellationSignal mCancelSignal; public PinItemDragListener(PinItemRequest request, Rect previewRect, int previewBitmapWidth, int previewViewWidth) { super(previewRect, previewBitmapWidth, previewViewWidth); mRequest = request; + mCancelSignal = new CancellationSignal(); } @Override @@ -60,6 +65,15 @@ public class PinItemDragListener extends BaseItemDragListener { } @Override + public boolean init(Launcher launcher, boolean alreadyOnHome) { + super.init(launcher, alreadyOnHome); + if (!alreadyOnHome) { + UiFactory.useFadeOutAnimationForLauncherStart(launcher, mCancelSignal); + } + return false; + } + + @Override protected PendingItemDragHelper createDragHelper() { final PendingAddItemInfo item; if (mRequest.getRequestType() == PinItemRequest.REQUEST_TYPE_SHORTCUT) { @@ -95,6 +109,12 @@ public class PinItemDragListener extends BaseItemDragListener { targetParent.containerType = LauncherLogProto.ContainerType.PINITEM; } + @Override + protected void postCleanup() { + super.postCleanup(); + mCancelSignal.cancel(); + } + public static RemoteViews getPreview(PinItemRequest request) { Bundle extras = request.getExtras(); if (extras != null && |