diff options
author | Winson Chung <winsonc@google.com> | 2012-05-15 16:34:19 -0700 |
---|---|---|
committer | Winson Chung <winsonc@google.com> | 2012-05-15 16:38:05 -0700 |
commit | 947245ba8ad74aee3dadd02693514765dbb4b5a2 (patch) | |
tree | ef9627e0caebd97c34ca7f02b326d6ec1d2c7b81 | |
parent | f26493f5a14449bd9f9630b81f0fec802b4fd943 (diff) | |
download | packages_apps_trebuchet-947245ba8ad74aee3dadd02693514765dbb4b5a2.zip packages_apps_trebuchet-947245ba8ad74aee3dadd02693514765dbb4b5a2.tar.gz packages_apps_trebuchet-947245ba8ad74aee3dadd02693514765dbb4b5a2.tar.bz2 |
Fixing issue where landscape delete button is not centered. (Bug 6493651)
Change-Id: I782351da2daf511a79e5c9f1d3cef90bec2ca6d1
-rw-r--r-- | res/layout-land/drop_target_bar.xml | 37 | ||||
-rw-r--r-- | res/layout-port/drop_target_bar.xml | 39 | ||||
-rw-r--r-- | res/layout/qsb_bar.xml | 26 | ||||
-rw-r--r-- | res/values-land/styles.xml | 6 | ||||
-rw-r--r-- | src/com/android/launcher2/ButtonDropTarget.java | 11 | ||||
-rw-r--r-- | src/com/android/launcher2/DeleteDropTarget.java | 5 | ||||
-rw-r--r-- | src/com/android/launcher2/InfoDropTarget.java | 3 |
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 0000000..55d9421 --- /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 0000000..5fcddc9 --- /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 ad9027f..322dc00 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 f4519ab..df3356e 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 e9f8ce8..1c9fa5f 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 eb831f6..1edc2ab 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 134f4cb..d6bf5f2 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 |