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

Commit 81a533d0 authored by Miranda Kephart's avatar Miranda Kephart
Browse files

Add device config flag to ignore clipboard source package

Allows testing of remote copy clipboard UI without going through
Nearby. Effectively guarded by the CLIPBOARD_REMOTE_BEHAVIOR flag as
the isRemoteCopy method will only be run if that flag is enabled.

Bug: 246808749
Test: manual, using Clipboard Spammer app
Change-Id: I2a90709e61489d6ff5ae418b21d928c628320721
parent 712b0bcd
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -583,6 +583,13 @@ public final class SystemUiDeviceConfigFlags {
     */
    public static final String CLIPBOARD_OVERLAY_SHOW_ACTIONS = "clipboard_overlay_show_actions";

    /**
     * (boolean) Whether to ignore the source package for determining whether to use remote copy
     * behavior in the clipboard UI.
     */
    public static final String CLIPBOARD_IGNORE_REMOTE_COPY_SOURCE =
            "clipboard_ignore_remote_copy_source";

    /**
     * (boolean) Whether to combine the broadcasts APPWIDGET_ENABLED and APPWIDGET_UPDATE
     */
+9 −0
Original line number Diff line number Diff line
@@ -20,7 +20,10 @@ import android.content.ClipData;
import android.content.ClipDescription;
import android.content.ComponentName;
import android.content.Context;
import android.os.Build;
import android.provider.DeviceConfig;

import com.android.internal.config.sysui.SystemUiDeviceConfigFlags;
import com.android.systemui.R;

import javax.inject.Inject;
@@ -35,6 +38,12 @@ class ClipboardOverlayUtils {
        if (clipData != null && clipData.getDescription().getExtras() != null
                && clipData.getDescription().getExtras().getBoolean(
                ClipDescription.EXTRA_IS_REMOTE_DEVICE)) {
            if (Build.isDebuggable() && DeviceConfig.getBoolean(
                    DeviceConfig.NAMESPACE_SYSTEMUI,
                    SystemUiDeviceConfigFlags.CLIPBOARD_IGNORE_REMOTE_COPY_SOURCE,
                    false)) {
                return true;
            }
            ComponentName remoteComponent = ComponentName.unflattenFromString(
                    context.getResources().getString(R.string.config_remoteCopyPackage));
            if (remoteComponent != null) {