diff options
-rw-r--r-- | res/drawable/tab_widget_indicator_selector.xml | 1 | ||||
-rw-r--r-- | res/layout-sw600dp/market_button.xml | 5 | ||||
-rw-r--r-- | res/layout/market_button.xml | 5 | ||||
-rw-r--r-- | res/values-land/styles.xml | 5 | ||||
-rw-r--r-- | res/values-sw340dp/dimens.xml | 20 | ||||
-rw-r--r-- | res/values-sw600dp/styles.xml | 10 | ||||
-rw-r--r-- | res/values/dimens.xml | 6 | ||||
-rw-r--r-- | res/values/styles.xml | 4 | ||||
-rw-r--r-- | src/com/android/launcher2/AppsCustomizePagedView.java | 34 | ||||
-rw-r--r-- | src/com/android/launcher2/AppsCustomizeTabHost.java | 3 | ||||
-rw-r--r-- | src/com/android/launcher2/DragController.java | 20 |
11 files changed, 64 insertions, 49 deletions
diff --git a/res/drawable/tab_widget_indicator_selector.xml b/res/drawable/tab_widget_indicator_selector.xml index ff92b40..d06f757 100644 --- a/res/drawable/tab_widget_indicator_selector.xml +++ b/res/drawable/tab_widget_indicator_selector.xml @@ -16,7 +16,6 @@ <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- Non focused states --> - <item android:state_focused="false" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/tab_unselected_holo" /> <item android:state_focused="false" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/tab_selected_holo" /> <!-- Focused states --> diff --git a/res/layout-sw600dp/market_button.xml b/res/layout-sw600dp/market_button.xml index 3f31319..4ccecd9 100644 --- a/res/layout-sw600dp/market_button.xml +++ b/res/layout-sw600dp/market_button.xml @@ -19,8 +19,8 @@ style="@style/MarketButton" android:onClick="onClickAppMarketButton" android:gravity="center" - android:paddingLeft="10dp" - android:paddingRight="10dp" + android:paddingLeft="32dp" + android:paddingRight="32dp" android:drawablePadding="10dp" android:text="@string/market" android:contentDescription="@string/market" @@ -32,6 +32,5 @@ android:shadowDx="0.0" android:shadowDy="0.0" android:shadowRadius="2.0" - android:background="@drawable/tab_widget_indicator_selector" android:focusable="true" android:clickable="true" /> diff --git a/res/layout/market_button.xml b/res/layout/market_button.xml index 2d840d7..5e10156 100644 --- a/res/layout/market_button.xml +++ b/res/layout/market_button.xml @@ -19,13 +19,12 @@ style="@style/MarketButton" android:onClick="onClickAppMarketButton" android:gravity="center" - android:paddingLeft="@dimen/toolbar_button_horizontal_padding" - android:paddingRight="@dimen/toolbar_button_horizontal_padding" + android:paddingLeft="16dp" + android:paddingRight="16dp" android:contentDescription="@string/market" android:shadowColor="@color/workspace_all_apps_and_delete_zone_text_shadow_color" android:shadowDx="0.0" android:shadowDy="0.0" android:shadowRadius="2.0" - android:background="@drawable/tab_widget_indicator_selector" android:focusable="true" android:clickable="true" /> diff --git a/res/values-land/styles.xml b/res/values-land/styles.xml index bb155bd..7949d2d 100644 --- a/res/values-land/styles.xml +++ b/res/values-land/styles.xml @@ -65,10 +65,5 @@ <item name="android:shadowDy">1.0</item> <item name="android:shadowRadius">4.0</item> </style> - - <style name="TabIndicator.AppsCustomize"> - <item name="android:paddingTop">5dp</item> - <item name="android:paddingBottom">10dp</item> - </style> </resources> diff --git a/res/values-sw340dp/dimens.xml b/res/values-sw340dp/dimens.xml new file mode 100644 index 0000000..69d6e58 --- /dev/null +++ b/res/values-sw340dp/dimens.xml @@ -0,0 +1,20 @@ +<?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. +--> + +<resources> + <!-- Drag padding to add to the bottom of drop targets --> + <dimen name="drop_target_drag_padding">20dp</dimen> +</resources> diff --git a/res/values-sw600dp/styles.xml b/res/values-sw600dp/styles.xml index 70e24be..1905fad 100644 --- a/res/values-sw600dp/styles.xml +++ b/res/values-sw600dp/styles.xml @@ -79,10 +79,8 @@ <item name="android:textSize">13sp</item> </style> <style name="TabIndicator.AppsCustomize"> - <item name="android:paddingTop">16dp</item> - <item name="android:paddingBottom">20dp</item> - <item name="android:paddingLeft">48dp</item> - <item name="android:paddingRight">48dp</item> + <item name="android:paddingLeft">32dp</item> + <item name="android:paddingRight">32dp</item> <item name="android:textSize">14sp</item> </style> @@ -124,8 +122,8 @@ <item name="android:layout_gravity">center</item> <item name="android:gravity">center_vertical</item> <item name="android:drawablePadding">7.5dp</item> - <item name="android:paddingLeft">25dp</item> - <item name="android:paddingRight">25dp</item> + <item name="android:paddingLeft">60dp</item> + <item name="android:paddingRight">60dp</item> <item name="android:textColor">#FFFFFFFF</item> <item name="android:textSize">16sp</item> <item name="android:shadowColor">#393939</item> diff --git a/res/values/dimens.xml b/res/values/dimens.xml index 87c9be8..a744cce 100644 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -79,9 +79,6 @@ <dimen name="button_bar_width_right_padding">0dp</dimen> <dimen name="button_bar_height_plus_padding">70dp</dimen> - <!-- Drag padding to add to the drop targets --> - <dimen name="drop_target_drag_padding">40dp</dimen> - <!-- extra horizontal spacing between mini screen thumbnails ie. in all apps and in customization mode --> <dimen name="smallScreenExtraSpacing">0dip</dimen> @@ -91,6 +88,9 @@ <dimen name="allAppsSmallScreenVerticalMarginLandscape">30dip</dimen> <dimen name="allAppsSmallScreenVerticalMarginPortrait">60dip</dimen> + <!-- Drag padding to add to the bottom of drop targets --> + <dimen name="drop_target_drag_padding">14dp</dimen> + <!-- padding between the delete zone drawable and text --> <dimen name="delete_zone_drawable_padding">8dip</dimen> diff --git a/res/values/styles.xml b/res/values/styles.xml index ddbdb34..502a836 100644 --- a/res/values/styles.xml +++ b/res/values/styles.xml @@ -161,8 +161,8 @@ <item name="android:layout_width">wrap_content</item> <item name="android:layout_height">match_parent</item> <item name="android:gravity">center</item> - <item name="android:paddingLeft">30dp</item> - <item name="android:paddingRight">30dp</item> + <item name="android:paddingLeft">24dp</item> + <item name="android:paddingRight">24dp</item> <item name="android:background">@drawable/tab_widget_indicator_selector</item> <item name="android:textColor">?android:attr/textColorPrimary</item> <item name="android:textSize">12sp</item> diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java index 2cdd16a..0189d6c 100644 --- a/src/com/android/launcher2/AppsCustomizePagedView.java +++ b/src/com/android/launcher2/AppsCustomizePagedView.java @@ -193,6 +193,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen private ArrayList<Object> mWidgets; // Cling + private boolean mHasShownAllAppsCling; private int mClingFocusedX; private int mClingFocusedY; @@ -396,14 +397,33 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen int page = getPageForComponent(mSaveInstanceStateItemIndex); invalidatePageData(Math.max(0, page)); - // Calculate the position for the cling punch through - int[] offset = new int[2]; - int[] pos = mWidgetSpacingLayout.estimateCellPosition(mClingFocusedX, mClingFocusedY); - mLauncher.getDragLayer().getLocationInDragLayer(this, offset); - pos[0] += (getMeasuredWidth() - mWidgetSpacingLayout.getMeasuredWidth()) / 2 + offset[0]; - pos[1] += (getMeasuredHeight() - mWidgetSpacingLayout.getMeasuredHeight()) / 2 + offset[1]; - mLauncher.showFirstRunAllAppsCling(pos); + // Show All Apps cling if we are finished transitioning, otherwise, we will try again when + // the transition completes in AppsCustomizeTabHost (otherwise the wrong offsets will be + // returned while animating) + AppsCustomizeTabHost host = (AppsCustomizeTabHost) getTabHost(); + if (!host.isTransitioning()) { + post(new Runnable() { + @Override + public void run() { + showAllAppsCling(); + } + }); + } + } + void showAllAppsCling() { + if (!mHasShownAllAppsCling && isDataReady() && testDataReady()) { + mHasShownAllAppsCling = true; + // Calculate the position for the cling punch through + int[] offset = new int[2]; + int[] pos = mWidgetSpacingLayout.estimateCellPosition(mClingFocusedX, mClingFocusedY); + mLauncher.getDragLayer().getLocationInDragLayer(this, offset); + // PagedViews are centered horizontally but top aligned + pos[0] += (getMeasuredWidth() - mWidgetSpacingLayout.getMeasuredWidth()) / 2 + + offset[0]; + pos[1] += offset[1]; + mLauncher.showFirstRunAllAppsCling(pos); + } } @Override diff --git a/src/com/android/launcher2/AppsCustomizeTabHost.java b/src/com/android/launcher2/AppsCustomizeTabHost.java index 897a7fb..778d6bc 100644 --- a/src/com/android/launcher2/AppsCustomizeTabHost.java +++ b/src/com/android/launcher2/AppsCustomizeTabHost.java @@ -388,8 +388,9 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona } if (!toWorkspace) { - // Dismiss the cling if necessary + // Dismiss the workspace cling and show the all apps cling (if not already shown) l.dismissWorkspaceCling(null); + mAppsCustomizePane.showAllAppsCling(); if (!LauncherApplication.isScreenLarge()) { mAppsCustomizePane.hideScrollingIndicator(false); diff --git a/src/com/android/launcher2/DragController.java b/src/com/android/launcher2/DragController.java index ee054ab..286e2fe 100644 --- a/src/com/android/launcher2/DragController.java +++ b/src/com/android/launcher2/DragController.java @@ -101,7 +101,6 @@ public class DragController { private int mScrollState = SCROLL_OUTSIDE_ZONE; private ScrollRunnable mScrollRunnable = new ScrollRunnable(); - private RectF mDeleteRegion; private DropTarget mLastDropTarget; private InputMethodManager mInputMethodManager; @@ -486,12 +485,6 @@ public class DragController { } mLastDropTarget = dropTarget; - // Scroll, maybe, but not if we're in the delete region. - boolean inDeleteRegion = false; - if (mDeleteRegion != null) { - inDeleteRegion = mDeleteRegion.contains(x, y); - } - // After a scroll, the touch point will still be in the scroll region. // Rather than scrolling immediately, require a bit of twiddling to scroll again final int slop = ViewConfiguration.get(mLauncher).getScaledWindowTouchSlop(); @@ -500,7 +493,7 @@ public class DragController { mLastTouch[0] = x; mLastTouch[1] = y; - if (!inDeleteRegion && x < mScrollZone) { + if (x < mScrollZone) { if (mScrollState == SCROLL_OUTSIDE_ZONE && mDistanceSinceScroll > slop) { mScrollState = SCROLL_WAITING_IN_ZONE; if (mDragScroller.onEnterScrollArea(x, y, SCROLL_LEFT)) { @@ -508,7 +501,7 @@ public class DragController { mHandler.postDelayed(mScrollRunnable, SCROLL_DELAY); } } - } else if (!inDeleteRegion && x > mScrollView.getWidth() - mScrollZone) { + } else if (x > mScrollView.getWidth() - mScrollZone) { if (mScrollState == SCROLL_OUTSIDE_ZONE && mDistanceSinceScroll > slop) { mScrollState = SCROLL_WAITING_IN_ZONE; if (mDragScroller.onEnterScrollArea(x, y, SCROLL_RIGHT)) { @@ -669,15 +662,6 @@ public class DragController { mScrollView = v; } - /** - * Specifies the delete region. We won't scroll on touch events over the delete region. - * - * @param region The rectangle in DragLayer coordinates of the delete region. - */ - void setDeleteRegion(RectF region) { - mDeleteRegion = region; - } - DragView getDragView() { return mDragObject.dragView; } |