Snap for 8228195 from 3d345dda13 to udc-release
Change-Id: I7b4aebbe47e64434c316081bf601e33ba754ac02
This commit is contained in:
@@ -24,10 +24,10 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/dream_preview_button_title"
|
||||
android:textAllCaps="false"
|
||||
android:textColor="?androidprv:attr/textColorOnAccent"
|
||||
android:textColor="?android:attr/textColorPrimaryInverse"
|
||||
android:theme="@style/Theme.CollapsingToolbar.Settings"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:layout_gravity="bottom|center"
|
||||
app:backgroundTint="?androidprv:attr/colorAccentPrimaryVariant"
|
||||
app:iconTint="?androidprv:attr/textColorOnAccent"
|
||||
app:iconTint="?android:attr/textColorPrimaryInverse"
|
||||
app:icon="@drawable/dream_preview_icon"/>
|
||||
|
||||
@@ -734,6 +734,7 @@
|
||||
parent="@android:style/TextAppearance.DeviceDefault.Widget.ActionBar.Title" >
|
||||
<item name="android:layout_gravity">center_horizontal</item>
|
||||
<item name="android:padding">6dp</item>
|
||||
<item name="android:textSize">14sp</item>
|
||||
</style>
|
||||
|
||||
<style name="Widget.PopupWindow.Settings"
|
||||
|
||||
@@ -222,7 +222,7 @@ public class AccessibilityDetailsSettingsFragment extends InstrumentedFragment {
|
||||
new ComponentName(packageName, settingsClassName).flattenToString());
|
||||
}
|
||||
|
||||
final String tileServiceClassName = info.getTileServiceClassName();
|
||||
final String tileServiceClassName = info.getTileServiceName();
|
||||
if (!TextUtils.isEmpty(tileServiceClassName)) {
|
||||
extras.putString(AccessibilitySettings.EXTRA_TILE_SERVICE_COMPONENT_NAME,
|
||||
new ComponentName(packageName, tileServiceClassName).flattenToString());
|
||||
|
||||
@@ -576,7 +576,7 @@ public class AccessibilitySettings extends DashboardFragment {
|
||||
serviceEnabled);
|
||||
final String htmlDescription = info.loadHtmlDescription(mPm);
|
||||
final String settingsClassName = info.getSettingsActivityName();
|
||||
final String tileServiceClassName = info.getTileServiceClassName();
|
||||
final String tileServiceClassName = info.getTileServiceName();
|
||||
|
||||
putBasicExtras(preference, prefKey, title, intro, description, imageRes,
|
||||
htmlDescription, componentName);
|
||||
@@ -637,7 +637,7 @@ public class AccessibilitySettings extends DashboardFragment {
|
||||
final int imageRes = info.getAnimatedImageRes();
|
||||
final String htmlDescription = info.loadHtmlDescription(mPm);
|
||||
final String settingsClassName = info.getSettingsActivityName();
|
||||
final String tileServiceClassName = info.getTileServiceClassName();
|
||||
final String tileServiceClassName = info.getTileServiceName();
|
||||
|
||||
putBasicExtras(preference, prefKey, title, intro, description, imageRes,
|
||||
htmlDescription, componentName);
|
||||
|
||||
@@ -48,6 +48,7 @@ import com.android.settingslib.widget.RadioButtonPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.Locale;
|
||||
|
||||
/**
|
||||
@@ -292,7 +293,7 @@ public class AppLocaleDetails extends AppInfoBase implements RadioButtonPreferen
|
||||
});
|
||||
|
||||
// Other locales in suggested languages group.
|
||||
Collection<Locale> supportedSystemLocales = new ArrayList<>();
|
||||
Collection<Locale> supportedSystemLocales = new HashSet<>();
|
||||
getCurrentSystemLocales().forEach(systemLocale -> {
|
||||
mAppSupportedLocales.forEach(supportedLocale -> {
|
||||
if (compareLocale(systemLocale, supportedLocale)) {
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.dream;
|
||||
|
||||
import android.annotation.LayoutRes;
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.graphics.drawable.VectorDrawable;
|
||||
@@ -40,6 +41,7 @@ import java.util.List;
|
||||
*/
|
||||
public class DreamAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
|
||||
private final List<IDreamItem> mItemList;
|
||||
private final @LayoutRes int mLayoutRes;
|
||||
private int mLastSelectedPos = -1;
|
||||
|
||||
/**
|
||||
@@ -116,15 +118,16 @@ public class DreamAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>
|
||||
}
|
||||
}
|
||||
|
||||
public DreamAdapter(List<IDreamItem> itemList) {
|
||||
public DreamAdapter(@LayoutRes int layoutRes, List<IDreamItem> itemList) {
|
||||
mItemList = itemList;
|
||||
mLayoutRes = layoutRes;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int viewType) {
|
||||
View view = LayoutInflater.from(viewGroup.getContext())
|
||||
.inflate(R.layout.dream_preference_layout, viewGroup, false);
|
||||
.inflate(mLayoutRes, viewGroup, false);
|
||||
return new DreamViewHolder(view, viewGroup.getContext());
|
||||
}
|
||||
|
||||
|
||||
@@ -74,9 +74,10 @@ public class DreamPickerController extends BasePreferenceController {
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
|
||||
mAdapter = new DreamAdapter(mDreamInfos.stream()
|
||||
.map(DreamItem::new)
|
||||
.collect(Collectors.toList()));
|
||||
mAdapter = new DreamAdapter(R.layout.dream_preference_layout,
|
||||
mDreamInfos.stream()
|
||||
.map(DreamItem::new)
|
||||
.collect(Collectors.toList()));
|
||||
|
||||
final LayoutPreference pref = screen.findPreference(getPreferenceKey());
|
||||
if (pref == null) {
|
||||
|
||||
@@ -43,7 +43,9 @@ import org.mockito.MockitoAnnotations;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.Locale;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* Unittest for ApplocaleDetails
|
||||
@@ -151,8 +153,9 @@ public class AppLocaleDetailsTest {
|
||||
@Test
|
||||
@UiThreadTest
|
||||
public void
|
||||
handleAllLocalesData_noAppAndNoSupportedSimLocale_1stSuggestedLocaleIsAssetLocale() {
|
||||
Locale firstAssetLocale = new Locale("en", "GB");
|
||||
handleAllLocalesData_noAppAndNoSupportedSimLocale_suggestedLocaleIsSupported() {
|
||||
Locale testEnAssetLocale = new Locale("en", "GB");
|
||||
Locale testJaAssetLocale = new Locale("ja", "JP");
|
||||
setupInitialLocales(
|
||||
/* appLocale= */ "",
|
||||
/* simCountry= */ "tw",
|
||||
@@ -166,8 +169,8 @@ public class AppLocaleDetailsTest {
|
||||
helper.handleAllLocalesData();
|
||||
|
||||
Collection<Locale> suggestedLocales = helper.getSuggestedLocales();
|
||||
Locale locale = suggestedLocales.iterator().next();
|
||||
assertTrue(locale.equals(firstAssetLocale));
|
||||
assertTrue(suggestedLocales.contains(testEnAssetLocale));
|
||||
assertTrue(suggestedLocales.contains(testJaAssetLocale));
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -295,6 +298,35 @@ public class AppLocaleDetailsTest {
|
||||
assertTrue(locale.equals(systemLocale));
|
||||
}
|
||||
|
||||
@Test
|
||||
@UiThreadTest
|
||||
public void handleAllLocalesData_sameLocaleButDifferentRegion_notShowDuplicatedLocale() {
|
||||
setupInitialLocales(
|
||||
/* appLocale= */ "",
|
||||
/* simCountry= */ "",
|
||||
/* networkCountry= */ "",
|
||||
/* systemLocales= */ "en-us, en-gb, jp, ne",
|
||||
/* packageLocales= */ "pa, cn, tw, en-us, en-gb",
|
||||
/* assetLocales= */ new String[]{});
|
||||
DummyAppLocaleDetailsHelper helper =
|
||||
new DummyAppLocaleDetailsHelper(mContext, APP_PACKAGE_NAME);
|
||||
|
||||
helper.handleAllLocalesData();
|
||||
|
||||
Collection<Locale> suggestedLocales = helper.getSuggestedLocales();
|
||||
assertFalse(hasDuplicatedResult(suggestedLocales));
|
||||
}
|
||||
|
||||
private boolean hasDuplicatedResult(Collection<Locale> locales) {
|
||||
Set<Locale> tempSet = new HashSet<>();
|
||||
for (Locale locale : locales) {
|
||||
if (!tempSet.add(locale)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Test
|
||||
@UiThreadTest
|
||||
public void handleAllLocalesData_supportLocaleListIsNotEmpty() {
|
||||
|
||||
Reference in New Issue
Block a user