Set about phone subtext to device model string.

Also remove useless custom preference

Fix: 36395109
Test: robotests
Change-Id: I07297e6ade6991a8262473c9f59c21d914300244
This commit is contained in:
Fan Zhang
2017-03-23 16:42:13 -07:00
parent b3f13f9f32
commit d53859df7d
11 changed files with 115 additions and 118 deletions

View File

@@ -26,6 +26,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.core.PreferenceController;
import com.android.settings.core.lifecycle.Lifecycle;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.deviceinfo.AdditionalSystemUpdatePreferenceController;
import com.android.settings.deviceinfo.BasebandVersionPreferenceController;
import com.android.settings.deviceinfo.BuildNumberPreferenceController;
@@ -86,6 +87,31 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
getLifecycle());
}
private static class SummaryProvider implements SummaryLoader.SummaryProvider {
private final SummaryLoader mSummaryLoader;
public SummaryProvider(SummaryLoader summaryLoader) {
mSummaryLoader = summaryLoader;
}
@Override
public void setListening(boolean listening) {
if (listening) {
mSummaryLoader.setSummary(this, DeviceModelPreferenceController.getDeviceModel());
}
}
}
public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
= new SummaryLoader.SummaryProviderFactory() {
@Override
public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
SummaryLoader summaryLoader) {
return new SummaryProvider(summaryLoader);
}
};
private static List<PreferenceController> buildPreferenceControllers(Context context,
Activity activity, Fragment fragment, Lifecycle lifecycle) {
final List<PreferenceController> controllers = new ArrayList<>();

View File

@@ -1,43 +0,0 @@
/*
* Copyright (C) 2015 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings;
import android.content.Context;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceViewHolder;
import android.text.TextUtils.TruncateAt;
import android.util.AttributeSet;
import android.widget.TextView;
import com.android.settingslib.RestrictedPreference;
public class SingleLineSummaryPreference extends RestrictedPreference {
public SingleLineSummaryPreference(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public void onBindViewHolder(PreferenceViewHolder view) {
super.onBindViewHolder(view);
final TextView summaryView = (TextView) view.findViewById(
com.android.internal.R.id.summary);
summaryView.setSingleLine();
summaryView.setEllipsize(TruncateAt.END);
}
}

View File

@@ -49,13 +49,13 @@ import com.android.internal.view.RotationPolicy;
import com.android.internal.view.RotationPolicy.RotationPolicyListener;
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.SingleLineSummaryPreference;
import com.android.settings.Utils;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
import com.android.settings.search.SearchIndexableRaw;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import com.android.settingslib.RestrictedPreference;
import com.android.settingslib.accessibility.AccessibilityUtils;
import java.util.ArrayList;
@@ -524,8 +524,8 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
for (int i = 0, count = installedServices.size(); i < count; ++i) {
AccessibilityServiceInfo info = installedServices.get(i);
SingleLineSummaryPreference preference =
new SingleLineSummaryPreference(downloadedServicesCategory.getContext(), null);
RestrictedPreference preference =
new RestrictedPreference(downloadedServicesCategory.getContext());
String title = info.getResolveInfo().loadLabel(getPackageManager()).toString();
Drawable icon = info.getResolveInfo().loadIcon(getPackageManager());

View File

@@ -46,7 +46,7 @@ public class DeviceModelPreferenceController extends PreferenceController {
super.displayPreference(screen);
final Preference pref = screen.findPreference(KEY_DEVICE_MODEL);
if (pref != null) {
pref.setSummary(Build.MODEL + DeviceInfoUtils.getMsvSuffix());
pref.setSummary(getDeviceModel());
}
}
@@ -64,4 +64,8 @@ public class DeviceModelPreferenceController extends PreferenceController {
fragment.show(mHost.getFragmentManager(), HardwareInfoDialogFragment.TAG);
return true;
}
public static String getDeviceModel() {
return Build.MODEL + DeviceInfoUtils.getMsvSuffix();
}
}

View File

@@ -18,7 +18,6 @@ package com.android.settings.deviceinfo;
import android.app.AlertDialog;
import android.app.Dialog;
import android.os.Build;
import android.os.Bundle;
import android.os.SystemProperties;
import android.support.annotation.VisibleForTesting;
@@ -30,7 +29,6 @@ import android.widget.TextView;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.DeviceInfoUtils;
public class HardwareInfoDialogFragment extends InstrumentedDialogFragment {
@@ -55,7 +53,7 @@ public class HardwareInfoDialogFragment extends InstrumentedDialogFragment {
.inflate(R.layout.dialog_hardware_info, null /* parent */);
// Model
setText(content, R.id.model_label, R.id.model_value,
Build.MODEL + DeviceInfoUtils.getMsvSuffix());
DeviceModelPreferenceController.getDeviceModel());
// Hardware rev
setText(content, R.id.hardware_rev_label, R.id.hardware_rev_value,
SystemProperties.get("ro.boot.hardware.revision"));