Refine the verified links preference

- Let UI look cleaner and reduce the confusion.

Fixes: 246875492
Test: manual test
Change-Id: Ic2c947c0e05e7f9d5307c43c022638ae4b6dec8f
diff --git a/res/xml/installed_app_launch_settings.xml b/res/xml/installed_app_launch_settings.xml
index 3394d86..2268d5c 100644
--- a/res/xml/installed_app_launch_settings.xml
+++ b/res/xml/installed_app_launch_settings.xml
@@ -31,7 +31,7 @@
         <PreferenceCategory
             android:title="@string/app_launch_links_category">
 
-            <com.android.settings.applications.intentpicker.VerifiedLinksPreference
+            <Preference
                 android:key="open_by_default_verified_links"
                 android:title="@string/summary_placeholder"
                 android:order="-100"
@@ -40,8 +40,7 @@
             <PreferenceCategory
                 android:layout="@layout/preference_category_no_label"
                 android:key="open_by_default_selected_links_category"
-                android:order="100"
-                settings:searchable="false"/>
+                android:order="100"/>
 
             <Preference
                 android:key="open_by_default_add_link"
diff --git a/src/com/android/settings/applications/intentpicker/AppLaunchSettings.java b/src/com/android/settings/applications/intentpicker/AppLaunchSettings.java
index f836c8f..cd36000 100644
--- a/src/com/android/settings/applications/intentpicker/AppLaunchSettings.java
+++ b/src/com/android/settings/applications/intentpicker/AppLaunchSettings.java
@@ -246,15 +246,14 @@
 
     /** Initialize verified links preference */
     private void initVerifiedLinksPreference() {
-        final VerifiedLinksPreference verifiedLinksPreference =
-                (VerifiedLinksPreference) mMainPreferenceCategory.findPreference(
-                        VERIFIED_LINKS_PREF_KEY);
-        verifiedLinksPreference.setWidgetFrameClickListener(l -> {
+        final Preference verifiedLinksPreference = mMainPreferenceCategory.findPreference(
+                VERIFIED_LINKS_PREF_KEY);
+        verifiedLinksPreference.setOnPreferenceClickListener(preference -> {
             showVerifiedLinksDialog();
+            return true;
         });
         final int verifiedLinksNo = getLinksNumber(DOMAIN_STATE_VERIFIED);
         verifiedLinksPreference.setTitle(getVerifiedLinksTitle(verifiedLinksNo));
-        verifiedLinksPreference.setCheckBoxVisible(verifiedLinksNo > 0);
         verifiedLinksPreference.setEnabled(verifiedLinksNo > 0);
     }
 
diff --git a/src/com/android/settings/applications/intentpicker/VerifiedLinksPreference.java b/src/com/android/settings/applications/intentpicker/VerifiedLinksPreference.java
deleted file mode 100644
index fdfe215..0000000
--- a/src/com/android/settings/applications/intentpicker/VerifiedLinksPreference.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings.applications.intentpicker;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.View;
-import android.widget.CheckBox;
-
-import androidx.preference.PreferenceViewHolder;
-
-import com.android.settings.R;
-import com.android.settingslib.widget.TwoTargetPreference;
-
-/** This customized VerifiedLinksPreference was belonged to Open by default page */
-public class VerifiedLinksPreference extends TwoTargetPreference {
-    private Context mContext;
-    private View.OnClickListener mOnWidgetClickListener;
-    private boolean mShowCheckBox;
-
-    public VerifiedLinksPreference(Context context, AttributeSet attrs,
-            int defStyleAttr, int defStyleRes) {
-        super(context, attrs, defStyleAttr, defStyleRes);
-        init(context);
-    }
-
-    public VerifiedLinksPreference(Context context, AttributeSet attrs, int defStyleAttr) {
-        this(context, attrs, defStyleAttr, /* defStyleRes= */0);
-    }
-
-    public VerifiedLinksPreference(Context context, AttributeSet attrs) {
-        this(context, attrs, /* defStyleAttr= */ 0);
-    }
-
-    public VerifiedLinksPreference(Context context) {
-        this(context, /* attrs= */ null);
-    }
-
-    private void init(Context context) {
-        mContext = context;
-        mOnWidgetClickListener = null;
-        mShowCheckBox = true;
-        setLayoutResource(R.layout.preference_checkable_two_target);
-        setWidgetLayoutResource(R.layout.verified_links_widget);
-    }
-
-    /**
-     * Register a callback to be invoked when this widget is clicked.
-     *
-     * @param listener The callback that will run.
-     */
-    public void setWidgetFrameClickListener(View.OnClickListener listener) {
-        mOnWidgetClickListener = listener;
-    }
-
-    /** Determine the visibility of the {@link CheckBox}. */
-    public void setCheckBoxVisible(boolean isVisible) {
-        mShowCheckBox = isVisible;
-    }
-
-    @Override
-    public void onBindViewHolder(PreferenceViewHolder view) {
-        super.onBindViewHolder(view);
-        final View settingsWidget = view.findViewById(android.R.id.widget_frame);
-        final View divider = view.findViewById(R.id.two_target_divider);
-        divider.setVisibility(View.VISIBLE);
-        settingsWidget.setVisibility(View.VISIBLE);
-        if (mOnWidgetClickListener != null) {
-            settingsWidget.setOnClickListener(mOnWidgetClickListener);
-        }
-        final View checkboxContainer = view.findViewById(R.id.checkbox_container);
-        final View parentView = (View) checkboxContainer.getParent();
-        parentView.setEnabled(false);
-        parentView.setClickable(false);
-        CheckBox checkBox = (CheckBox) view.findViewById(com.android.internal.R.id.checkbox);
-        if (checkBox != null) {
-            checkBox.setChecked(true);
-            checkboxContainer.setVisibility(mShowCheckBox ? View.VISIBLE : View.GONE);
-        }
-    }
-}