summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/dragndrop/BaseItemDragListener.java
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2017-11-14 15:06:36 -0800
committerSunny Goyal <sunnygoyal@google.com>2017-11-15 10:24:10 -0800
commitd3864fa630f0028971116b321702f20bf4ff6c7d (patch)
treec40919fee536830c99bb89285639b5dbd437a81c /src/com/android/launcher3/dragndrop/BaseItemDragListener.java
parent77f7b6682262675f25639c94c205e0ad37334c34 (diff)
downloadandroid_packages_apps_Trebuchet-d3864fa630f0028971116b321702f20bf4ff6c7d.tar.gz
android_packages_apps_Trebuchet-d3864fa630f0028971116b321702f20bf4ff6c7d.tar.bz2
android_packages_apps_Trebuchet-d3864fa630f0028971116b321702f20bf4ff6c7d.zip
Fixing double state changes when using an InternalStateHandler
> Removing duplicate state handling on onCreate and onNewInetnt when InternalStateHandler is active > Changing PinItemDragListener to use IntenalStateHandler Change-Id: I42dcf82d1180c49430c6cf0b85d47072c4498ecc
Diffstat (limited to 'src/com/android/launcher3/dragndrop/BaseItemDragListener.java')
-rw-r--r--src/com/android/launcher3/dragndrop/BaseItemDragListener.java31
1 files changed, 14 insertions, 17 deletions
diff --git a/src/com/android/launcher3/dragndrop/BaseItemDragListener.java b/src/com/android/launcher3/dragndrop/BaseItemDragListener.java
index 96aaee03b..4629dad3a 100644
--- a/src/com/android/launcher3/dragndrop/BaseItemDragListener.java
+++ b/src/com/android/launcher3/dragndrop/BaseItemDragListener.java
@@ -16,22 +16,25 @@
package com.android.launcher3.dragndrop;
+import static com.android.launcher3.LauncherState.NORMAL;
+
import android.content.ClipDescription;
import android.content.Intent;
import android.graphics.Point;
import android.graphics.Rect;
import android.os.Handler;
import android.os.Looper;
-import android.os.Parcel;
import android.os.SystemClock;
import android.util.Log;
import android.view.DragEvent;
import android.view.View;
+import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.DragSource;
import com.android.launcher3.DropTarget.DragObject;
import com.android.launcher3.Launcher;
import com.android.launcher3.R;
+import com.android.launcher3.states.InternalStateHandler;
import com.android.launcher3.widget.PendingItemDragHelper;
import java.util.UUID;
@@ -39,7 +42,7 @@ import java.util.UUID;
/**
* {@link DragSource} for handling drop from a different window.
*/
-public abstract class BaseItemDragListener implements
+public abstract class BaseItemDragListener extends InternalStateHandler implements
View.OnDragListener, DragSource, DragOptions.PreDragCondition {
private static final String TAG = "BaseItemDragListener";
@@ -67,25 +70,16 @@ public abstract class BaseItemDragListener implements
mId = UUID.randomUUID().toString();
}
- protected BaseItemDragListener(Parcel parcel) {
- mPreviewRect = Rect.CREATOR.createFromParcel(parcel);
- mPreviewBitmapWidth = parcel.readInt();
- mPreviewViewWidth = parcel.readInt();
- mId = parcel.readString();
- }
-
- protected void writeToParcel(Parcel parcel, int i) {
- mPreviewRect.writeToParcel(parcel, i);
- parcel.writeInt(mPreviewBitmapWidth);
- parcel.writeInt(mPreviewViewWidth);
- parcel.writeString(mId);
- }
-
public String getMimeType() {
return MIME_TYPE_PREFIX + mId;
}
- public void setLauncher(Launcher launcher) {
+ @Override
+ public void init(Launcher launcher, boolean alreadyOnHome) {
+ AbstractFloatingView.closeAllOpenViews(launcher, alreadyOnHome);
+ launcher.getStateManager().goToState(NORMAL, alreadyOnHome /* animated */);
+ launcher.getDragLayer().setOnDragListener(this);
+
mLauncher = launcher;
mDragController = launcher.getDragController();
}
@@ -182,4 +176,7 @@ public abstract class BaseItemDragListener implements
mLauncher.getDragLayer().setOnDragListener(null);
}
}
+
+ @Override
+ public void onLauncherResume() { }
}