Revert "[Regional Preference] Need to remove the metrics by the metrics concil"
This reverts commit abe3265390
.
Reason for revert: <Add metrics>
Change-Id: I483978ffc4f2df9035b664674912836d0711b9c6
This commit is contained in:
committed by
Android (Google) Code Review
parent
abe3265390
commit
291564a337
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.localepicker;
|
||||
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.util.Log;
|
||||
@@ -24,8 +25,10 @@ import androidx.annotation.VisibleForTesting;
|
||||
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;
|
||||
|
||||
/**
|
||||
@@ -36,8 +39,11 @@ public class LocaleHelperPreferenceController extends AbstractPreferenceControll
|
||||
|
||||
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
|
||||
@@ -72,6 +78,7 @@ public class LocaleHelperPreferenceController extends AbstractPreferenceControll
|
||||
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");
|
||||
|
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.regionalpreferences;
|
||||
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
|
||||
import com.android.settings.R;
|
||||
@@ -57,4 +58,9 @@ public class FirstDayOfWeekItemListController extends
|
||||
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;
|
||||
}
|
||||
}
|
||||
|
@@ -22,16 +22,20 @@ import androidx.preference.PreferenceCategory;
|
||||
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
|
||||
@@ -61,6 +65,8 @@ public abstract class RegionalPreferenceListBasePreferenceController extends
|
||||
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));
|
||||
@@ -90,4 +96,8 @@ public abstract class RegionalPreferenceListBasePreferenceController extends
|
||||
protected abstract String getExtensionTypes();
|
||||
|
||||
protected abstract String[] getUnitValues();
|
||||
|
||||
protected abstract int getMetricsActionKey();
|
||||
|
||||
|
||||
}
|
||||
|
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.regionalpreferences;
|
||||
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
|
||||
import com.android.settings.R;
|
||||
@@ -55,4 +56,9 @@ public class TemperatureUnitListController extends RegionalPreferenceListBasePre
|
||||
protected String[] getUnitValues() {
|
||||
return mContext.getResources().getStringArray(R.array.temperature_units);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int getMetricsActionKey() {
|
||||
return SettingsEnums.ACTION_SET_TEMPERATURE_UNIT;
|
||||
}
|
||||
}
|
||||
|
@@ -19,12 +19,14 @@ package com.android.settings.localepicker;
|
||||
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;
|
||||
@@ -37,6 +39,7 @@ import org.mockito.MockitoAnnotations;
|
||||
public class LocaleHelperPreferenceControllerTest {
|
||||
private Context mContext;
|
||||
private LocaleHelperPreferenceController mLocaleHelperPreferenceController;
|
||||
private FakeFeatureFactory mFeatureFactory;
|
||||
|
||||
@Mock
|
||||
private FooterPreference mMockFooterPreference;
|
||||
@@ -49,11 +52,16 @@ public class LocaleHelperPreferenceControllerTest {
|
||||
}
|
||||
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);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user