Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8b58bd15 authored by Miranda Kephart's avatar Miranda Kephart
Browse files

Switch clipboard shared transitions flag to aconfig

Bug: 360843770
Test: manual (with flag on and off)
Flag: com.android.systemui.clipboard_shared_transitions
Change-Id: I6a1595740f39d0be1dd1dbd9d4b9b84c17fcf5e3
parent 3bc44be9
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -540,6 +540,16 @@ flag {
    }
}

flag {
    name: "clipboard_shared_transitions"
    namespace: "systemui"
    description: "Show shared transitions from clipboard"
    bug: "360843770"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

flag {
    name: "clipboard_image_timeout"
    namespace: "systemui"
+11 −11
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import static android.content.Intent.ACTION_CLOSE_SYSTEM_DIALOGS;

import static com.android.internal.config.sysui.SystemUiDeviceConfigFlags.CLIPBOARD_OVERLAY_SHOW_ACTIONS;
import static com.android.systemui.Flags.clipboardImageTimeout;
import static com.android.systemui.Flags.clipboardSharedTransitions;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_ACTION_SHOWN;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_ACTION_TAPPED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_DISMISSED_OTHER;
@@ -33,7 +34,6 @@ import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBO
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_SWIPE_DISMISSED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_TAP_OUTSIDE;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_TIMED_OUT;
import static com.android.systemui.flags.Flags.CLIPBOARD_SHARED_TRANSITIONS;

import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
@@ -207,7 +207,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
        mClipboardUtils = clipboardUtils;
        mBgExecutor = bgExecutor;

        if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
        if (clipboardSharedTransitions()) {
            mView.setCallbacks(this);
        } else {
            mView.setCallbacks(mClipboardCallbacks);
@@ -220,7 +220,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
        });

        mTimeoutHandler.setOnTimeoutRunnable(() -> {
            if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
            if (clipboardSharedTransitions()) {
                finish(CLIPBOARD_OVERLAY_TIMED_OUT);
            } else {
                mClipboardLogger.logSessionComplete(CLIPBOARD_OVERLAY_TIMED_OUT);
@@ -232,7 +232,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
            @Override
            public void onReceive(Context context, Intent intent) {
                if (ACTION_CLOSE_SYSTEM_DIALOGS.equals(intent.getAction())) {
                    if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
                    if (clipboardSharedTransitions()) {
                        finish(CLIPBOARD_OVERLAY_DISMISSED_OTHER);
                    } else {
                        mClipboardLogger.logSessionComplete(CLIPBOARD_OVERLAY_DISMISSED_OTHER);
@@ -248,7 +248,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
            @Override
            public void onReceive(Context context, Intent intent) {
                if (SCREENSHOT_ACTION.equals(intent.getAction())) {
                    if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
                    if (clipboardSharedTransitions()) {
                        finish(CLIPBOARD_OVERLAY_DISMISSED_OTHER);
                    } else {
                        mClipboardLogger.logSessionComplete(CLIPBOARD_OVERLAY_DISMISSED_OTHER);
@@ -481,7 +481,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
                remoteAction.ifPresent(action -> {
                    mClipboardLogger.logUnguarded(CLIPBOARD_OVERLAY_ACTION_SHOWN);
                    mView.post(() -> mView.setActionChip(action, () -> {
                        if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
                        if (clipboardSharedTransitions()) {
                            finish(CLIPBOARD_OVERLAY_ACTION_TAPPED);
                        } else {
                            mClipboardLogger.logSessionComplete(CLIPBOARD_OVERLAY_ACTION_TAPPED);
@@ -528,7 +528,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv
                    if (motionEvent.getActionMasked() == MotionEvent.ACTION_DOWN) {
                        if (!mView.isInTouchRegion(
                                (int) motionEvent.getRawX(), (int) motionEvent.getRawY())) {
                            if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
                            if (clipboardSharedTransitions()) {
                                finish(CLIPBOARD_OVERLAY_TAP_OUTSIDE);
                            } else {
                                mClipboardLogger.logSessionComplete(CLIPBOARD_OVERLAY_TAP_OUTSIDE);
@@ -690,14 +690,14 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv

    @Override
    public void onDismissButtonTapped() {
        if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
        if (clipboardSharedTransitions()) {
            finish(CLIPBOARD_OVERLAY_DISMISS_TAPPED);
        }
    }

    @Override
    public void onRemoteCopyButtonTapped() {
        if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
        if (clipboardSharedTransitions()) {
            finish(CLIPBOARD_OVERLAY_REMOTE_COPY_TAPPED,
                    IntentCreator.getRemoteCopyIntent(mClipboardModel.getClipData(), mContext));
        }
@@ -705,7 +705,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv

    @Override
    public void onShareButtonTapped() {
        if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
        if (clipboardSharedTransitions()) {
            if (mClipboardModel.getType() != ClipboardModel.Type.OTHER) {
                finishWithSharedTransition(CLIPBOARD_OVERLAY_SHARE_TAPPED,
                        IntentCreator.getShareIntent(mClipboardModel.getClipData(), mContext));
@@ -715,7 +715,7 @@ public class ClipboardOverlayController implements ClipboardListener.ClipboardOv

    @Override
    public void onPreviewTapped() {
        if (mFeatureFlags.isEnabled(CLIPBOARD_SHARED_TRANSITIONS)) {
        if (clipboardSharedTransitions()) {
            switch (mClipboardModel.getType()) {
                case TEXT:
                    finish(CLIPBOARD_OVERLAY_EDIT_TAPPED,
+0 −4
Original line number Diff line number Diff line
@@ -337,10 +337,6 @@ object Flags {
    // TODO(b/278714186) Tracking Bug
    @JvmField
    val CLIPBOARD_IMAGE_TIMEOUT = unreleasedFlag("clipboard_image_timeout", teamfood = true)
    // TODO(b/279405451): Tracking Bug
    @JvmField
    val CLIPBOARD_SHARED_TRANSITIONS =
            unreleasedFlag("clipboard_shared_transitions", teamfood = true)

    // 1900
    @JvmField val NOTE_TASKS = releasedFlag("keycode_flag")
+8 −5
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.systemui.clipboardoverlay;

import static android.content.res.Configuration.ORIENTATION_PORTRAIT;

import static com.android.systemui.Flags.FLAG_CLIPBOARD_SHARED_TRANSITIONS;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_ACTION_SHOWN;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_DISMISS_TAPPED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_EXPANDED_FROM_MINIMIZED;
@@ -26,7 +27,6 @@ import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBO
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_SHOWN_MINIMIZED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_SWIPE_DISMISSED;
import static com.android.systemui.flags.Flags.CLIPBOARD_IMAGE_TIMEOUT;
import static com.android.systemui.flags.Flags.CLIPBOARD_SHARED_TRANSITIONS;

import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
@@ -47,6 +47,8 @@ import android.graphics.Insets;
import android.graphics.Rect;
import android.net.Uri;
import android.os.PersistableBundle;
import android.platform.test.annotations.DisableFlags;
import android.platform.test.annotations.EnableFlags;
import android.view.WindowInsets;
import android.view.textclassifier.TextLinks;

@@ -130,7 +132,6 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {
                new ClipData.Item("Test Item"));

        mFeatureFlags.set(CLIPBOARD_IMAGE_TIMEOUT, true); // turned off for legacy tests
        mFeatureFlags.set(CLIPBOARD_SHARED_TRANSITIONS, true); // turned off for old tests
    }

    /**
@@ -299,8 +300,8 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {
    }

    @Test
    @DisableFlags(FLAG_CLIPBOARD_SHARED_TRANSITIONS)
    public void test_viewCallbacks_onShareTapped_sharedTransitionsOff() {
        mFeatureFlags.set(CLIPBOARD_SHARED_TRANSITIONS, false);
        initController();
        mOverlayController.setClipData(mSampleClipData, "");

@@ -311,6 +312,7 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {
    }

    @Test
    @EnableFlags(FLAG_CLIPBOARD_SHARED_TRANSITIONS)
    public void test_viewCallbacks_onShareTapped() {
        initController();
        mOverlayController.setClipData(mSampleClipData, "");
@@ -324,8 +326,8 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {
    }

    @Test
    @DisableFlags(FLAG_CLIPBOARD_SHARED_TRANSITIONS)
    public void test_viewCallbacks_onDismissTapped_sharedTransitionsOff() {
        mFeatureFlags.set(CLIPBOARD_SHARED_TRANSITIONS, false);
        initController();
        mOverlayController.setClipData(mSampleClipData, "");

@@ -336,6 +338,7 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {
    }

    @Test
    @EnableFlags(FLAG_CLIPBOARD_SHARED_TRANSITIONS)
    public void test_viewCallbacks_onDismissTapped() {
        initController();

@@ -350,7 +353,6 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {

    @Test
    public void test_multipleDismissals_dismissesOnce_sharedTransitionsOff() {
        mFeatureFlags.set(CLIPBOARD_SHARED_TRANSITIONS, false);
        initController();
        mCallbacks.onSwipeDismissInitiated(mAnimator);
        mCallbacks.onDismissButtonTapped();
@@ -362,6 +364,7 @@ public class ClipboardOverlayControllerTest extends SysuiTestCase {
    }

    @Test
    @EnableFlags(FLAG_CLIPBOARD_SHARED_TRANSITIONS)
    public void test_multipleDismissals_dismissesOnce() {
        initController();