Merge "Rollback language source metrics" into main
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 1ef051e..dbf2c4a 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -12105,12 +12105,14 @@
<!-- The title of the bluetooth audio device type selection [CHAR LIMIT=none] -->
<string name="bluetooth_details_audio_device_types_title">Audio Device Type</string>
- <!-- The audio device type corresponding to unknown selected [CHAR LIMIT=none] -->
+ <!-- The audio device type corresponding to unknown device type [CHAR LIMIT=none] -->
<string name="bluetooth_details_audio_device_type_unknown">Unknown</string>
- <!-- The audio device type corresponding to none selected [CHAR LIMIT=none] -->
- <string name="bluetooth_details_audio_device_type_speaker">Speaker</string>
<!-- The audio device type corresponding to speakers [CHAR LIMIT=none] -->
+ <string name="bluetooth_details_audio_device_type_speaker">Speaker</string>
+ <!-- The audio device type corresponding to headphones [CHAR LIMIT=none] -->
<string name="bluetooth_details_audio_device_type_headphones">Headphones</string>
+ <!-- The audio device type corresponding to hearing aid [CHAR LIMIT=none] -->
+ <string name="bluetooth_details_audio_device_type_hearing_aid">Hearing Aid</string>
<!-- The audio device type corresponding to car kit [CHAR LIMIT=none] -->
<string name="bluetooth_details_audio_device_type_carkit">Car Kit</string>
<!-- The audio device type corresponding to other device type [CHAR LIMIT=none] -->
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollmentIntroV2Fragment.kt b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollmentIntroV2Fragment.kt
index 88f8391..c7fcb66 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollmentIntroV2Fragment.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/enrollment/fragment/FingerprintEnrollmentIntroV2Fragment.kt
@@ -128,7 +128,7 @@
R.id.icon_link
)
.forEach { icon ->
- view.findViewById<ImageView>(icon).drawable.colorFilter = colorFilter
+ view.requireViewById<ImageView>(icon).drawable.colorFilter = colorFilter
}
// Set the text for the footer text views.
@@ -139,12 +139,12 @@
R.id.footer_message_5 to textModel.footerMessageFive,
R.id.footer_message_6 to textModel.footerMessageSix,
)
- .forEach { pair -> view.findViewById<TextView>(pair.first).setText(pair.second) }
+ .forEach { pair -> view.requireViewById<TextView>(pair.first).setText(pair.second) }
setFooterLink(view)
- val iconShield: ImageView = view.findViewById(R.id.icon_shield)
- val footerMessage6: TextView = view.findViewById(R.id.footer_message_6)
+ val iconShield: ImageView = view.requireViewById(R.id.icon_shield)
+ val footerMessage6: TextView = view.requireViewById(R.id.footer_message_6)
when (sensorProps?.sensorType) {
FingerprintSensorProperties.TYPE_UDFPS_ULTRASONIC,
FingerprintSensorProperties.TYPE_UDFPS_OPTICAL -> {
@@ -157,15 +157,15 @@
}
}
- view.findViewById<TextView?>(R.id.footer_title_1).setText(textModel.footerTitleOne)
- view.findViewById<TextView?>(R.id.footer_title_2).setText(textModel.footerTitleOne)
+ view.requireViewById<TextView?>(R.id.footer_title_1).setText(textModel.footerTitleOne)
+ view.requireViewById<TextView?>(R.id.footer_title_2).setText(textModel.footerTitleOne)
}
}
}
}
private fun setFooterLink(view: View) {
- val footerLink: TextView = view.findViewById(R.id.footer_learn_more)
+ val footerLink: TextView = view.requireViewById(R.id.footer_learn_more)
footerLink.movementMethod = LinkMovementMethod.getInstance()
footerLink.text =
Html.fromHtml(
@@ -178,13 +178,13 @@
view: View,
) {
val scrollView: ScrollView =
- view.findViewById(com.google.android.setupdesign.R.id.sud_scroll_view)
+ view.requireViewById(com.google.android.setupdesign.R.id.sud_scroll_view)
scrollView.importantForAccessibility = View.IMPORTANT_FOR_ACCESSIBILITY_YES
// Next button responsible for starting the next fragment.
val onNextButtonClick: View.OnClickListener =
View.OnClickListener { Log.d(TAG, "OnNextClicked") }
- val layout: GlifLayout = requireActivity().findViewById(R.id.setup_wizard_layout)
+ val layout: GlifLayout = requireActivity().requireViewById(R.id.setup_wizard_layout)
footerBarMixin = layout.getMixin(FooterBarMixin::class.java)
footerBarMixin.primaryButton =
FooterButton.Builder(requireActivity())
diff --git a/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsRenameDialog.kt b/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsRenameDialog.kt
index 0ebc561..84f33ff 100644
--- a/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsRenameDialog.kt
+++ b/src/com/android/settings/biometrics/fingerprint2/ui/settings/fragment/FingerprintSettingsRenameDialog.kt
@@ -106,8 +106,8 @@
val dialog = FingerprintSettingsRenameDialog()
val onClick =
DialogInterface.OnClickListener { _, _ ->
- val dialogTextField =
- dialog.requireDialog().findViewById(R.id.fingerprint_rename_field) as ImeAwareEditText
+ val dialogTextField = dialog.requireDialog()
+ .requireViewById(R.id.fingerprint_rename_field) as ImeAwareEditText
val newName = dialogTextField.text.toString()
if (!TextUtils.equals(newName, fp.name)) {
Log.d(TAG, "rename $fp.name to $newName for $dialog")
diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java b/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java
index ba5f465..fe0d141 100644
--- a/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java
+++ b/src/com/android/settings/bluetooth/BluetoothDetailsAudioDeviceTypeController.java
@@ -19,6 +19,7 @@
import static android.bluetooth.BluetoothDevice.DEVICE_TYPE_LE;
import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_CARKIT;
import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_HEADPHONES;
+import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_HEARING_AID;
import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_OTHER;
import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_SPEAKER;
import static android.media.AudioManager.AUDIO_DEVICE_CATEGORY_UNKNOWN;
@@ -149,6 +150,7 @@
mContext.getString(R.string.bluetooth_details_audio_device_type_speaker),
mContext.getString(R.string.bluetooth_details_audio_device_type_headphones),
mContext.getString(R.string.bluetooth_details_audio_device_type_carkit),
+ mContext.getString(R.string.bluetooth_details_audio_device_type_hearing_aid),
mContext.getString(R.string.bluetooth_details_audio_device_type_other),
});
mAudioDeviceTypePreference.setEntryValues(new CharSequence[]{
@@ -156,6 +158,7 @@
Integer.toString(AUDIO_DEVICE_CATEGORY_SPEAKER),
Integer.toString(AUDIO_DEVICE_CATEGORY_HEADPHONES),
Integer.toString(AUDIO_DEVICE_CATEGORY_CARKIT),
+ Integer.toString(AUDIO_DEVICE_CATEGORY_HEARING_AID),
Integer.toString(AUDIO_DEVICE_CATEGORY_OTHER),
});
diff --git a/src/com/android/settings/core/FeatureFlags.java b/src/com/android/settings/core/FeatureFlags.java
index 1a97ca9..fb552d7 100644
--- a/src/com/android/settings/core/FeatureFlags.java
+++ b/src/com/android/settings/core/FeatureFlags.java
@@ -30,4 +30,6 @@
public static final String CONTEXTUAL_HOME = "settings_contextual_home";
public static final String SETTINGS_SEARCH_ALWAYS_EXPAND =
"settings_search_always_expand";
+ public static final String PRESS_HOLD_NAV_HANDLE_TO_SEARCH =
+ "settings_press_hold_nav_handle_to_search";
}
diff --git a/src/com/android/settings/gestures/SystemNavigationPreferenceController.java b/src/com/android/settings/gestures/SystemNavigationPreferenceController.java
index ab83a9d..ccdb257 100644
--- a/src/com/android/settings/gestures/SystemNavigationPreferenceController.java
+++ b/src/com/android/settings/gestures/SystemNavigationPreferenceController.java
@@ -52,7 +52,8 @@
}
}
- static boolean isGestureAvailable(Context context) {
+ /** Returns {@code true} if gesture is available. */
+ public static boolean isGestureAvailable(Context context) {
// Skip if the swipe up settings are not available
if (!context.getResources().getBoolean(
com.android.internal.R.bool.config_swipe_up_gesture_setting_available)) {
diff --git a/src/com/android/settings/localepicker/LocaleHelperPreferenceController.java b/src/com/android/settings/localepicker/LocaleHelperPreferenceController.java
index b962b9e..a639c9d 100644
--- a/src/com/android/settings/localepicker/LocaleHelperPreferenceController.java
+++ b/src/com/android/settings/localepicker/LocaleHelperPreferenceController.java
@@ -16,7 +16,6 @@
package com.android.settings.localepicker;
-import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
@@ -25,10 +24,8 @@
import androidx.preference.PreferenceScreen;
import com.android.settings.R;
-import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.HelpUtils;
import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.widget.FooterPreference;
/**
@@ -39,11 +36,8 @@
private static final String KEY_FOOTER_LANGUAGE_PICKER = "footer_languages_picker";
- private final MetricsFeatureProvider mMetricsFeatureProvider;
-
public LocaleHelperPreferenceController(Context context) {
super(context);
- mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -78,7 +72,6 @@
mContext.getString(R.string.link_locale_picker_footer_learn_more),
mContext.getClass().getName());
if (intent != null) {
- mMetricsFeatureProvider.action(mContext, SettingsEnums.ACTION_LANGUAGES_LEARN_MORE);
mContext.startActivity(intent);
} else {
Log.w(TAG, "HelpIntent is null");
diff --git a/src/com/android/settings/regionalpreferences/FirstDayOfWeekItemListController.java b/src/com/android/settings/regionalpreferences/FirstDayOfWeekItemListController.java
index d509d2e..03a59de 100644
--- a/src/com/android/settings/regionalpreferences/FirstDayOfWeekItemListController.java
+++ b/src/com/android/settings/regionalpreferences/FirstDayOfWeekItemListController.java
@@ -16,7 +16,6 @@
package com.android.settings.regionalpreferences;
-import android.app.settings.SettingsEnums;
import android.content.Context;
import com.android.settings.R;
@@ -58,9 +57,4 @@
protected String[] getUnitValues() {
return mContext.getResources().getStringArray(R.array.first_day_of_week);
}
-
- @Override
- protected int getMetricsActionKey() {
- return SettingsEnums.ACTION_SET_FIRST_DAY_OF_WEEK;
- }
}
diff --git a/src/com/android/settings/regionalpreferences/RegionalPreferenceListBasePreferenceController.java b/src/com/android/settings/regionalpreferences/RegionalPreferenceListBasePreferenceController.java
index ac0e7ee..2f2bf76 100644
--- a/src/com/android/settings/regionalpreferences/RegionalPreferenceListBasePreferenceController.java
+++ b/src/com/android/settings/regionalpreferences/RegionalPreferenceListBasePreferenceController.java
@@ -22,20 +22,16 @@
import androidx.preference.PreferenceScreen;
import com.android.settings.core.BasePreferenceController;
-import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.TickButtonPreference;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
/** A base controller for handling all regional preferences controllers. */
public abstract class RegionalPreferenceListBasePreferenceController extends
BasePreferenceController {
- private final MetricsFeatureProvider mMetricsFeatureProvider;
private PreferenceCategory mPreferenceCategory;
public RegionalPreferenceListBasePreferenceController(Context context, String preferenceKey) {
super(context, preferenceKey);
- mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
}
@Override
@@ -65,8 +61,6 @@
RegionalPreferencesDataUtils.savePreference(mContext, getExtensionTypes(),
item.equals(RegionalPreferencesDataUtils.DEFAULT_VALUE)
? null : item);
- mMetricsFeatureProvider.action(mContext, getMetricsActionKey(),
- getPreferenceTitle(value) + " > " + getPreferenceTitle(item));
return true;
});
pref.setSelected(!value.isEmpty() && item.equals(value));
@@ -96,8 +90,4 @@
protected abstract String getExtensionTypes();
protected abstract String[] getUnitValues();
-
- protected abstract int getMetricsActionKey();
-
-
}
diff --git a/src/com/android/settings/regionalpreferences/TemperatureUnitListController.java b/src/com/android/settings/regionalpreferences/TemperatureUnitListController.java
index 91ab1a2..c51ca71 100644
--- a/src/com/android/settings/regionalpreferences/TemperatureUnitListController.java
+++ b/src/com/android/settings/regionalpreferences/TemperatureUnitListController.java
@@ -16,7 +16,6 @@
package com.android.settings.regionalpreferences;
-import android.app.settings.SettingsEnums;
import android.content.Context;
import com.android.settings.R;
@@ -56,9 +55,4 @@
protected String[] getUnitValues() {
return mContext.getResources().getStringArray(R.array.temperature_units);
}
-
- @Override
- protected int getMetricsActionKey() {
- return SettingsEnums.ACTION_SET_TEMPERATURE_UNIT;
- }
}
diff --git a/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrolling.kt b/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrolling.kt
index 4569760..dcb81c7 100644
--- a/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrolling.kt
+++ b/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrolling.kt
@@ -42,11 +42,11 @@
private val viewModel = RemoteAuthEnrollEnrollingViewModel()
private val adapter = RemoteAuthEnrollEnrollingRecyclerViewAdapter()
private val progressBar by lazy {
- view!!.findViewById<ProgressBar>(R.id.enrolling_list_progress_bar)
+ view!!.requireViewById<ProgressBar>(R.id.enrolling_list_progress_bar)
}
- private val errorText by lazy { view!!.findViewById<TextView>(R.id.error_text) }
+ private val errorText by lazy { view!!.requireViewById<TextView>(R.id.error_text) }
private val recyclerView by lazy {
- view!!.findViewById<RecyclerView>(R.id.discovered_authenticator_list)
+ view!!.requireViewById<RecyclerView>(R.id.discovered_authenticator_list)
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
@@ -124,4 +124,4 @@
errorText.text = ""
}
}
-}
\ No newline at end of file
+}
diff --git a/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrollingRecyclerViewAdapter.kt b/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrollingRecyclerViewAdapter.kt
index 81b8801..323c41f 100644
--- a/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrollingRecyclerViewAdapter.kt
+++ b/src/com/android/settings/remoteauth/enrolling/RemoteAuthEnrollEnrollingRecyclerViewAdapter.kt
@@ -46,8 +46,8 @@
override fun getItemCount() = uiStates.size
class ViewHolder(view: View) : RecyclerView.ViewHolder(view) {
- private val titleTextView: TextView = view.findViewById(R.id.discovered_authenticator_name)
- private val selectButton: ImageView = view.findViewById(R.id.authenticator_radio_button)
+ private val titleTextView: TextView = view.requireViewById(R.id.discovered_authenticator_name)
+ private val selectButton: ImageView = view.requireViewById(R.id.authenticator_radio_button)
private val checkedDrawable =
view.context.getDrawable(R.drawable.ic_radio_button_checked_black_24dp)
private val uncheckedDrawable =
@@ -63,4 +63,4 @@
selectButton.setOnClickListener { discoveredAuthenticatorUiState.onSelect() }
}
}
-}
\ No newline at end of file
+}
diff --git a/src/com/android/settings/remoteauth/settings/RemoteAuthSettings.kt b/src/com/android/settings/remoteauth/settings/RemoteAuthSettings.kt
index ebf13f8..93711bf 100644
--- a/src/com/android/settings/remoteauth/settings/RemoteAuthSettings.kt
+++ b/src/com/android/settings/remoteauth/settings/RemoteAuthSettings.kt
@@ -34,11 +34,11 @@
val viewModel = RemoteAuthSettingsViewModel()
private val adapter = RemoteAuthSettingsRecyclerViewAdapter()
private val recyclerView by lazy {
- view!!.findViewById<RecyclerView>(R.id.registered_authenticator_list)
+ view!!.requireViewById<RecyclerView>(R.id.registered_authenticator_list)
}
private val addAuthenticatorLayout by lazy {
- view!!.findViewById<ConstraintLayout>(R.id.add_authenticator_layout)
+ view!!.requireViewById<ConstraintLayout>(R.id.add_authenticator_layout)
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
@@ -65,4 +65,4 @@
adapter.uiStates = uiState.registeredAuthenticatorUiStates
}
-}
\ No newline at end of file
+}
diff --git a/src/com/android/settings/remoteauth/settings/RemoteAuthSettingsRecyclerViewAdapter.kt b/src/com/android/settings/remoteauth/settings/RemoteAuthSettingsRecyclerViewAdapter.kt
index f506a0b..f8038bd 100644
--- a/src/com/android/settings/remoteauth/settings/RemoteAuthSettingsRecyclerViewAdapter.kt
+++ b/src/com/android/settings/remoteauth/settings/RemoteAuthSettingsRecyclerViewAdapter.kt
@@ -46,12 +46,12 @@
override fun getItemCount() = uiStates.size
class ViewHolder(view: View) : RecyclerView.ViewHolder(view) {
- private val titleTextView: TextView = view.findViewById(R.id.authenticator_name_text)
- private val unregisterButton: ImageView = view.findViewById(R.id.remove_icon)
+ private val titleTextView: TextView = view.requireViewById(R.id.authenticator_name_text)
+ private val unregisterButton: ImageView = view.requireViewById(R.id.remove_icon)
fun bind(authenticatorUiState: RemoteAuthAuthenticatorItemUiState) {
titleTextView.text = authenticatorUiState.name
unregisterButton.setOnClickListener { authenticatorUiState.unregister() }
}
}
-}
\ No newline at end of file
+}
diff --git a/tests/unit/src/com/android/settings/localepicker/LocaleHelperPreferenceControllerTest.java b/tests/unit/src/com/android/settings/localepicker/LocaleHelperPreferenceControllerTest.java
index 5ac367e..31b8e79 100644
--- a/tests/unit/src/com/android/settings/localepicker/LocaleHelperPreferenceControllerTest.java
+++ b/tests/unit/src/com/android/settings/localepicker/LocaleHelperPreferenceControllerTest.java
@@ -19,14 +19,12 @@
import static org.mockito.Mockito.anyString;
import static org.mockito.Mockito.verify;
-import android.app.settings.SettingsEnums;
import android.content.Context;
import android.os.Looper;
import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4;
-import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settingslib.widget.FooterPreference;
import org.junit.Before;
@@ -39,7 +37,6 @@
public class LocaleHelperPreferenceControllerTest {
private Context mContext;
private LocaleHelperPreferenceController mLocaleHelperPreferenceController;
- private FakeFeatureFactory mFeatureFactory;
@Mock
private FooterPreference mMockFooterPreference;
@@ -52,16 +49,11 @@
}
mContext = ApplicationProvider.getApplicationContext();
mLocaleHelperPreferenceController = new LocaleHelperPreferenceController(mContext);
- mFeatureFactory = FakeFeatureFactory.setupForTest();
}
@Test
public void updateFooterPreference_setFooterPreference_hasClickAction() {
mLocaleHelperPreferenceController.updateFooterPreference(mMockFooterPreference);
verify(mMockFooterPreference).setLearnMoreText(anyString());
- mMockFooterPreference.setLearnMoreAction(v -> {
- verify(mFeatureFactory.metricsFeatureProvider).action(
- mContext, SettingsEnums.ACTION_LANGUAGES_LEARN_MORE);
- });
}
}