mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-20 11:18:21 +00:00
Need to remove views and not just hide them after animations.
- Removing Manage Apps button from workspace and renaming it in AppsCustomize - Fixing foolish string play in resources from initial change for search bar - Using proper way to get full screen dims for wallpaper fix Change-Id: I1319d225135436468f1feb3057cd9f28eda7c89c
This commit is contained in:
@@ -16,6 +16,9 @@
|
||||
|
||||
package com.android.launcher2;
|
||||
|
||||
import android.animation.Animator;
|
||||
import android.animation.AnimatorListenerAdapter;
|
||||
import android.animation.ObjectAnimator;
|
||||
import android.content.Context;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
@@ -32,6 +35,11 @@ public class SearchDropTargetBar extends FrameLayout implements DragController.D
|
||||
private static final int sTransitionInDuration = 275;
|
||||
private static final int sTransitionOutDuration = 100;
|
||||
|
||||
private ObjectAnimator mDropTargetBarFadeInAnim;
|
||||
private ObjectAnimator mDropTargetBarFadeOutAnim;
|
||||
private ObjectAnimator mQSBSearchBarFadeInAnim;
|
||||
private ObjectAnimator mQSBSearchBarFadeOutAnim;
|
||||
|
||||
private boolean mIsSearchBarHidden;
|
||||
private View mQSBSearchBar;
|
||||
private View mDropTargetBar;
|
||||
@@ -66,23 +74,68 @@ public class SearchDropTargetBar extends FrameLayout implements DragController.D
|
||||
mDropTargetBar = findViewById(R.id.drag_target_bar);
|
||||
mInfoDropTarget = (ButtonDropTarget) mDropTargetBar.findViewById(R.id.info_target);
|
||||
mDeleteDropTarget = (ButtonDropTarget) mDropTargetBar.findViewById(R.id.delete_target);
|
||||
|
||||
// Create the various fade animations
|
||||
mDropTargetBarFadeInAnim = ObjectAnimator.ofFloat(mDropTargetBar, "alpha", 1f);
|
||||
mDropTargetBarFadeInAnim.setDuration(sTransitionInDuration);
|
||||
mDropTargetBarFadeInAnim.addListener(new AnimatorListenerAdapter() {
|
||||
@Override
|
||||
public void onAnimationStart(Animator animation) {
|
||||
mDropTargetBar.setVisibility(View.VISIBLE);
|
||||
}
|
||||
});
|
||||
mDropTargetBarFadeOutAnim = ObjectAnimator.ofFloat(mDropTargetBar, "alpha", 0f);
|
||||
mDropTargetBarFadeOutAnim.setDuration(sTransitionOutDuration);
|
||||
mDropTargetBarFadeOutAnim.addListener(new AnimatorListenerAdapter() {
|
||||
@Override
|
||||
public void onAnimationEnd(Animator animation) {
|
||||
mDropTargetBar.setVisibility(View.GONE);
|
||||
}
|
||||
});
|
||||
mQSBSearchBarFadeInAnim = ObjectAnimator.ofFloat(mQSBSearchBar, "alpha", 1f);
|
||||
mQSBSearchBarFadeInAnim.setDuration(sTransitionInDuration);
|
||||
mQSBSearchBarFadeInAnim.addListener(new AnimatorListenerAdapter() {
|
||||
@Override
|
||||
public void onAnimationStart(Animator animation) {
|
||||
mQSBSearchBar.setVisibility(View.VISIBLE);
|
||||
}
|
||||
});
|
||||
mQSBSearchBarFadeOutAnim = ObjectAnimator.ofFloat(mQSBSearchBar, "alpha", 0f);
|
||||
mQSBSearchBarFadeOutAnim.setDuration(sTransitionOutDuration);
|
||||
mQSBSearchBarFadeOutAnim.addListener(new AnimatorListenerAdapter() {
|
||||
@Override
|
||||
public void onAnimationEnd(Animator animation) {
|
||||
mQSBSearchBar.setVisibility(View.GONE);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void cancelAnimations() {
|
||||
mDropTargetBarFadeInAnim.cancel();
|
||||
mDropTargetBarFadeOutAnim.cancel();
|
||||
mQSBSearchBarFadeInAnim.cancel();
|
||||
mQSBSearchBarFadeOutAnim.cancel();
|
||||
}
|
||||
|
||||
/*
|
||||
* Shows and hides the search bar.
|
||||
*/
|
||||
public void showSearchBar(boolean animated) {
|
||||
cancelAnimations();
|
||||
if (animated) {
|
||||
mQSBSearchBar.animate().alpha(1f).setDuration(sTransitionInDuration);
|
||||
mQSBSearchBarFadeInAnim.start();
|
||||
} else {
|
||||
mQSBSearchBar.setVisibility(View.VISIBLE);
|
||||
mQSBSearchBar.setAlpha(1f);
|
||||
}
|
||||
mIsSearchBarHidden = false;
|
||||
}
|
||||
public void hideSearchBar(boolean animated) {
|
||||
cancelAnimations();
|
||||
if (animated) {
|
||||
mQSBSearchBar.animate().alpha(0f).setDuration(sTransitionOutDuration);
|
||||
mQSBSearchBarFadeOutAnim.start();
|
||||
} else {
|
||||
mQSBSearchBar.setVisibility(View.GONE);
|
||||
mQSBSearchBar.setAlpha(0f);
|
||||
}
|
||||
mIsSearchBarHidden = true;
|
||||
@@ -104,18 +157,18 @@ public class SearchDropTargetBar extends FrameLayout implements DragController.D
|
||||
@Override
|
||||
public void onDragStart(DragSource source, Object info, int dragAction) {
|
||||
// Animate out the QSB search bar, and animate in the drop target bar
|
||||
mDropTargetBar.animate().alpha(1f).setDuration(sTransitionInDuration);
|
||||
mDropTargetBarFadeInAnim.start();
|
||||
if (!mIsSearchBarHidden) {
|
||||
mQSBSearchBar.animate().alpha(0f).setDuration(sTransitionOutDuration);
|
||||
mQSBSearchBarFadeOutAnim.start();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDragEnd() {
|
||||
// Restore the QSB search bar, and animate out the drop target bar
|
||||
mDropTargetBar.animate().alpha(0f).setDuration(sTransitionOutDuration);
|
||||
mDropTargetBarFadeOutAnim.start();
|
||||
if (!mIsSearchBarHidden) {
|
||||
mQSBSearchBar.animate().alpha(1f).setDuration(sTransitionInDuration);
|
||||
mQSBSearchBarFadeInAnim.start();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user