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

Commit 7c8a46e0 authored by Abodunrinwa Toki's avatar Abodunrinwa Toki
Browse files

DO NOT MERGE No smart text assist for unprovisioned device.

Test: bit CtsViewTestCases:android.view.textclassifier.cts.TextClassificationManagerTest
bit FrameworksCoreTests:android.widget.TextViewActivityTest
bit FrameworksCoreTests:android.widget.TextViewActivityMoutseTest
Bug: 120866126
Bug: 62745625
Merged-In: I360250a5c2a92d09c8d8f559b51c74f490f70c2c
Change-Id: I360250a5c2a92d09c8d8f559b51c74f490f70c2c
parent 3c2abaa4
Loading
Loading
Loading
Loading
+26 −16
Original line number Diff line number Diff line
@@ -3909,16 +3909,10 @@ public class Editor {
            menu.removeItem(TextView.ID_ASSIST);
            final TextClassification textClassification =
                    getSelectionActionModeHelper().getTextClassification();
            if (textClassification != null) {
                final Drawable icon = textClassification.getIcon();
                final CharSequence label = textClassification.getLabel();
                final OnClickListener onClickListener =
                        textClassification.getOnClickListener();
                final Intent intent = textClassification.getIntent();
                if ((icon != null || !TextUtils.isEmpty(label))
                        && (onClickListener != null || intent != null)) {
                    menu.add(TextView.ID_ASSIST, TextView.ID_ASSIST, MENU_ITEM_ORDER_ASSIST, label)
                            .setIcon(icon)
            if (canAssist()) {
                menu.add(TextView.ID_ASSIST, TextView.ID_ASSIST, MENU_ITEM_ORDER_ASSIST,
                        textClassification.getLabel())
                        .setIcon(textClassification.getIcon())
                        .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
                mMetricsLogger.write(
                        new LogMaker(MetricsEvent.TEXT_SELECTION_MENU_ITEM_ASSIST)
@@ -3926,6 +3920,22 @@ public class Editor {
                                .setSubtype(textClassification.getLogType()));
            }
        }

        private boolean canAssist() {
            final TextClassification textClassification =
                    getSelectionActionModeHelper().getTextClassification();
            final boolean validAction = textClassification != null
                    && (textClassification.getIcon() != null
                            || !TextUtils.isEmpty(textClassification.getLabel()))
                    && (textClassification.getOnClickListener() != null
                            || (textClassification.getIntent() != null
                                    && mTextView.getContext().canStartActivityForResult()));

            final boolean deviceProvisioned = mTextView.isDeviceProvisioned();
            if (validAction && !deviceProvisioned) {
                android.util.EventLog.writeEvent(0x534e4554, "120866126", -1, "");
            }
            return validAction && deviceProvisioned;
        }

        @Override