Loading packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java +27 −8 Original line number Diff line number Diff line Loading @@ -137,7 +137,6 @@ public class ClipboardOverlayController { private Runnable mOnSessionCompleteListener; private InputMonitor mInputMonitor; private InputEventReceiver mInputEventReceiver; Loading @@ -145,6 +144,7 @@ public class ClipboardOverlayController { private BroadcastReceiver mScreenshotReceiver; private boolean mBlockAttach = false; private Animator mExitAnimator; public ClipboardOverlayController(Context context, BroadcastDispatcher broadcastDispatcher, Loading Loading @@ -200,6 +200,7 @@ public class ClipboardOverlayController { @Override public void onSwipeDismissInitiated(Animator animator) { mUiEventLogger.log(CLIPBOARD_OVERLAY_SWIPE_DISMISSED); mExitAnimator = animator; animator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { Loading Loading @@ -233,7 +234,6 @@ public class ClipboardOverlayController { mWindow.setContentView(mContainer); updateInsets(mWindowManager.getCurrentWindowMetrics().getWindowInsets()); mView.requestLayout(); mView.post(this::animateIn); }); mTimeoutHandler.setOnTimeoutRunnable(() -> { Loading Loading @@ -273,6 +273,9 @@ public class ClipboardOverlayController { } void setClipData(ClipData clipData, String clipSource) { if (mExitAnimator != null && mExitAnimator.isRunning()) { mExitAnimator.cancel(); } reset(); if (clipData == null || clipData.getItemCount() == 0) { showTextPreview(mContext.getResources().getString( Loading Loading @@ -305,6 +308,7 @@ public class ClipboardOverlayController { } else { mRemoteCopyChip.setVisibility(View.GONE); } withWindowAttached(() -> mContainer.post(this::animateIn)); mTimeoutHandler.resetTimeout(); } Loading Loading @@ -411,7 +415,7 @@ public class ClipboardOverlayController { private void showTextPreview(CharSequence text) { mTextPreview.setVisibility(View.VISIBLE); mImagePreview.setVisibility(View.GONE); mTextPreview.setText(text); mTextPreview.setText(text.subSequence(0, Math.min(500, text.length()))); mEditChip.setVisibility(View.GONE); } Loading @@ -428,10 +432,6 @@ public class ClipboardOverlayController { } private void showEditableImage(Uri uri) { mTextPreview.setVisibility(View.GONE); mImagePreview.setVisibility(View.VISIBLE); mEditChip.setAlpha(1f); mActionContainerBackground.setVisibility(View.VISIBLE); ContentResolver resolver = mContext.getContentResolver(); try { int size = mContext.getResources().getDimensionPixelSize(R.dimen.overlay_x_scale); Loading @@ -441,7 +441,14 @@ public class ClipboardOverlayController { mImagePreview.setImageBitmap(thumbnail); } catch (IOException e) { Log.e(TAG, "Thumbnail loading failed", e); showTextPreview( mContext.getResources().getString(R.string.clipboard_overlay_text_copied)); return; } mTextPreview.setVisibility(View.GONE); mImagePreview.setVisibility(View.VISIBLE); mEditChip.setAlpha(1f); mActionContainerBackground.setVisibility(View.VISIBLE); View.OnClickListener listener = v -> editImage(uri); mEditChip.setOnClickListener(listener); mEditChip.setContentDescription( Loading Loading @@ -472,12 +479,23 @@ public class ClipboardOverlayController { private void animateOut() { Animator anim = getExitAnimation(); anim.addListener(new AnimatorListenerAdapter() { private boolean mCancelled; @Override public void onAnimationCancel(Animator animation) { super.onAnimationCancel(animation); mCancelled = true; } @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); if (!mCancelled) { hideImmediate(); } } }); mExitAnimator = anim; anim.start(); } Loading Loading @@ -630,6 +648,7 @@ public class ClipboardOverlayController { private void reset() { mView.setTranslationX(0); mContainer.setAlpha(0); mActionContainerBackground.setVisibility(View.GONE); resetActionChips(); mTimeoutHandler.cancelTimeout(); } Loading Loading
packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java +27 −8 Original line number Diff line number Diff line Loading @@ -137,7 +137,6 @@ public class ClipboardOverlayController { private Runnable mOnSessionCompleteListener; private InputMonitor mInputMonitor; private InputEventReceiver mInputEventReceiver; Loading @@ -145,6 +144,7 @@ public class ClipboardOverlayController { private BroadcastReceiver mScreenshotReceiver; private boolean mBlockAttach = false; private Animator mExitAnimator; public ClipboardOverlayController(Context context, BroadcastDispatcher broadcastDispatcher, Loading Loading @@ -200,6 +200,7 @@ public class ClipboardOverlayController { @Override public void onSwipeDismissInitiated(Animator animator) { mUiEventLogger.log(CLIPBOARD_OVERLAY_SWIPE_DISMISSED); mExitAnimator = animator; animator.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationStart(Animator animation) { Loading Loading @@ -233,7 +234,6 @@ public class ClipboardOverlayController { mWindow.setContentView(mContainer); updateInsets(mWindowManager.getCurrentWindowMetrics().getWindowInsets()); mView.requestLayout(); mView.post(this::animateIn); }); mTimeoutHandler.setOnTimeoutRunnable(() -> { Loading Loading @@ -273,6 +273,9 @@ public class ClipboardOverlayController { } void setClipData(ClipData clipData, String clipSource) { if (mExitAnimator != null && mExitAnimator.isRunning()) { mExitAnimator.cancel(); } reset(); if (clipData == null || clipData.getItemCount() == 0) { showTextPreview(mContext.getResources().getString( Loading Loading @@ -305,6 +308,7 @@ public class ClipboardOverlayController { } else { mRemoteCopyChip.setVisibility(View.GONE); } withWindowAttached(() -> mContainer.post(this::animateIn)); mTimeoutHandler.resetTimeout(); } Loading Loading @@ -411,7 +415,7 @@ public class ClipboardOverlayController { private void showTextPreview(CharSequence text) { mTextPreview.setVisibility(View.VISIBLE); mImagePreview.setVisibility(View.GONE); mTextPreview.setText(text); mTextPreview.setText(text.subSequence(0, Math.min(500, text.length()))); mEditChip.setVisibility(View.GONE); } Loading @@ -428,10 +432,6 @@ public class ClipboardOverlayController { } private void showEditableImage(Uri uri) { mTextPreview.setVisibility(View.GONE); mImagePreview.setVisibility(View.VISIBLE); mEditChip.setAlpha(1f); mActionContainerBackground.setVisibility(View.VISIBLE); ContentResolver resolver = mContext.getContentResolver(); try { int size = mContext.getResources().getDimensionPixelSize(R.dimen.overlay_x_scale); Loading @@ -441,7 +441,14 @@ public class ClipboardOverlayController { mImagePreview.setImageBitmap(thumbnail); } catch (IOException e) { Log.e(TAG, "Thumbnail loading failed", e); showTextPreview( mContext.getResources().getString(R.string.clipboard_overlay_text_copied)); return; } mTextPreview.setVisibility(View.GONE); mImagePreview.setVisibility(View.VISIBLE); mEditChip.setAlpha(1f); mActionContainerBackground.setVisibility(View.VISIBLE); View.OnClickListener listener = v -> editImage(uri); mEditChip.setOnClickListener(listener); mEditChip.setContentDescription( Loading Loading @@ -472,12 +479,23 @@ public class ClipboardOverlayController { private void animateOut() { Animator anim = getExitAnimation(); anim.addListener(new AnimatorListenerAdapter() { private boolean mCancelled; @Override public void onAnimationCancel(Animator animation) { super.onAnimationCancel(animation); mCancelled = true; } @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); if (!mCancelled) { hideImmediate(); } } }); mExitAnimator = anim; anim.start(); } Loading Loading @@ -630,6 +648,7 @@ public class ClipboardOverlayController { private void reset() { mView.setTranslationX(0); mContainer.setAlpha(0); mActionContainerBackground.setVisibility(View.GONE); resetActionChips(); mTimeoutHandler.cancelTimeout(); } Loading