diff options
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/launcher2/Launcher.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher2/LauncherModel.java | 8 | ||||
-rw-r--r-- | src/com/android/launcher2/Workspace.java | 5 |
3 files changed, 14 insertions, 2 deletions
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java index 132f0e907..52f122479 100644 --- a/src/com/android/launcher2/Launcher.java +++ b/src/com/android/launcher2/Launcher.java @@ -204,7 +204,6 @@ public final class Launcher extends Activity private ImageView mNextView; // Hotseats (quick-launch icons next to AllApps) - // TODO: move these intial intents out to Uris in an XML resource private static final int NUM_HOTSEATS = 2; private String[] mHotseatConfig = null; private Intent[] mHotseats = null; @@ -782,6 +781,8 @@ public final class Launcher extends Activity @SuppressWarnings({"UnusedDeclaration"}) public void launchHotSeat(View v) { + if (isAllAppsVisible()) return; + int index = -1; if (v.getId() == R.id.hotseat_left) { index = 0; diff --git a/src/com/android/launcher2/LauncherModel.java b/src/com/android/launcher2/LauncherModel.java index a8672008c..612764984 100644 --- a/src/com/android/launcher2/LauncherModel.java +++ b/src/com/android/launcher2/LauncherModel.java @@ -623,6 +623,14 @@ public class LauncherModel extends BroadcastReceiver { // sections. mLoaderThread = null; } + + // Trigger a gc to try to clean up after the stuff is done, since the + // renderscript allocations aren't charge to the java heap. + mHandler.post(new Runnable() { + public void run() { + System.gc(); + } + }); } public void stopLocked() { diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java index f65d956f0..c337c3078 100644 --- a/src/com/android/launcher2/Workspace.java +++ b/src/com/android/launcher2/Workspace.java @@ -36,6 +36,7 @@ import android.os.IBinder; import android.os.Parcel; import android.os.Parcelable; import android.util.AttributeSet; +import android.util.Log; import android.view.MotionEvent; import android.view.VelocityTracker; import android.view.View; @@ -363,7 +364,9 @@ public class Workspace extends ViewGroup implements DropTarget, DragSource, Drag */ void addInScreen(View child, int screen, int x, int y, int spanX, int spanY, boolean insert) { if (screen < 0 || screen >= getChildCount()) { - throw new IllegalStateException("The screen must be >= 0 and < " + getChildCount()); + Log.e(TAG, "The screen must be >= 0 and < " + getChildCount() + + " (was " + screen + "); skipping child"); + return; } clearVacantCache(); |