Fixing issue where dropping on the system bar would not properly cancel the drag.

Change-Id: I3d920cabb99216c222d5c419374527068f1947d0
This commit is contained in:
Winson Chung 2010-11-12 12:10:35 -08:00
parent bbc60d8e79
commit a34abf8c78
2 changed files with 11 additions and 0 deletions

View File

@ -584,6 +584,8 @@ public class DragController {
mDragSource.onDropCompleted((View) dropTarget, false);
return true;
}
} else {
mDragSource.onDropCompleted(null, false);
}
return false;
}

View File

@ -56,6 +56,7 @@ import android.os.Parcelable;
import android.util.AttributeSet;
import android.util.Log;
import android.util.Pair;
import android.view.Display;
import android.view.DragEvent;
import android.view.MotionEvent;
import android.view.View;
@ -1768,6 +1769,14 @@ public class Workspace extends SmoothPagedView
onDropExternal(x, y, dragInfo, cellLayout, false);
}
@Override
public void getHitRect(Rect outRect) {
// We want the workspace to have the whole area of the display (it will find the correct
// cell layout to drop to in the existing drag/drop logic.
final Display d = mLauncher.getWindowManager().getDefaultDisplay();
outRect.set(0, 0, d.getWidth(), d.getHeight());
}
/**
* Add the item specified by dragInfo to the given layout.
* This is basically the equivalent of onDropExternal, except it's not initiated