resolve merge conflicts of 0ee60c0
to master
Change-Id: Id371c6f3687dc35f87c4a93f032bfc5ca87d15ab
This commit is contained in:
@@ -765,8 +765,12 @@
|
||||
<string name="security_settings_fingerprint_preference_summary_none"></string>
|
||||
<!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature[CHAR LIMIT=29] -->
|
||||
<string name="security_settings_fingerprint_enroll_introduction_title">Unlock with fingerprint</string>
|
||||
<!-- Introduction title shown in fingerprint enrollment to introduce the fingerprint feature, when fingerprint unlock is disabed by device admin [CHAR LIMIT=29] -->
|
||||
<string name="security_settings_fingerprint_enroll_introduction_title_unlock_disabled">Use your fingerprint</string>
|
||||
<!-- Introduction detail message shown in fingerprint enrollment dialog [CHAR LIMIT=NONE]-->
|
||||
<string name="security_settings_fingerprint_enroll_introduction_message">Just touch the fingerprint sensor to unlock your phone, authorize purchases, or sign in to apps. Be careful whose fingerprints you add. Even one added print can do any of these things.\n\nNote: Your fingerprint may be less secure than a strong pattern or PIN.</string>
|
||||
<!-- Introduction detail message shown in fingerprint enrollment dialog, when fingerprint unlock is disabled by device admin [CHAR LIMIT=NONE]-->
|
||||
<string name="security_settings_fingerprint_enroll_introduction_message_unlock_disabled">Just touch the fingerprint sensor to authorize purchases, or sign in to apps. Be careful whose fingerprints you add. Even one added print can do any of these things.\n\nNote: You can\u2019t use your fingerprint to unlock this device. For more information, contact your organization\u2019s admin.</string>
|
||||
<!-- Introduction detail message shown in fingerprint enrollment screen in setup wizard. [CHAR LIMIT=NONE]-->
|
||||
<string name="security_settings_fingerprint_enroll_introduction_message_setup">Just touch the fingerprint sensor to unlock your phone, authorize purchases, or sign in to apps. Be careful whose fingerprints you add. Even one added print can do any of these things.\n\nNote: Your fingerprint may be less secure than a strong pattern or PIN.</string>
|
||||
<!-- Button text to cancel enrollment from the introduction [CHAR LIMIT=22] -->
|
||||
|
@@ -21,6 +21,10 @@
|
||||
android:key="billing_cycle"
|
||||
android:title="@string/billing_cycle" />
|
||||
|
||||
<SwitchPreference
|
||||
android:key="set_data_warning"
|
||||
android:title="@string/set_data_warning"/>
|
||||
|
||||
<Preference
|
||||
android:key="data_warning"
|
||||
android:title="@string/data_warning" />
|
||||
|
@@ -34,6 +34,7 @@ public class SummaryPreference extends Preference {
|
||||
|
||||
private int mLeft, mMiddle, mRight;
|
||||
private boolean mColorsSet = false;
|
||||
private boolean mChartEnabled = true;
|
||||
private float mLeftRatio, mMiddleRatio, mRightRatio;
|
||||
private String mStartLabel;
|
||||
private String mEndLabel;
|
||||
@@ -43,6 +44,13 @@ public class SummaryPreference extends Preference {
|
||||
setLayoutResource(R.layout.settings_summary_preference);
|
||||
}
|
||||
|
||||
public void setChartEnabled(boolean enabled) {
|
||||
if (mChartEnabled != enabled) {
|
||||
mChartEnabled = enabled;
|
||||
notifyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public void setAmount(String amount) {
|
||||
mAmount = amount;
|
||||
if (mAmount != null && mUnits != null) {
|
||||
@@ -85,12 +93,18 @@ public class SummaryPreference extends Preference {
|
||||
super.onBindViewHolder(holder);
|
||||
|
||||
LinearColorBar colorBar = (LinearColorBar) holder.itemView.findViewById(R.id.color_bar);
|
||||
|
||||
if (mChartEnabled) {
|
||||
colorBar.setVisibility(View.VISIBLE);
|
||||
colorBar.setRatios(mLeftRatio, mMiddleRatio, mRightRatio);
|
||||
if (mColorsSet) {
|
||||
colorBar.setColors(mLeft, mMiddle, mRight);
|
||||
}
|
||||
} else {
|
||||
colorBar.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
if (!TextUtils.isEmpty(mStartLabel) || !TextUtils.isEmpty(mEndLabel)) {
|
||||
if (mChartEnabled && (!TextUtils.isEmpty(mStartLabel) || !TextUtils.isEmpty(mEndLabel))) {
|
||||
holder.findViewById(R.id.label_bar).setVisibility(View.VISIBLE);
|
||||
((TextView) holder.findViewById(android.R.id.text1)).setText(mStartLabel);
|
||||
((TextView) holder.findViewById(android.R.id.text2)).setText(mEndLabel);
|
||||
|
@@ -34,6 +34,7 @@ import android.view.View;
|
||||
import android.widget.EditText;
|
||||
import android.widget.NumberPicker;
|
||||
import android.widget.Spinner;
|
||||
|
||||
import com.android.internal.logging.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.R;
|
||||
import com.android.settingslib.NetworkPolicyEditor;
|
||||
@@ -56,6 +57,7 @@ public class BillingCycleSettings extends DataUsageBase implements
|
||||
private static final String TAG_WARNING_EDITOR = "warningEditor";
|
||||
|
||||
private static final String KEY_BILLING_CYCLE = "billing_cycle";
|
||||
private static final String KEY_SET_DATA_WARNING = "set_data_warning";
|
||||
private static final String KEY_DATA_WARNING = "data_warning";
|
||||
private static final String KEY_SET_DATA_LIMIT = "set_data_limit";
|
||||
private static final String KEY_DATA_LIMIT = "data_limit";
|
||||
@@ -63,6 +65,7 @@ public class BillingCycleSettings extends DataUsageBase implements
|
||||
private NetworkTemplate mNetworkTemplate;
|
||||
private Preference mBillingCycle;
|
||||
private Preference mDataWarning;
|
||||
private SwitchPreference mEnableDataWarning;
|
||||
private SwitchPreference mEnableDataLimit;
|
||||
private Preference mDataLimit;
|
||||
private DataUsageController mDataUsageController;
|
||||
@@ -78,6 +81,8 @@ public class BillingCycleSettings extends DataUsageBase implements
|
||||
|
||||
addPreferencesFromResource(R.xml.billing_cycle);
|
||||
mBillingCycle = findPreference(KEY_BILLING_CYCLE);
|
||||
mEnableDataWarning = (SwitchPreference) findPreference(KEY_SET_DATA_WARNING);
|
||||
mEnableDataWarning.setOnPreferenceChangeListener(this);
|
||||
mDataWarning = findPreference(KEY_DATA_WARNING);
|
||||
mEnableDataLimit = (SwitchPreference) findPreference(KEY_SET_DATA_LIMIT);
|
||||
mEnableDataLimit.setOnPreferenceChangeListener(this);
|
||||
@@ -94,10 +99,15 @@ public class BillingCycleSettings extends DataUsageBase implements
|
||||
NetworkPolicy policy = services.mPolicyEditor.getPolicy(mNetworkTemplate);
|
||||
mBillingCycle.setSummary(getString(R.string.billing_cycle_summary, policy != null ?
|
||||
policy.cycleDay : 1));
|
||||
mDataWarning.setSummary(Formatter.formatFileSize(getContext(),
|
||||
policy != null
|
||||
? policy.warningBytes
|
||||
: mDataUsageController.getDefaultWarningLevel()));
|
||||
if (policy != null && policy.warningBytes != WARNING_DISABLED) {
|
||||
mDataWarning.setSummary(Formatter.formatFileSize(getContext(), policy.warningBytes));
|
||||
mDataWarning.setEnabled(true);
|
||||
mEnableDataWarning.setChecked(true);
|
||||
} else {
|
||||
mDataWarning.setSummary(null);
|
||||
mDataWarning.setEnabled(false);
|
||||
mEnableDataWarning.setChecked(false);
|
||||
}
|
||||
if (policy != null && policy.limitBytes != LIMIT_DISABLED) {
|
||||
mDataLimit.setSummary(Formatter.formatFileSize(getContext(), policy.limitBytes));
|
||||
mDataLimit.setEnabled(true);
|
||||
@@ -134,6 +144,14 @@ public class BillingCycleSettings extends DataUsageBase implements
|
||||
setPolicyLimitBytes(LIMIT_DISABLED);
|
||||
}
|
||||
return true;
|
||||
} else if (mEnableDataWarning == preference) {
|
||||
boolean enabled = (Boolean) newValue;
|
||||
if (enabled) {
|
||||
setPolicyWarningBytes(mDataUsageController.getDefaultWarningLevel());
|
||||
} else {
|
||||
setPolicyWarningBytes(WARNING_DISABLED);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -149,6 +167,12 @@ public class BillingCycleSettings extends DataUsageBase implements
|
||||
updatePrefs();
|
||||
}
|
||||
|
||||
private void setPolicyWarningBytes(long warningBytes) {
|
||||
if (LOGD) Log.d(TAG, "setPolicyWarningBytes()");
|
||||
services.mPolicyEditor.setPolicyWarningBytes(mNetworkTemplate, warningBytes);
|
||||
updatePrefs();
|
||||
}
|
||||
|
||||
@Override
|
||||
public NetworkPolicyEditor getNetworkPolicyEditor() {
|
||||
return services.mPolicyEditor;
|
||||
|
@@ -234,16 +234,24 @@ public class DataUsageSummary extends DataUsageBase implements Indexable, DataUs
|
||||
formatTitle(context, getString(mDataUsageTemplate), info.usageLevel));
|
||||
long limit = mDataInfoController.getSummaryLimit(info);
|
||||
mSummaryPreference.setSummary(info.period);
|
||||
|
||||
if (limit <= 0) {
|
||||
mSummaryPreference.setChartEnabled(false);
|
||||
} else {
|
||||
mSummaryPreference.setChartEnabled(true);
|
||||
mSummaryPreference.setLabels(Formatter.formatFileSize(context, 0),
|
||||
Formatter.formatFileSize(context, limit));
|
||||
mSummaryPreference.setRatios(info.usageLevel / (float) limit, 0,
|
||||
(limit - info.usageLevel) / (float) limit);
|
||||
}
|
||||
if (mLimitPreference != null) {
|
||||
}
|
||||
if (mLimitPreference != null && (info.warningLevel > 0 || info.limitLevel > 0)) {
|
||||
String warning = Formatter.formatFileSize(context, info.warningLevel);
|
||||
String limit = Formatter.formatFileSize(context, info.limitLevel);
|
||||
mLimitPreference.setSummary(getString(info.limitLevel <= 0 ? R.string.cell_warning_only
|
||||
: R.string.cell_warning_and_limit, warning, limit));
|
||||
} else if (mLimitPreference != null) {
|
||||
mLimitPreference.setSummary(null);
|
||||
}
|
||||
|
||||
PreferenceScreen screen = getPreferenceScreen();
|
||||
|
@@ -26,12 +26,14 @@ import android.os.UserManager;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
import android.widget.Button;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.android.internal.logging.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.ChooseLockGeneric;
|
||||
import com.android.settings.ChooseLockSettingsHelper;
|
||||
import com.android.settings.R;
|
||||
import com.android.settingslib.HelpUtils;
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
import com.android.setupwizardlib.span.LinkSpan;
|
||||
|
||||
/**
|
||||
@@ -48,12 +50,21 @@ public class FingerprintEnrollIntroduction extends FingerprintEnrollBase
|
||||
|
||||
private UserManager mUserManager;
|
||||
private boolean mHasPassword;
|
||||
private boolean mFingerprintUnlockDisabledByAdmin;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
mFingerprintUnlockDisabledByAdmin = RestrictedLockUtils.checkIfKeyguardFeaturesDisabled(
|
||||
this, DevicePolicyManager.KEYGUARD_DISABLE_FINGERPRINT, mUserId) != null;
|
||||
|
||||
setContentView(R.layout.fingerprint_enroll_introduction);
|
||||
if (mFingerprintUnlockDisabledByAdmin) {
|
||||
setHeaderText(R.string
|
||||
.security_settings_fingerprint_enroll_introduction_title_unlock_disabled);
|
||||
} else {
|
||||
setHeaderText(R.string.security_settings_fingerprint_enroll_introduction_title);
|
||||
}
|
||||
|
||||
final Button cancelButton = (Button) findViewById(R.id.fingerprint_cancel_button);
|
||||
cancelButton.setOnClickListener(this);
|
||||
@@ -160,6 +171,17 @@ public class FingerprintEnrollIntroduction extends FingerprintEnrollBase
|
||||
finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void initViews() {
|
||||
super.initViews();
|
||||
|
||||
TextView description = (TextView) findViewById(R.id.description_text);
|
||||
if (mFingerprintUnlockDisabledByAdmin) {
|
||||
description.setText(R.string
|
||||
.security_settings_fingerprint_enroll_introduction_message_unlock_disabled);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClick(LinkSpan span) {
|
||||
if ("url".equals(span.getId())) {
|
||||
|
Reference in New Issue
Block a user