diff --git a/res/drawable-xlarge-hdpi/trashcan.png b/res/drawable-xlarge-hdpi/trashcan.png deleted file mode 100644 index a07f784420..0000000000 Binary files a/res/drawable-xlarge-hdpi/trashcan.png and /dev/null differ diff --git a/res/drawable-xlarge-hdpi/trashcan_hover.png b/res/drawable-xlarge-hdpi/trashcan_hover.png deleted file mode 100644 index 6dbc8f3b88..0000000000 Binary files a/res/drawable-xlarge-hdpi/trashcan_hover.png and /dev/null differ diff --git a/res/drawable-xlarge-mdpi/trashcan.png b/res/drawable-xlarge-mdpi/trashcan.png deleted file mode 100644 index 839d4b8549..0000000000 Binary files a/res/drawable-xlarge-mdpi/trashcan.png and /dev/null differ diff --git a/res/drawable-xlarge-mdpi/trashcan_hover.png b/res/drawable-xlarge-mdpi/trashcan_hover.png deleted file mode 100644 index cc2fde7d52..0000000000 Binary files a/res/drawable-xlarge-mdpi/trashcan_hover.png and /dev/null differ diff --git a/res/layout-land/launcher.xml b/res/layout-land/launcher.xml index 8d38a3d61a..6e797f8eb9 100644 --- a/res/layout-land/launcher.xml +++ b/res/layout-land/launcher.xml @@ -86,7 +86,7 @@ android:layout_gravity="right|center_vertical" android:scaleType="center" - android:src="@drawable/delete_zone_selector" + android:drawableLeft="@drawable/delete_zone_selector" android:visibility="invisible" launcher:direction="vertical" /> diff --git a/res/layout-port/launcher.xml b/res/layout-port/launcher.xml index c50dbca937..b7c61d8faf 100644 --- a/res/layout-port/launcher.xml +++ b/res/layout-port/launcher.xml @@ -79,7 +79,7 @@ android:layout_gravity="bottom|center_horizontal" android:scaleType="center" - android:src="@drawable/delete_zone_selector" + android:drawableLeft="@drawable/delete_zone_selector" android:visibility="invisible" launcher:direction="horizontal" /> diff --git a/res/layout-xlarge-land/all_apps_tabbed.xml b/res/layout-xlarge-land/all_apps_tabbed.xml index e1a37ff144..fbe98b09e4 100644 --- a/res/layout-xlarge-land/all_apps_tabbed.xml +++ b/res/layout-xlarge-land/all_apps_tabbed.xml @@ -39,7 +39,7 @@ android:layout_centerVertical="true"> + launcher:direction="horizontal" + + android:gravity="center_horizontal|center_vertical" + android:textColor="@color/workspace_all_apps_and_delete_zone_text_color" + android:textSize="18sp" + android:shadowColor="@color/workspace_all_apps_and_delete_zone_text_shadow_color" + android:shadowDx="0.0" + android:shadowDy="0.0" + android:shadowRadius="2.0" /> diff --git a/res/layout-xlarge-port/all_apps_tabbed.xml b/res/layout-xlarge-port/all_apps_tabbed.xml index a593148346..b90041c6b0 100644 --- a/res/layout-xlarge-port/all_apps_tabbed.xml +++ b/res/layout-xlarge-port/all_apps_tabbed.xml @@ -39,7 +39,7 @@ android:layout_centerVertical="true"> + launcher:direction="horizontal" + + android:gravity="center_horizontal|center_vertical" + android:textColor="@color/workspace_all_apps_and_delete_zone_text_color" + android:textSize="18sp" + android:shadowColor="@color/workspace_all_apps_and_delete_zone_text_shadow_color" + android:shadowDx="0.0" + android:shadowDy="0.0" + android:shadowRadius="2.0" /> diff --git a/res/values/colors.xml b/res/values/colors.xml index 4abbd50dd7..91fe2c9747 100644 --- a/res/values/colors.xml +++ b/res/values/colors.xml @@ -38,4 +38,8 @@ #0997ff #6595f9 #0997ff + + #CCFFFFFF + #A0000000 + #FFFF0000 diff --git a/res/values/strings.xml b/res/values/strings.xml index 48790525f1..c56ee9eb7b 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -142,6 +142,13 @@ Home + + Remove + + Delete diff --git a/src/com/android/launcher2/AllAppsPagedView.java b/src/com/android/launcher2/AllAppsPagedView.java index 5b98a15302..caa1406054 100644 --- a/src/com/android/launcher2/AllAppsPagedView.java +++ b/src/com/android/launcher2/AllAppsPagedView.java @@ -204,10 +204,6 @@ public class AllAppsPagedView extends PagedViewWithDraggableItems implements All private void setupDragMode() { mLauncher.getWorkspace().shrink(Workspace.ShrinkState.BOTTOM_VISIBLE); - - DeleteZone deleteZone = (DeleteZone) mLauncher.findViewById(R.id.delete_zone); - deleteZone.setDragAndDropEnabled(false); - DeleteZone allAppsDeleteZone = (DeleteZone) mLauncher.findViewById(R.id.all_apps_delete_zone); allAppsDeleteZone.setDragAndDropEnabled(true); @@ -223,9 +219,6 @@ public class AllAppsPagedView extends PagedViewWithDraggableItems implements All // deleteZone and the appInfoButton in all apps, and re-enable the instance which // live in the workspace public void run() { - DeleteZone deleteZone = (DeleteZone) mLauncher.findViewById(R.id.delete_zone); - deleteZone.setDragAndDropEnabled(true); - DeleteZone allAppsDeleteZone = (DeleteZone) mLauncher.findViewById(R.id.all_apps_delete_zone); allAppsDeleteZone.setDragAndDropEnabled(false); diff --git a/src/com/android/launcher2/DeleteZone.java b/src/com/android/launcher2/DeleteZone.java index 16061d34ec..4bed84c5cc 100644 --- a/src/com/android/launcher2/DeleteZone.java +++ b/src/com/android/launcher2/DeleteZone.java @@ -16,7 +16,10 @@ package com.android.launcher2; +import com.android.launcher.R; + import android.content.Context; +import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.PorterDuff; import android.graphics.PorterDuffColorFilter; @@ -31,14 +34,13 @@ import android.view.animation.Animation; import android.view.animation.AnimationSet; import android.view.animation.TranslateAnimation; -import com.android.launcher.R; - public class DeleteZone extends IconDropTarget { private static final int ORIENTATION_HORIZONTAL = 1; private static final int TRANSITION_DURATION = 250; private static final int ANIMATION_DURATION = 200; private static final int XLARGE_TRANSITION_DURATION = 150; private static final int XLARGE_ANIMATION_DURATION = 200; + private static final int LEFT_DRAWABLE = 0; private AnimationSet mInAnimation; private AnimationSet mOutAnimation; @@ -51,6 +53,8 @@ public class DeleteZone extends IconDropTarget { private final RectF mRegionF = new RectF(); private final Rect mRegion = new Rect(); private TransitionDrawable mTransition; + private int mTextColor; + private int mDragTextColor; public DeleteZone(Context context, AttributeSet attrs) { this(context, attrs, 0); @@ -74,7 +78,14 @@ public class DeleteZone extends IconDropTarget { @Override protected void onFinishInflate() { super.onFinishInflate(); - mTransition = (TransitionDrawable) getDrawable(); + mTransition = (TransitionDrawable) getCompoundDrawables()[LEFT_DRAWABLE]; + if (LauncherApplication.isScreenXLarge()) { + mTransition.setCrossFadeEnabled(false); + } + + Resources r = getResources(); + mTextColor = r.getColor(R.color.workspace_all_apps_and_delete_zone_text_color); + mDragTextColor = r.getColor(R.color.workspace_delete_zone_drag_text_color); } public boolean acceptDrop(DragSource source, int x, int y, int xOffset, int yOffset, @@ -115,7 +126,6 @@ public class DeleteZone extends IconDropTarget { final LauncherAppWidgetInfo launcherAppWidgetInfo = (LauncherAppWidgetInfo) item; final LauncherAppWidgetHost appWidgetHost = mLauncher.getAppWidgetHost(); if (appWidgetHost != null) { - final int appWidgetId = launcherAppWidgetInfo.appWidgetId; // Deleting an app widget ID is a void call but writes to disk before returning // to the caller... new Thread("deleteAppWidgetId") { @@ -133,6 +143,7 @@ public class DeleteZone extends IconDropTarget { DragView dragView, Object dragInfo) { if (mDragAndDropEnabled) { mTransition.reverseTransition(getTransitionAnimationDuration()); + setTextColor(mDragTextColor); super.onDragEnter(source, x, y, xOffset, yOffset, dragView, dragInfo); } } @@ -141,6 +152,7 @@ public class DeleteZone extends IconDropTarget { DragView dragView, Object dragInfo) { if (mDragAndDropEnabled) { mTransition.reverseTransition(getTransitionAnimationDuration()); + setTextColor(mTextColor); super.onDragExit(source, x, y, xOffset, yOffset, dragView, dragInfo); } } diff --git a/src/com/android/launcher2/IconDropTarget.java b/src/com/android/launcher2/IconDropTarget.java index bfc46cf422..fb5d0f081a 100644 --- a/src/com/android/launcher2/IconDropTarget.java +++ b/src/com/android/launcher2/IconDropTarget.java @@ -16,22 +16,19 @@ package com.android.launcher2; -import com.android.launcher.R; - import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Color; import android.graphics.Paint; import android.graphics.Rect; import android.util.AttributeSet; import android.view.View; -import android.widget.ImageView; +import android.widget.TextView; + /** * Implements a DropTarget which allows applications to be dropped on it, * in order to launch the application info for that app. */ -public class IconDropTarget extends ImageView implements DropTarget, DragController.DragListener { +public class IconDropTarget extends TextView implements DropTarget, DragController.DragListener { protected Launcher mLauncher; /** diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java index 3c1c336574..82f5aea03f 100644 --- a/src/com/android/launcher2/Launcher.java +++ b/src/com/android/launcher2/Launcher.java @@ -2595,19 +2595,23 @@ public final class Launcher extends Activity hideOrShowToolbarButton(true, divider, showSeq); hideOrShowToolbarButton(true, configureButton, showSeq); mDeleteZone.setOverlappingViews(new View[] { allAppsButton, divider, configureButton }); + mDeleteZone.setDragAndDropEnabled(true); + mDeleteZone.setText(getResources().getString(R.string.delete_zone_label_workspace)); break; case ALL_APPS: hideOrShowToolbarButton(false, configureButton, hideSeq); hideOrShowToolbarButton(false, searchButton, hideSeq); hideOrShowToolbarButton(false, divider, hideSeq); hideOrShowToolbarButton(false, allAppsButton, hideSeq); + mDeleteZone.setDragAndDropEnabled(false); + mDeleteZone.setText(getResources().getString(R.string.delete_zone_label_all_apps)); break; case CUSTOMIZE: hideOrShowToolbarButton(false, allAppsButton, hideSeq); hideOrShowToolbarButton(false, searchButton, hideSeq); hideOrShowToolbarButton(false, divider, hideSeq); hideOrShowToolbarButton(false, configureButton, hideSeq); - //mDeleteZone.setOverlappingView(configureButton); + mDeleteZone.setDragAndDropEnabled(false); break; } }