Pass viewable locales to LocalePickerWithRegion
Bug: b/249219775 Test: Manual test Change-Id: I48f2f02a365d3597023e021a7819d31709e6d5d8
This commit is contained in:
@@ -19,6 +19,9 @@ package com.android.settings.localepicker;
|
||||
import android.app.FragmentTransaction;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.os.LocaleList;
|
||||
import android.provider.Settings;
|
||||
import android.util.Log;
|
||||
import android.view.MenuItem;
|
||||
|
||||
import com.android.internal.app.LocalePickerWithRegion;
|
||||
@@ -29,7 +32,7 @@ import com.android.settings.core.SettingsBaseActivity;
|
||||
/** A activity to show the locale picker page. */
|
||||
public class LocalePickerWithRegionActivity extends SettingsBaseActivity
|
||||
implements LocalePickerWithRegion.LocaleSelectedListener {
|
||||
|
||||
private static final String TAG = LocalePickerWithRegionActivity.class.getSimpleName();
|
||||
private static final String PARENT_FRAGMENT_NAME = "localeListEditor";
|
||||
|
||||
@Override
|
||||
@@ -37,9 +40,20 @@ public class LocalePickerWithRegionActivity extends SettingsBaseActivity
|
||||
super.onCreate(savedInstanceState);
|
||||
getActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
setTitle(R.string.add_a_language);
|
||||
LocaleList explicitLocales = null;
|
||||
if (isDeviceDemoMode()) {
|
||||
Bundle bundle = getIntent().getExtras();
|
||||
explicitLocales = bundle == null
|
||||
? null
|
||||
: bundle.getParcelable(Settings.EXTRA_EXPLICIT_LOCALES, LocaleList.class);
|
||||
Log.i(TAG, "Has explicit locales : " + explicitLocales);
|
||||
}
|
||||
|
||||
final LocalePickerWithRegion selector = LocalePickerWithRegion.createLanguagePicker(
|
||||
this, LocalePickerWithRegionActivity.this, false /* translate only */);
|
||||
this,
|
||||
LocalePickerWithRegionActivity.this,
|
||||
false /* translate only */,
|
||||
explicitLocales);
|
||||
getFragmentManager()
|
||||
.beginTransaction()
|
||||
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
|
||||
@@ -78,5 +92,10 @@ public class LocalePickerWithRegionActivity extends SettingsBaseActivity
|
||||
finish();
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isDeviceDemoMode() {
|
||||
return Settings.Global.getInt(
|
||||
getContentResolver(), Settings.Global.DEVICE_DEMO_MODE, 0) == 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user