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

Commit 2fbca84c authored by Aleksandar Kiridžić's avatar Aleksandar Kiridžić Committed by Automerger Merge Worker
Browse files

Merge "speech: Re-add on-device speech recognition settings entry" into...

Merge "speech: Re-add on-device speech recognition settings entry" into udc-dev am: 9e2e6d07 am: 13317c14

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/22932716



Change-Id: Ib5d9e7c574f660e0ee71c24e69c99cd1343e0b8c
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 76f815f7 13317c14
Loading
Loading
Loading
Loading
+0 −15
Original line number Diff line number Diff line
@@ -33,21 +33,6 @@
            android:summary="@string/summary_placeholder"/>
    </PreferenceCategory>

    <PreferenceCategory
        android:key="speech_category"
        android:title="@string/speech_category_title">
        <com.android.settings.widget.GearPreference
            android:key="voice_input_settings"
            android:title="@string/voice_input_settings_title"
            android:fragment="com.android.settings.language.DefaultVoiceInputPicker" />

        <Preference
            android:key="tts_settings_summary"
            android:title="@string/tts_settings_title"
            android:fragment="com.android.settings.tts.TextToSpeechSettings"
            settings:searchable="false"/>
    </PreferenceCategory>

    <PreferenceCategory
        android:key="input_assistance_category"
        android:title="@string/input_assistance">
+0 −7
Original line number Diff line number Diff line
@@ -73,13 +73,6 @@
            android:title="@string/voice_input_settings_title"
            android:fragment="com.android.settings.language.DefaultVoiceInputPicker" />

        <Preference
            android:key="on_device_recognition_settings"
            android:title="@string/on_device_recognition_settings_title"
            android:summary="@string/on_device_recognition_settings_summary"
            settings:controller=
                "com.android.settings.language.OnDeviceRecognitionPreferenceController" />

        <Preference
            android:key="tts_settings_summary"
            android:title="@string/tts_settings_title"
+22 −0
Original line number Diff line number Diff line
@@ -46,4 +46,26 @@
            settings:controller="com.android.settings.regionalpreferences.RegionalPreferencesController" />

    </PreferenceCategory>

    <PreferenceCategory
        android:key="speech_category"
        android:title="@string/speech_category_title">
        <com.android.settings.widget.GearPreference
            android:key="voice_input_settings"
            android:title="@string/voice_input_settings_title"
            android:fragment="com.android.settings.language.DefaultVoiceInputPicker" />

        <Preference
            android:key="on_device_recognition_settings"
            android:title="@string/on_device_recognition_settings_title"
            android:summary="@string/on_device_recognition_settings_summary"
            settings:controller=
                "com.android.settings.language.OnDeviceRecognitionPreferenceController" />

        <Preference
            android:key="tts_settings_summary"
            android:title="@string/tts_settings_title"
            android:fragment="com.android.settings.tts.TextToSpeechSettings"
            settings:searchable="false"/>
    </PreferenceCategory>
</PreferenceScreen>
 No newline at end of file
+0 −15
Original line number Diff line number Diff line
@@ -30,9 +30,7 @@ import androidx.annotation.Nullable;

import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.language.DefaultVoiceInputPreferenceController;
import com.android.settings.language.PointerSpeedController;
import com.android.settings.language.TtsPreferenceController;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.widget.PreferenceCategoryController;
import com.android.settingslib.core.AbstractPreferenceController;
@@ -49,8 +47,6 @@ public class KeyboardSettings extends DashboardFragment {
    private static final String TAG = "KeyboardSettings";

    private static final String KEY_KEYBOARDS_CATEGORY = "keyboards_category";
    private static final String KEY_SPEECH_CATEGORY = "speech_category";
    private static final String KEY_TEXT_TO_SPEECH = "tts_settings_summary";
    private static final String KEY_POINTER_CATEGORY = "pointer_category";

    @Override
@@ -102,17 +98,6 @@ public class KeyboardSettings extends DashboardFragment {
                Arrays.asList(virtualKeyboardPreferenceController,
                        physicalKeyboardPreferenceController)));

        // Speech
        final DefaultVoiceInputPreferenceController defaultVoiceInputPreferenceController =
                new DefaultVoiceInputPreferenceController(context, lifecycle);
        final TtsPreferenceController ttsPreferenceController =
                new TtsPreferenceController(context, KEY_TEXT_TO_SPEECH);
        controllers.add(defaultVoiceInputPreferenceController);
        controllers.add(ttsPreferenceController);
        controllers.add(new PreferenceCategoryController(context,
                KEY_SPEECH_CATEGORY).setChildren(
                Arrays.asList(defaultVoiceInputPreferenceController, ttsPreferenceController)));

        // Pointer
        final PointerSpeedController pointerController = new PointerSpeedController(context);
        controllers.add(pointerController);
+46 −0
Original line number Diff line number Diff line
@@ -21,14 +21,25 @@ import android.app.settings.SettingsEnums;
import android.content.Context;
import android.util.FeatureFlagUtils;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.widget.PreferenceCategoryController;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.search.SearchIndexable;

import java.util.ArrayList;
import java.util.List;

@SearchIndexable
public class LanguageSettings extends DashboardFragment {

    private static final String KEY_SPEECH_CATEGORY = "speech_category";

    private static final String TAG = "LanguageSettings";

    @Override
@@ -59,8 +70,43 @@ public class LanguageSettings extends DashboardFragment {
        return R.xml.language_settings;
    }

    protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
        return buildPreferenceControllers(context, getSettingsLifecycle());
    }

    private static List<AbstractPreferenceController> buildPreferenceControllers(
            @NonNull Context context, @Nullable Lifecycle lifecycle) {
        final List<AbstractPreferenceController> controllers = new ArrayList<>();

        final DefaultVoiceInputPreferenceController defaultVoiceInputPreferenceController =
                new DefaultVoiceInputPreferenceController(context, lifecycle);
        final TtsPreferenceController ttsPreferenceController =
                new TtsPreferenceController(context);
        final OnDeviceRecognitionPreferenceController onDeviceRecognitionPreferenceController =
                new OnDeviceRecognitionPreferenceController(context);

        controllers.add(defaultVoiceInputPreferenceController);
        controllers.add(ttsPreferenceController);
        List<AbstractPreferenceController> speechCategoryChildren = new ArrayList<>(
                List.of(defaultVoiceInputPreferenceController, ttsPreferenceController));

        if (onDeviceRecognitionPreferenceController.isAvailable()) {
            controllers.add(onDeviceRecognitionPreferenceController);
            speechCategoryChildren.add(onDeviceRecognitionPreferenceController);
        }

        controllers.add(new PreferenceCategoryController(context, KEY_SPEECH_CATEGORY)
                .setChildren(speechCategoryChildren));

        return controllers;
    }

    public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
            new BaseSearchIndexProvider(R.xml.language_settings) {
                public List<AbstractPreferenceController> createPreferenceControllers(
                        Context context) {
                    return buildPreferenceControllers(context, null);
                }
                @Override
                protected boolean isPageSearchEnabled(Context context) {
                    return FeatureFlagUtils
Loading