summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/Workspace.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/launcher2/Workspace.java')
-rw-r--r--src/com/android/launcher2/Workspace.java64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index 23b8c2d99..e4865c20b 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -58,6 +58,7 @@ import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.DecelerateInterpolator;
+import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
@@ -109,6 +110,7 @@ public class Workspace extends SmoothPagedView
private float mBackgroundAlpha = 0;
private float mOverScrollMaxBackgroundAlpha = 0.0f;
private int mOverScrollPageIndex = -1;
+ private AnimatorSet mDividerAnimator;
private final WallpaperManager mWallpaperManager;
private IBinder mWindowToken;
@@ -3542,4 +3544,66 @@ public class Workspace extends SmoothPagedView
protected boolean hasElasticScrollIndicator() {
return true;
}
+
+ void showDockDivider(boolean immediately) {
+ final ViewGroup parent = (ViewGroup) getParent();
+ final View qsbDivider = (ImageView) (parent.findViewById(R.id.qsb_divider));
+ final View dockDivider = (ImageView) (parent.findViewById(R.id.dock_divider));
+ if (qsbDivider != null && dockDivider != null) {
+ qsbDivider.setVisibility(View.VISIBLE);
+ dockDivider.setVisibility(View.VISIBLE);
+ if (mDividerAnimator != null) {
+ mDividerAnimator.cancel();
+ mDividerAnimator = null;
+ }
+ if (immediately) {
+ qsbDivider.setAlpha(1f);
+ dockDivider.setAlpha(1f);
+ } else {
+ mDividerAnimator = new AnimatorSet();
+ mDividerAnimator.playTogether(ObjectAnimator.ofFloat(qsbDivider, "alpha", 1f),
+ ObjectAnimator.ofFloat(dockDivider, "alpha", 1f));
+ mDividerAnimator.setDuration(sScrollIndicatorFadeInDuration);
+ mDividerAnimator.start();
+ }
+ }
+ }
+
+ void hideDockDivider(boolean immediately) {
+ final ViewGroup parent = (ViewGroup) getParent();
+ final View qsbDivider = (ImageView) (parent.findViewById(R.id.qsb_divider));
+ final View dockDivider = (ImageView) (parent.findViewById(R.id.dock_divider));
+ if (qsbDivider != null && dockDivider != null) {
+ if (mDividerAnimator != null) {
+ mDividerAnimator.cancel();
+ mDividerAnimator = null;
+ }
+ if (immediately) {
+ qsbDivider.setVisibility(View.GONE);
+ dockDivider.setVisibility(View.GONE);
+ qsbDivider.setAlpha(0f);
+ dockDivider.setAlpha(0f);
+ } else {
+ mDividerAnimator = new AnimatorSet();
+ mDividerAnimator.playTogether(ObjectAnimator.ofFloat(qsbDivider, "alpha", 0f),
+ ObjectAnimator.ofFloat(dockDivider, "alpha", 0f));
+ mDividerAnimator.addListener(new AnimatorListenerAdapter() {
+ private boolean cancelled = false;
+ @Override
+ public void onAnimationCancel(android.animation.Animator animation) {
+ cancelled = true;
+ }
+ @Override
+ public void onAnimationEnd(android.animation.Animator animation) {
+ if (!cancelled) {
+ qsbDivider.setVisibility(View.GONE);
+ dockDivider.setVisibility(View.GONE);
+ }
+ }
+ });
+ mDividerAnimator.setDuration(sScrollIndicatorFadeOutDuration);
+ mDividerAnimator.start();
+ }
+ }
+ }
}