summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWinson Chung <winsonc@google.com>2012-05-15 16:34:19 -0700
committerWinson Chung <winsonc@google.com>2012-05-15 16:38:05 -0700
commit947245ba8ad74aee3dadd02693514765dbb4b5a2 (patch)
treeef9627e0caebd97c34ca7f02b326d6ec1d2c7b81
parentf26493f5a14449bd9f9630b81f0fec802b4fd943 (diff)
downloadandroid_packages_apps_Trebuchet-947245ba8ad74aee3dadd02693514765dbb4b5a2.tar.gz
android_packages_apps_Trebuchet-947245ba8ad74aee3dadd02693514765dbb4b5a2.tar.bz2
android_packages_apps_Trebuchet-947245ba8ad74aee3dadd02693514765dbb4b5a2.zip
Fixing issue where landscape delete button is not centered. (Bug 6493651)
Change-Id: I782351da2daf511a79e5c9f1d3cef90bec2ca6d1
-rw-r--r--res/layout-land/drop_target_bar.xml37
-rw-r--r--res/layout-port/drop_target_bar.xml39
-rw-r--r--res/layout/qsb_bar.xml26
-rw-r--r--res/values-land/styles.xml6
-rw-r--r--src/com/android/launcher2/ButtonDropTarget.java11
-rw-r--r--src/com/android/launcher2/DeleteDropTarget.java5
-rw-r--r--src/com/android/launcher2/InfoDropTarget.java3
7 files changed, 97 insertions, 30 deletions
diff --git a/res/layout-land/drop_target_bar.xml b/res/layout-land/drop_target_bar.xml
new file mode 100644
index 000000000..55d94218e
--- /dev/null
+++ b/res/layout-land/drop_target_bar.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+ <FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ style="@style/DropTargetButtonContainer"
+ android:layout_weight="1">
+ <!-- Delete target -->
+ <com.android.launcher2.DeleteDropTarget
+ style="@style/DropTargetButton"
+ android:id="@+id/delete_target_text"
+ android:drawableTop="@drawable/info_target_selector" />
+ </FrameLayout>
+ <FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ style="@style/DropTargetButtonContainer"
+ android:layout_weight="1">
+ <!-- Info target -->
+ <com.android.launcher2.InfoDropTarget
+ style="@style/DropTargetButton"
+ android:id="@+id/info_target_text"
+ android:drawableTop="@drawable/info_target_selector" />
+ </FrameLayout>
+</merge> \ No newline at end of file
diff --git a/res/layout-port/drop_target_bar.xml b/res/layout-port/drop_target_bar.xml
new file mode 100644
index 000000000..5fcddc9a0
--- /dev/null
+++ b/res/layout-port/drop_target_bar.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2011 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+ <FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ style="@style/DropTargetButtonContainer"
+ android:layout_weight="1">
+ <!-- Delete target -->
+ <com.android.launcher2.DeleteDropTarget
+ style="@style/DropTargetButton"
+ android:id="@+id/delete_target_text"
+ android:text="@string/delete_zone_label_workspace"
+ android:drawableLeft="@drawable/remove_target_selector" />
+ </FrameLayout>
+ <FrameLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ style="@style/DropTargetButtonContainer"
+ android:layout_weight="1">
+ <!-- Info target -->
+ <com.android.launcher2.InfoDropTarget
+ style="@style/DropTargetButton"
+ android:id="@+id/info_target_text"
+ android:text="@string/info_target_label"
+ android:drawableLeft="@drawable/info_target_selector" />
+ </FrameLayout>
+</merge> \ No newline at end of file
diff --git a/res/layout/qsb_bar.xml b/res/layout/qsb_bar.xml
index ad9027f9d..322dc006f 100644
--- a/res/layout/qsb_bar.xml
+++ b/res/layout/qsb_bar.xml
@@ -25,29 +25,9 @@
<!-- Drag specific targets container -->
<LinearLayout
style="@style/SearchDropTargetBar"
- android:id="@+id/drag_target_bar"
- android:visibility="gone">
+ android:id="@+id/drag_target_bar">
- <FrameLayout
- style="@style/DropTargetButtonContainer"
- android:layout_weight="1">
- <!-- Delete target -->
- <com.android.launcher2.DeleteDropTarget
- style="@style/DropTargetButton"
- android:id="@+id/delete_target_text"
- android:text="@string/delete_zone_label_workspace"
- android:drawableLeft="@drawable/remove_target_selector" />
- </FrameLayout>
-
- <FrameLayout
- style="@style/DropTargetButtonContainer"
- android:layout_weight="1">
- <!-- Info target -->
- <com.android.launcher2.InfoDropTarget
- style="@style/DropTargetButton"
- android:id="@+id/info_target_text"
- android:text="@string/info_target_label"
- android:drawableLeft="@drawable/info_target_selector" />
- </FrameLayout>
+ <include
+ layout="@layout/drop_target_bar" />
</LinearLayout>
</com.android.launcher2.SearchDropTargetBar>
diff --git a/res/values-land/styles.xml b/res/values-land/styles.xml
index f4519ab34..df3356ee2 100644
--- a/res/values-land/styles.xml
+++ b/res/values-land/styles.xml
@@ -47,10 +47,10 @@
<item name="android:layout_height">0dp</item>
</style>
<style name="DropTargetButton">
- <item name="android:layout_width">match_parent</item>
+ <item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
- <item name="android:layout_gravity">center_vertical</item>
- <item name="android:gravity">center_horizontal</item>
+ <item name="android:layout_gravity">center</item>
+ <item name="android:gravity">center</item>
<item name="android:paddingTop">@dimen/toolbar_button_vertical_padding</item>
<item name="android:paddingBottom">@dimen/toolbar_button_vertical_padding</item>
<item name="android:paddingLeft">@dimen/toolbar_button_horizontal_padding</item>
diff --git a/src/com/android/launcher2/ButtonDropTarget.java b/src/com/android/launcher2/ButtonDropTarget.java
index e9f8ce8b5..1c9fa5f95 100644
--- a/src/com/android/launcher2/ButtonDropTarget.java
+++ b/src/com/android/launcher2/ButtonDropTarget.java
@@ -20,6 +20,7 @@ import android.content.Context;
import android.content.res.Resources;
import android.graphics.PointF;
import android.graphics.Rect;
+import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.widget.TextView;
@@ -68,6 +69,16 @@ public class ButtonDropTarget extends TextView implements DropTarget, DragContro
mSearchDropTargetBar = searchDropTargetBar;
}
+ protected Drawable getCurrentDrawable() {
+ Drawable[] drawables = getCompoundDrawables();
+ for (int i = 0; i < drawables.length; ++i) {
+ if (drawables[i] != null) {
+ return drawables[i];
+ }
+ }
+ return null;
+ }
+
public void onDrop(DragObject d) {
}
diff --git a/src/com/android/launcher2/DeleteDropTarget.java b/src/com/android/launcher2/DeleteDropTarget.java
index eb831f6e9..1edc2abe9 100644
--- a/src/com/android/launcher2/DeleteDropTarget.java
+++ b/src/com/android/launcher2/DeleteDropTarget.java
@@ -25,6 +25,7 @@ import android.content.res.Configuration;
import android.content.res.Resources;
import android.graphics.PointF;
import android.graphics.Rect;
+import android.graphics.drawable.Drawable;
import android.graphics.drawable.TransitionDrawable;
import android.util.AttributeSet;
import android.view.View;
@@ -76,7 +77,7 @@ public class DeleteDropTarget extends ButtonDropTarget {
// The current drawable is set to either the remove drawable or the uninstall drawable
// and is initially set to the remove drawable, as set in the layout xml.
- mCurrentDrawable = (TransitionDrawable) getCompoundDrawables()[0];
+ mCurrentDrawable = (TransitionDrawable) getCurrentDrawable();
// Remove the text in the Phone UI in landscape
int orientation = getResources().getConfiguration().orientation;
@@ -157,7 +158,7 @@ public class DeleteDropTarget extends ButtonDropTarget {
} else {
setCompoundDrawablesWithIntrinsicBounds(mRemoveDrawable, null, null, null);
}
- mCurrentDrawable = (TransitionDrawable) getCompoundDrawables()[0];
+ mCurrentDrawable = (TransitionDrawable) getCurrentDrawable();
mActive = isVisible;
resetHoverColor();
diff --git a/src/com/android/launcher2/InfoDropTarget.java b/src/com/android/launcher2/InfoDropTarget.java
index 134f4cb56..d6bf5f2cc 100644
--- a/src/com/android/launcher2/InfoDropTarget.java
+++ b/src/com/android/launcher2/InfoDropTarget.java
@@ -16,7 +16,6 @@
package com.android.launcher2;
-import android.appwidget.AppWidgetProviderInfo;
import android.content.ComponentName;
import android.content.Context;
import android.content.res.ColorStateList;
@@ -51,7 +50,7 @@ public class InfoDropTarget extends ButtonDropTarget {
// Get the hover color
Resources r = getResources();
mHoverColor = r.getColor(R.color.info_target_hover_tint);
- mDrawable = (TransitionDrawable) getCompoundDrawables()[0];
+ mDrawable = (TransitionDrawable) getCurrentDrawable();
mDrawable.setCrossFadeEnabled(true);
// Remove the text in the Phone UI in landscape