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

Commit 68b17a7e authored by Richard Ledley's avatar Richard Ledley Committed by Android (Google) Code Review
Browse files

Merge "Add flag to control smart linkify."

parents ce68b832 9cfa6067
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -45,19 +45,24 @@ public final class TextClassifierConstants {
            "smart_selection_dark_launch";
    private static final String SMART_SELECTION_ENABLED_FOR_EDIT_TEXT =
            "smart_selection_enabled_for_edit_text";
    private static final String SMART_LINKIFY_ENABLED =
            "smart_linkify_enabled";

    private static final boolean SMART_SELECTION_DARK_LAUNCH_DEFAULT = false;
    private static final boolean SMART_SELECTION_ENABLED_FOR_EDIT_TEXT_DEFAULT = true;
    private static final boolean SMART_LINKIFY_ENABLED_DEFAULT = true;

    /** Default settings. */
    static final TextClassifierConstants DEFAULT = new TextClassifierConstants();

    private final boolean mDarkLaunch;
    private final boolean mSuggestSelectionEnabledForEditableText;
    private final boolean mSmartLinkifyEnabled;

    private TextClassifierConstants() {
        mDarkLaunch = SMART_SELECTION_DARK_LAUNCH_DEFAULT;
        mSuggestSelectionEnabledForEditableText = SMART_SELECTION_ENABLED_FOR_EDIT_TEXT_DEFAULT;
        mSmartLinkifyEnabled = SMART_LINKIFY_ENABLED_DEFAULT;
    }

    private TextClassifierConstants(@Nullable String settings) {
@@ -74,6 +79,9 @@ public final class TextClassifierConstants {
        mSuggestSelectionEnabledForEditableText = parser.getBoolean(
                SMART_SELECTION_ENABLED_FOR_EDIT_TEXT,
                SMART_SELECTION_ENABLED_FOR_EDIT_TEXT_DEFAULT);
        mSmartLinkifyEnabled = parser.getBoolean(
                SMART_LINKIFY_ENABLED,
                SMART_LINKIFY_ENABLED_DEFAULT);
    }

    static TextClassifierConstants loadFromString(String settings) {
@@ -87,4 +95,8 @@ public final class TextClassifierConstants {
    public boolean isSuggestSelectionEnabledForEditableText() {
        return mSuggestSelectionEnabledForEditableText;
    }

    public boolean isSmartLinkifyEnabled() {
        return mSmartLinkifyEnabled;
    }
}
+5 −0
Original line number Diff line number Diff line
@@ -186,6 +186,11 @@ final class TextClassifierImpl implements TextClassifier {
        Utils.validateInput(text);
        final String textString = text.toString();
        final TextLinks.Builder builder = new TextLinks.Builder(textString);

        if (!getSettings().isSmartLinkifyEnabled()) {
            return builder.build();
        }

        try {
            final LocaleList defaultLocales = options != null ? options.getDefaultLocales() : null;
            final Collection<String> entitiesToIdentify =