Loading packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java +14 −3 Original line number Diff line number Diff line Loading @@ -351,10 +351,21 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv } private void animateFromMinimized() { if (mEnterAnimator != null && mEnterAnimator.isRunning()) { mEnterAnimator.cancel(); } mEnterAnimator = mView.getMinimizedFadeoutAnimation(); mEnterAnimator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); mIsMinimized = false; setExpandedView(); animateIn(); } }); mEnterAnimator.start(); } private String getAccessibilityAnnouncement(ClipboardModel.Type type) { if (type == ClipboardModel.Type.TEXT) { Loading packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayView.java +15 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import static android.content.res.Configuration.ORIENTATION_PORTRAIT; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.animation.TimeInterpolator; import android.animation.ValueAnimator; import android.annotation.Nullable; Loading Loading @@ -286,6 +287,20 @@ public class ClipboardOverlayView extends DraggableConstraintLayout { mActionChips.clear(); } Animator getMinimizedFadeoutAnimation() { ObjectAnimator anim = ObjectAnimator.ofFloat(mMinimizedPreview, "alpha", 1, 0); anim.setDuration(66); anim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); mMinimizedPreview.setVisibility(View.GONE); mMinimizedPreview.setAlpha(1); } }); return anim; } Animator getEnterAnimation() { if (mAccessibilityManager.isEnabled()) { mDismissButton.setVisibility(View.VISIBLE); Loading packages/SystemUI/tests/src/com/android/systemui/clipboardoverlay/ClipboardOverlayControllerTest.java +8 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static org.mockito.Mockito.verifyNoMoreInteractions; import static org.mockito.Mockito.when; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.app.RemoteAction; import android.content.ClipData; import android.content.ClipDescription; Loading Loading @@ -101,6 +102,9 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase { private ArgumentCaptor<ClipboardOverlayView.ClipboardOverlayCallbacks> mOverlayCallbacksCaptor; private ClipboardOverlayView.ClipboardOverlayCallbacks mCallbacks; @Captor private ArgumentCaptor<AnimatorListenerAdapter> mAnimatorArgumentCaptor; private FakeExecutor mExecutor = new FakeExecutor(new FakeSystemClock()); @Before Loading Loading @@ -478,12 +482,16 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase { when(mClipboardOverlayWindow.getWindowInsets()).thenReturn( getImeInsets(new Rect(0, 0, 0, 1))); mOverlayController.setClipData(mSampleClipData, ""); Animator mockFadeoutAnimator = Mockito.mock(Animator.class); when(mClipboardOverlayView.getMinimizedFadeoutAnimation()).thenReturn(mockFadeoutAnimator); verify(mClipboardOverlayView).setMinimized(true); verify(mClipboardOverlayView, never()).setMinimized(false); verify(mClipboardOverlayView, never()).showTextPreview(any(), anyBoolean()); mCallbacks.onMinimizedViewTapped(); verify(mockFadeoutAnimator).addListener(mAnimatorArgumentCaptor.capture()); mAnimatorArgumentCaptor.getValue().onAnimationEnd(mockFadeoutAnimator); verify(mClipboardOverlayView).setMinimized(false); verify(mClipboardOverlayView).showTextPreview("Test Item", false); Loading Loading
packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java +14 −3 Original line number Diff line number Diff line Loading @@ -351,10 +351,21 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv } private void animateFromMinimized() { if (mEnterAnimator != null && mEnterAnimator.isRunning()) { mEnterAnimator.cancel(); } mEnterAnimator = mView.getMinimizedFadeoutAnimation(); mEnterAnimator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); mIsMinimized = false; setExpandedView(); animateIn(); } }); mEnterAnimator.start(); } private String getAccessibilityAnnouncement(ClipboardModel.Type type) { if (type == ClipboardModel.Type.TEXT) { Loading
packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayView.java +15 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import static android.content.res.Configuration.ORIENTATION_PORTRAIT; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.animation.TimeInterpolator; import android.animation.ValueAnimator; import android.annotation.Nullable; Loading Loading @@ -286,6 +287,20 @@ public class ClipboardOverlayView extends DraggableConstraintLayout { mActionChips.clear(); } Animator getMinimizedFadeoutAnimation() { ObjectAnimator anim = ObjectAnimator.ofFloat(mMinimizedPreview, "alpha", 1, 0); anim.setDuration(66); anim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); mMinimizedPreview.setVisibility(View.GONE); mMinimizedPreview.setAlpha(1); } }); return anim; } Animator getEnterAnimation() { if (mAccessibilityManager.isEnabled()) { mDismissButton.setVisibility(View.VISIBLE); Loading
packages/SystemUI/tests/src/com/android/systemui/clipboardoverlay/ClipboardOverlayControllerTest.java +8 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static org.mockito.Mockito.verifyNoMoreInteractions; import static org.mockito.Mockito.when; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.app.RemoteAction; import android.content.ClipData; import android.content.ClipDescription; Loading Loading @@ -101,6 +102,9 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase { private ArgumentCaptor<ClipboardOverlayView.ClipboardOverlayCallbacks> mOverlayCallbacksCaptor; private ClipboardOverlayView.ClipboardOverlayCallbacks mCallbacks; @Captor private ArgumentCaptor<AnimatorListenerAdapter> mAnimatorArgumentCaptor; private FakeExecutor mExecutor = new FakeExecutor(new FakeSystemClock()); @Before Loading Loading @@ -478,12 +482,16 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase { when(mClipboardOverlayWindow.getWindowInsets()).thenReturn( getImeInsets(new Rect(0, 0, 0, 1))); mOverlayController.setClipData(mSampleClipData, ""); Animator mockFadeoutAnimator = Mockito.mock(Animator.class); when(mClipboardOverlayView.getMinimizedFadeoutAnimation()).thenReturn(mockFadeoutAnimator); verify(mClipboardOverlayView).setMinimized(true); verify(mClipboardOverlayView, never()).setMinimized(false); verify(mClipboardOverlayView, never()).showTextPreview(any(), anyBoolean()); mCallbacks.onMinimizedViewTapped(); verify(mockFadeoutAnimator).addListener(mAnimatorArgumentCaptor.capture()); mAnimatorArgumentCaptor.getValue().onAnimationEnd(mockFadeoutAnimator); verify(mClipboardOverlayView).setMinimized(false); verify(mClipboardOverlayView).showTextPreview("Test Item", false); Loading