diff options
-rw-r--r-- | res/layout-land/launcher.xml | 6 | ||||
-rw-r--r-- | res/layout-port/launcher.xml | 6 | ||||
-rw-r--r-- | res/layout-sw720dp/workspace.xml | 5 | ||||
-rw-r--r-- | res/layout-sw720dp/workspace_screen.xml | 33 | ||||
-rw-r--r-- | res/layout/workspace_screen.xml | 13 | ||||
-rw-r--r-- | res/values-land/dimens.xml | 21 | ||||
-rw-r--r-- | res/values-land/styles.xml | 6 | ||||
-rw-r--r-- | res/values-port/dimens.xml | 14 | ||||
-rw-r--r-- | res/values-port/styles.xml | 6 | ||||
-rw-r--r-- | res/values-sw340dp/dimens.xml | 14 | ||||
-rw-r--r-- | res/values-sw720dp-land/dimens.xml | 5 | ||||
-rw-r--r-- | res/values-sw720dp-port/dimens.xml | 5 | ||||
-rw-r--r-- | res/values-sw720dp/dimens.xml | 20 | ||||
-rw-r--r-- | res/values/dimens.xml | 21 | ||||
-rw-r--r-- | src/com/android/launcher2/AppsCustomizePagedView.java | 10 | ||||
-rw-r--r-- | src/com/android/launcher2/AppsCustomizeTabHost.java | 7 | ||||
-rw-r--r-- | src/com/android/launcher2/Launcher.java | 27 | ||||
-rw-r--r-- | src/com/android/launcher2/Workspace.java | 6 |
18 files changed, 132 insertions, 93 deletions
diff --git a/res/layout-land/launcher.xml b/res/layout-land/launcher.xml index 0c1a195..35f1a08 100644 --- a/res/layout-land/launcher.xml +++ b/res/layout-land/launcher.xml @@ -27,8 +27,10 @@ android:id="@+id/workspace" android:layout_width="match_parent" android:layout_height="match_parent" - android:paddingLeft="@dimen/qsb_bar_height" - android:paddingRight="@dimen/button_bar_height" + android:paddingLeft="@dimen/workspace_left_padding" + android:paddingRight="@dimen/workspace_right_padding" + android:paddingTop="@dimen/workspace_top_padding" + android:paddingBottom="@dimen/workspace_bottom_padding" launcher:defaultScreen="2" launcher:cellCountX="@integer/cell_count_x" launcher:cellCountY="@integer/cell_count_y" diff --git a/res/layout-port/launcher.xml b/res/layout-port/launcher.xml index f6ff2e8..6030382 100644 --- a/res/layout-port/launcher.xml +++ b/res/layout-port/launcher.xml @@ -44,8 +44,10 @@ android:id="@+id/workspace" android:layout_width="match_parent" android:layout_height="match_parent" - android:paddingTop="@dimen/qsb_bar_height_inset" - android:paddingBottom="@dimen/button_bar_height" + android:paddingLeft="@dimen/workspace_left_padding" + android:paddingRight="@dimen/workspace_right_padding" + android:paddingTop="@dimen/workspace_top_padding" + android:paddingBottom="@dimen/workspace_bottom_padding" launcher:defaultScreen="2" launcher:cellCountX="@integer/cell_count_x" launcher:cellCountY="@integer/cell_count_y" diff --git a/res/layout-sw720dp/workspace.xml b/res/layout-sw720dp/workspace.xml index 327afaf..5658a4b 100644 --- a/res/layout-sw720dp/workspace.xml +++ b/res/layout-sw720dp/workspace.xml @@ -19,7 +19,10 @@ <com.android.launcher2.Workspace xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher" - android:paddingTop="@dimen/workspace_content_large_only_top_margin" + android:paddingLeft="@dimen/workspace_left_padding" + android:paddingRight="@dimen/workspace_right_padding" + android:paddingTop="@dimen/workspace_top_padding" + android:paddingBottom="@dimen/workspace_bottom_padding" launcher:defaultScreen="2" launcher:pageSpacing="@dimen/workspace_page_spacing"> <include android:id="@+id/cell1" layout="@layout/workspace_screen" /> diff --git a/res/layout-sw720dp/workspace_screen.xml b/res/layout-sw720dp/workspace_screen.xml deleted file mode 100644 index 52f9def..0000000 --- a/res/layout-sw720dp/workspace_screen.xml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- Copyright (C) 2008 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. ---> - -<com.android.launcher2.CellLayout - xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher" - - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:paddingLeft="@dimen/workspace_left_padding" - android:paddingRight="@dimen/workspace_right_padding" - android:paddingTop="@dimen/workspace_top_padding" - android:paddingBottom="@dimen/workspace_bottom_padding" - android:hapticFeedbackEnabled="false" - - launcher:cellWidth="@dimen/workspace_cell_width" - launcher:cellHeight="@dimen/workspace_cell_height" - launcher:widthGap="@dimen/workspace_width_gap" - launcher:heightGap="@dimen/workspace_height_gap" - launcher:maxGap="@dimen/workspace_max_gap" /> diff --git a/res/layout/workspace_screen.xml b/res/layout/workspace_screen.xml index 23e1def..d6e66f6 100644 --- a/res/layout/workspace_screen.xml +++ b/res/layout/workspace_screen.xml @@ -17,16 +17,17 @@ <com.android.launcher2.CellLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher" - style="@style/WorkspaceScreen" - android:paddingLeft="@dimen/workspace_left_padding" - android:paddingRight="@dimen/workspace_right_padding" - android:paddingTop="@dimen/workspace_top_padding" - android:paddingBottom="@dimen/workspace_bottom_padding" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingLeft="@dimen/cell_layout_left_padding" + android:paddingRight="@dimen/cell_layout_right_padding" + android:paddingTop="@dimen/cell_layout_top_padding" + android:paddingBottom="@dimen/cell_layout_bottom_padding" android:hapticFeedbackEnabled="false" launcher:cellWidth="@dimen/workspace_cell_width" launcher:cellHeight="@dimen/workspace_cell_height" launcher:widthGap="@dimen/workspace_width_gap" launcher:heightGap="@dimen/workspace_height_gap" - launcher:maxGap="@dimen/workspace_max_gap" /> + launcher:maxGap="@dimen/workspace_max_gap" />
\ No newline at end of file diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml index 5f03510..69d68be 100644 --- a/res/values-land/dimens.xml +++ b/res/values-land/dimens.xml @@ -24,21 +24,26 @@ <dimen name="workspace_cell_height">74dp</dimen> <dimen name="hotseat_cell_width">64dp</dimen> <dimen name="hotseat_cell_height">58dp</dimen> - <!-- Block spacing on each side of the screen --> - <dimen name="workspace_left_padding">0dp</dimen> - <dimen name="workspace_right_padding">0dp</dimen> - <!-- We need top/bottom padding for portals to look right, but - really only in spring loaded mode... --> - <dimen name="workspace_top_padding">0dp</dimen> - <dimen name="workspace_bottom_padding">0dp</dimen> <!-- We really want the page spacing to be the max of either the button bar - height or the qsb bar height --> + height or the qsb bar height --> <dimen name="workspace_page_spacing">-1dp</dimen> <dimen name="workspace_divider_padding_left">0dp</dimen> <dimen name="workspace_divider_padding_right">0dp</dimen> <dimen name="workspace_divider_padding_top">12dp</dimen> <dimen name="workspace_divider_padding_bottom">12dp</dimen> + <!-- Block spacing on each side of the screen. And also padding + for the portals to look right. --> + <dimen name="cell_layout_left_padding">@dimen/cell_layout_left_padding_land</dimen> + <dimen name="cell_layout_right_padding">@dimen/cell_layout_right_padding_land</dimen> + <dimen name="cell_layout_top_padding">@dimen/cell_layout_top_padding_land</dimen> + <dimen name="cell_layout_bottom_padding">@dimen/cell_layout_bottom_padding_land</dimen> + <!-- Workspace padding --> + <dimen name="workspace_left_padding">@dimen/workspace_left_padding_land</dimen> + <dimen name="workspace_right_padding">@dimen/workspace_right_padding_land</dimen> + <dimen name="workspace_top_padding">@dimen/workspace_top_padding_land</dimen> + <dimen name="workspace_bottom_padding">@dimen/workspace_bottom_padding_land</dimen> + <dimen name="app_icon_padding_top">6dp</dimen> <!-- height of the bottom row of controls --> diff --git a/res/values-land/styles.xml b/res/values-land/styles.xml index 71ab658..f4519ab 100644 --- a/res/values-land/styles.xml +++ b/res/values-land/styles.xml @@ -18,12 +18,6 @@ --> <resources> -<!-- Workspace --> - <style name="WorkspaceScreen"> - <item name="android:layout_width">wrap_content</item> - <item name="android:layout_height">wrap_content</item> - </style> - <!-- Search Bar --> <style name="QSBBar"> <item name="android:orientation">vertical</item> diff --git a/res/values-port/dimens.xml b/res/values-port/dimens.xml index b7e8170..193f331 100644 --- a/res/values-port/dimens.xml +++ b/res/values-port/dimens.xml @@ -22,12 +22,18 @@ <dimen name="qsb_padding_right">3dp</dimen> <!-- Workspace --> - <dimen name="workspace_left_padding">0dp</dimen> - <dimen name="workspace_right_padding">0dp</dimen> <!-- Block spacing on each side of the screen. And also padding for the portals to look right. --> - <dimen name="workspace_top_padding">6dp</dimen> - <dimen name="workspace_bottom_padding">0dp</dimen> + <dimen name="cell_layout_left_padding">@dimen/cell_layout_left_padding_port</dimen> + <dimen name="cell_layout_right_padding">@dimen/cell_layout_right_padding_port</dimen> + <dimen name="cell_layout_top_padding">@dimen/cell_layout_top_padding_port</dimen> + <dimen name="cell_layout_bottom_padding">@dimen/cell_layout_bottom_padding_port</dimen> + <!-- Workspace padding --> + <dimen name="workspace_left_padding">@dimen/workspace_left_padding_port</dimen> + <dimen name="workspace_right_padding">@dimen/workspace_right_padding_port</dimen> + <dimen name="workspace_top_padding">@dimen/workspace_top_padding_port</dimen> + <dimen name="workspace_bottom_padding">@dimen/workspace_bottom_padding_port</dimen> + <dimen name="workspace_page_spacing">-1dp</dimen> <!-- AppsCustomize --> diff --git a/res/values-port/styles.xml b/res/values-port/styles.xml index 20369c9..386653e 100644 --- a/res/values-port/styles.xml +++ b/res/values-port/styles.xml @@ -24,12 +24,6 @@ <item name="android:paddingRight">8dp</item> </style> -<!-- Workspace --> - <style name="WorkspaceScreen"> - <item name="android:layout_width">wrap_content</item> - <item name="android:layout_height">wrap_content</item> - </style> - <!-- AppsCustomize --> <style name="TabIndicator.AppsCustomize"> <item name="android:maxWidth">130dp</item> diff --git a/res/values-sw340dp/dimens.xml b/res/values-sw340dp/dimens.xml index 2a2dac6..8f5a367 100644 --- a/res/values-sw340dp/dimens.xml +++ b/res/values-sw340dp/dimens.xml @@ -21,10 +21,6 @@ <!-- Workspace --> <dimen name="workspace_width_gap">0dp</dimen> <dimen name="workspace_height_gap">0dp</dimen> - <dimen name="workspace_top_padding">8dp</dimen> - <dimen name="workspace_bottom_padding">8dp</dimen> - <dimen name="workspace_left_padding">8dp</dimen> - <dimen name="workspace_right_padding">8dp</dimen> <!-- Hotseat --> <dimen name="hotseat_width_gap">0dp</dimen> @@ -37,4 +33,14 @@ <dimen name="button_bar_width_left_padding">8dp</dimen> <dimen name="button_bar_width_right_padding">8dp</dimen> <dimen name="button_bar_height_plus_padding">80dp</dimen> + +<!-- CellLayout padding land / port--> + <dimen name="cell_layout_left_padding_portrait">8dp</dimen> + <dimen name="cell_layout_left_padding_landscape">8dp</dimen> + <dimen name="cell_layout_right_padding_portrait">8dp</dimen> + <dimen name="cell_layout_right_padding_landscape">8dp</dimen> + <dimen name="cell_layout_top_padding_portrait">8dp</dimen> + <dimen name="cell_layout_top_padding_landscape">8dp</dimen> + <dimen name="cell_layout_bottom_padding_portrait">8dp</dimen> + <dimen name="cell_layout_bottom_padding_landscape">8dp</dimen> </resources> diff --git a/res/values-sw720dp-land/dimens.xml b/res/values-sw720dp-land/dimens.xml index e7fe32c..2d39fc7 100644 --- a/res/values-sw720dp-land/dimens.xml +++ b/res/values-sw720dp-land/dimens.xml @@ -22,11 +22,6 @@ <dimen name="apps_customize_pageLayoutPaddingRight">16dp</dimen> <!-- Workspace --> - <dimen name="workspace_left_padding">24dip</dimen> - <dimen name="workspace_right_padding">24dip</dimen> - <!-- We need padding on the screens for portals to look right --> - <dimen name="workspace_top_padding">12dip</dimen> - <dimen name="workspace_bottom_padding">12dip</dimen> <dimen name="workspace_width_gap">32dp</dimen> <dimen name="workspace_height_gap">2dp</dimen> <dimen name="workspace_page_spacing">50dp</dimen> diff --git a/res/values-sw720dp-port/dimens.xml b/res/values-sw720dp-port/dimens.xml index 2e0d74a..9a0261b 100644 --- a/res/values-sw720dp-port/dimens.xml +++ b/res/values-sw720dp-port/dimens.xml @@ -31,11 +31,6 @@ <!-- the area at the edge of the screen that makes the workspace go left or right while you're dragging. --> <dimen name="scroll_zone">40dp</dimen> - - <dimen name="workspace_left_padding">15dip</dimen> - <dimen name="workspace_right_padding">15dip</dimen> - <dimen name="workspace_top_padding">25dip</dimen> - <dimen name="workspace_bottom_padding">25dip</dimen> <dimen name="workspace_width_gap">0dp</dimen> <dimen name="workspace_height_gap">32dp</dimen> <dimen name="workspace_page_spacing">24dp</dimen> diff --git a/res/values-sw720dp/dimens.xml b/res/values-sw720dp/dimens.xml index 62bf9a8..dc1c65a 100644 --- a/res/values-sw720dp/dimens.xml +++ b/res/values-sw720dp/dimens.xml @@ -53,4 +53,24 @@ the drag view should be offset from the position of the original view. --> <dimen name="dragViewOffsetX">0dp</dimen> <dimen name="dragViewOffsetY">0dp</dimen> + +<!-- CellLayout padding land / port--> + <dimen name="cell_layout_left_padding_portrait">15dp</dimen> + <dimen name="cell_layout_left_padding_landscape">24dp</dimen> + <dimen name="cell_layout_right_padding_portrait">15dp</dimen> + <dimen name="cell_layout_right_padding_landscape">24dp</dimen> + <dimen name="cell_layout_top_padding_portrait">25dp</dimen> + <dimen name="cell_layout_top_padding_landscape">12dp</dimen> + <dimen name="cell_layout_bottom_padding_portrait">25dp</dimen> + <dimen name="cell_layout_bottom_padding_landscape">12dp</dimen> + +<!-- Workspace padding --> + <dimen name="workspace_left_padding_port">0dp</dimen> + <dimen name="workspace_left_padding_land">0dp</dimen> + <dimen name="workspace_right_padding_port">0dp</dimen> + <dimen name="workspace_right_padding_land">0dp</dimen> + <dimen name="workspace_top_padding_port">@dimen/workspace_content_large_only_top_margin</dimen> + <dimen name="workspace_top_padding_land">@dimen/workspace_content_large_only_top_margin</dimen> + <dimen name="workspace_bottom_padding_port">0dp</dimen> + <dimen name="workspace_bottom_padding_land">0dp</dimen> </resources> diff --git a/res/values/dimens.xml b/res/values/dimens.xml index 45e544a..ff17ec4 100644 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -119,4 +119,25 @@ <dimen name="folder_name_padding">10dp</dimen> <dimen name="folder_width_gap">0dp</dimen> <dimen name="folder_height_gap">0dp</dimen> + +<!-- CellLayout padding --> + <dimen name="cell_layout_left_padding_port">0dp</dimen> + <dimen name="cell_layout_left_padding_land">0dp</dimen> + <dimen name="cell_layout_right_padding_port">0dp</dimen> + <dimen name="cell_layout_right_padding_land">0dp</dimen> + <dimen name="cell_layout_top_padding_port">6dp</dimen> + <dimen name="cell_layout_top_padding_land">0dp</dimen> + <dimen name="cell_layout_bottom_padding_port">0dp</dimen> + <dimen name="cell_layout_bottom_padding_land">0dp</dimen> + +<!-- Workspace padding --> + <dimen name="workspace_left_padding_port">0dp</dimen> + <dimen name="workspace_left_padding_land">@dimen/qsb_bar_height</dimen> + <dimen name="workspace_right_padding_port">0dp</dimen> + <dimen name="workspace_right_padding_land">@dimen/button_bar_height</dimen> + <dimen name="workspace_top_padding_port">@dimen/qsb_bar_height_inset</dimen> + <dimen name="workspace_top_padding_land">0dp</dimen> + <dimen name="workspace_bottom_padding_port">@dimen/button_bar_height</dimen> + <dimen name="workspace_bottom_padding_land">0dp</dimen> + </resources> diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java index 4958f03..3936e59 100644 --- a/src/com/android/launcher2/AppsCustomizePagedView.java +++ b/src/com/android/launcher2/AppsCustomizePagedView.java @@ -762,7 +762,12 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen } @Override - public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) { + public View getContent() { + return null; + } + + @Override + public void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace) { mInTransition = true; if (toWorkspace) { cancelAllTasks(); @@ -770,8 +775,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen } @Override - public View getContent() { - return null; + public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) { } @Override diff --git a/src/com/android/launcher2/AppsCustomizeTabHost.java b/src/com/android/launcher2/AppsCustomizeTabHost.java index 34b7c09..01c08c9 100644 --- a/src/com/android/launcher2/AppsCustomizeTabHost.java +++ b/src/com/android/launcher2/AppsCustomizeTabHost.java @@ -376,8 +376,8 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona /* LauncherTransitionable overrides */ @Override - public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) { - mAppsCustomizePane.onLauncherTransitionStart(l, animated, toWorkspace); + public void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace) { + mAppsCustomizePane.onLauncherTransitionPrepare(l, animated, toWorkspace); mInTransition = true; mTransitioningToWorkspace = toWorkspace; @@ -404,7 +404,10 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona mAppsCustomizePane.reset(); mResetAfterTransition = false; } + } + @Override + public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) { if (animated) { enableAndBuildHardwareLayer(); } diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java index f605160..e5c62ad 100644 --- a/src/com/android/launcher2/Launcher.java +++ b/src/com/android/launcher2/Launcher.java @@ -2166,6 +2166,12 @@ public final class Launcher extends Activity } } + private void dispatchOnLauncherTransitionPrepare(View v, boolean animated, boolean toWorkspace) { + if (v instanceof LauncherTransitionable) { + ((LauncherTransitionable) v).onLauncherTransitionPrepare(this, animated, toWorkspace); + } + } + private void dispatchOnLauncherTransitionStart(View v, boolean animated, boolean toWorkspace) { if (v instanceof LauncherTransitionable) { ((LauncherTransitionable) v).onLauncherTransitionStart(this, animated, toWorkspace); @@ -2246,7 +2252,7 @@ public final class Launcher extends Activity final int fadeDuration = res.getInteger(R.integer.config_appsCustomizeFadeInTime); final float scale = (float) res.getInteger(R.integer.config_appsCustomizeZoomScaleFactor); final View fromView = mWorkspace; - final View toView = mAppsCustomizeTabHost; + final AppsCustomizeTabHost toView = mAppsCustomizeTabHost; final int startDelay = res.getInteger(R.integer.config_workspaceAppsCustomizeAnimationStagger); @@ -2326,8 +2332,8 @@ public final class Launcher extends Activity boolean delayAnim = false; final ViewTreeObserver observer; - dispatchOnLauncherTransitionStart(fromView, animated, false); - dispatchOnLauncherTransitionStart(toView, animated, false); + dispatchOnLauncherTransitionPrepare(fromView, animated, false); + dispatchOnLauncherTransitionPrepare(toView, animated, false); // If any of the objects being animated haven't been measured/laid out // yet, delay the animation until we get a layout pass @@ -2351,6 +2357,8 @@ public final class Launcher extends Activity if (mStateAnimation == stateAnimation) { // Need to update pivots for zoom if layout changed setPivotsForZoom(toView, scale); + dispatchOnLauncherTransitionStart(fromView, animated, false); + dispatchOnLauncherTransitionStart(toView, animated, false); mStateAnimation.start(); } } @@ -2361,6 +2369,8 @@ public final class Launcher extends Activity observer.addOnGlobalLayoutListener(delayedStart); } else { setPivotsForZoom(toView, scale); + dispatchOnLauncherTransitionStart(fromView, animated, false); + dispatchOnLauncherTransitionStart(toView, animated, false); mStateAnimation.start(); } } else { @@ -2376,8 +2386,10 @@ public final class Launcher extends Activity mWorkspace.hideScrollingIndicator(true); hideDockDivider(); } + dispatchOnLauncherTransitionPrepare(fromView, animated, false); dispatchOnLauncherTransitionStart(fromView, animated, false); dispatchOnLauncherTransitionEnd(fromView, animated, false); + dispatchOnLauncherTransitionPrepare(toView, animated, false); dispatchOnLauncherTransitionStart(toView, animated, false); dispatchOnLauncherTransitionEnd(toView, animated, false); updateWallpaperVisibility(false); @@ -2442,8 +2454,8 @@ public final class Launcher extends Activity mStateAnimation = new AnimatorSet(); - dispatchOnLauncherTransitionStart(fromView, animated, true); - dispatchOnLauncherTransitionStart(toView, animated, true); + dispatchOnLauncherTransitionPrepare(fromView, animated, true); + dispatchOnLauncherTransitionPrepare(toView, animated, true); mStateAnimation.addListener(new AnimatorListenerAdapter() { @Override @@ -2465,11 +2477,15 @@ public final class Launcher extends Activity if (workspaceAnim != null) { mStateAnimation.play(workspaceAnim); } + dispatchOnLauncherTransitionStart(fromView, animated, true); + dispatchOnLauncherTransitionStart(toView, animated, true); mStateAnimation.start(); } else { fromView.setVisibility(View.GONE); + dispatchOnLauncherTransitionPrepare(fromView, animated, true); dispatchOnLauncherTransitionStart(fromView, animated, true); dispatchOnLauncherTransitionEnd(fromView, animated, true); + dispatchOnLauncherTransitionPrepare(toView, animated, true); dispatchOnLauncherTransitionStart(toView, animated, true); dispatchOnLauncherTransitionEnd(toView, animated, true); mWorkspace.hideScrollingIndicator(false); @@ -3453,6 +3469,7 @@ public final class Launcher extends Activity interface LauncherTransitionable { View getContent(); + void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace); void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace); void onLauncherTransitionStep(Launcher l, float t); void onLauncherTransitionEnd(Launcher l, boolean animated, boolean toWorkspace); diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java index f5c845e..892000d 100644 --- a/src/com/android/launcher2/Workspace.java +++ b/src/com/android/launcher2/Workspace.java @@ -1745,12 +1745,16 @@ public class Workspace extends SmoothPagedView } @Override - public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) { + public void onLauncherTransitionPrepare(Launcher l, boolean animated, boolean toWorkspace) { mIsSwitchingState = true; cancelScrollingIndicatorAnimations(); } @Override + public void onLauncherTransitionStart(Launcher l, boolean animated, boolean toWorkspace) { + } + + @Override public void onLauncherTransitionStep(Launcher l, float t) { mTransitionProgress = t; } |