Loading src/com/android/settings/datausage/BillingCyclePreference.java +9 −7 Original line number Diff line number Diff line Loading @@ -14,9 +14,10 @@ package com.android.settings.datausage; import static android.net.NetworkPolicy.CYCLE_NONE; import android.content.Context; import android.content.Intent; import android.net.NetworkPolicy; import android.net.NetworkTemplate; import android.os.Bundle; import android.os.RemoteException; Loading @@ -32,7 +33,6 @@ public class BillingCyclePreference extends Preference implements TemplatePrefer private NetworkTemplate mTemplate; private NetworkServices mServices; private NetworkPolicy mPolicy; private int mSubId; public BillingCyclePreference(Context context, AttributeSet attrs) { Loading @@ -57,16 +57,18 @@ public class BillingCyclePreference extends Preference implements TemplatePrefer mTemplate = template; mSubId = subId; mServices = services; mPolicy = services.mPolicyEditor.getPolicy(mTemplate); setSummary(getContext().getString(R.string.billing_cycle_fragment_summary, mPolicy != null ? mPolicy.cycleDay : "1")); final int cycleDay = services.mPolicyEditor.getPolicyCycleDay(mTemplate); if (cycleDay != CYCLE_NONE) { setSummary(getContext().getString(R.string.billing_cycle_fragment_summary, cycleDay)); } else { setSummary(null); } setIntent(getIntent()); } private void updateEnabled() { try { setEnabled(mPolicy != null && mServices.mNetworkService.isBandwidthControlEnabled() setEnabled(mServices.mNetworkService.isBandwidthControlEnabled() && mServices.mTelephonyManager.getDataEnabled(mSubId) && mServices.mUserManager.isAdminUser()); } catch (RemoteException e) { Loading src/com/android/settings/datausage/BillingCycleSettings.java +17 −12 Original line number Diff line number Diff line Loading @@ -14,9 +14,12 @@ package com.android.settings.datausage; import static android.net.NetworkPolicy.CYCLE_NONE; import static android.net.NetworkPolicy.LIMIT_DISABLED; import static android.net.NetworkPolicy.WARNING_DISABLED; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; import android.app.Fragment; import android.content.Context; import android.content.DialogInterface; Loading Loading @@ -45,9 +48,6 @@ import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settingslib.NetworkPolicyEditor; import com.android.settingslib.net.DataUsageController; import static android.net.NetworkPolicy.LIMIT_DISABLED; import static android.net.NetworkPolicy.WARNING_DISABLED; public class BillingCycleSettings extends DataUsageBase implements Preference.OnPreferenceChangeListener, DataUsageEditController { Loading Loading @@ -103,11 +103,15 @@ public class BillingCycleSettings extends DataUsageBase implements } private void updatePrefs() { NetworkPolicy policy = services.mPolicyEditor.getPolicy(mNetworkTemplate); mBillingCycle.setSummary(getString(R.string.billing_cycle_fragment_summary, policy != null ? policy.cycleDay : 1)); if (policy != null && policy.warningBytes != WARNING_DISABLED) { mDataWarning.setSummary(Formatter.formatFileSize(getContext(), policy.warningBytes)); final int cycleDay = services.mPolicyEditor.getPolicyCycleDay(mNetworkTemplate); if (cycleDay != CYCLE_NONE) { mBillingCycle.setSummary(getString(R.string.billing_cycle_fragment_summary, cycleDay)); } else { mBillingCycle.setSummary(null); } final long warningBytes = services.mPolicyEditor.getPolicyWarningBytes(mNetworkTemplate); if (warningBytes != WARNING_DISABLED) { mDataWarning.setSummary(Formatter.formatFileSize(getContext(), warningBytes)); mDataWarning.setEnabled(true); mEnableDataWarning.setChecked(true); } else { Loading @@ -115,8 +119,9 @@ public class BillingCycleSettings extends DataUsageBase implements mDataWarning.setEnabled(false); mEnableDataWarning.setChecked(false); } if (policy != null && policy.limitBytes != LIMIT_DISABLED) { mDataLimit.setSummary(Formatter.formatFileSize(getContext(), policy.limitBytes)); final long limitBytes = services.mPolicyEditor.getPolicyWarningBytes(mNetworkTemplate); if (limitBytes != LIMIT_DISABLED) { mDataLimit.setSummary(Formatter.formatFileSize(getContext(), limitBytes)); mDataLimit.setEnabled(true); mEnableDataLimit.setChecked(true); } else { Loading Loading @@ -319,7 +324,7 @@ public class BillingCycleSettings extends DataUsageBase implements } /** * Dialog to edit {@link NetworkPolicy#cycleDay}. * Dialog to edit {@link NetworkPolicy}. */ public static class CycleEditorFragment extends InstrumentedDialogFragment implements DialogInterface.OnClickListener { Loading src/com/android/settings/datausage/CycleAdapter.java +15 −12 Original line number Diff line number Diff line Loading @@ -15,17 +15,21 @@ package com.android.settings.datausage; import android.content.Context; import android.net.NetworkPolicy; import android.net.NetworkPolicyManager; import android.net.NetworkStatsHistory; import android.text.format.DateUtils; import android.util.Pair; import android.widget.AdapterView; import android.widget.ArrayAdapter; import com.android.settings.R; import com.android.settings.Utils; import com.android.settingslib.net.ChartData; import libcore.util.Objects; import static android.net.NetworkPolicyManager.computeLastCycleBoundary; import static android.net.NetworkPolicyManager.computeNextCycleBoundary; import java.time.ZonedDateTime; import java.util.Iterator; public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { Loading Loading @@ -61,9 +65,9 @@ public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { } /** * Rebuild list based on {@link NetworkPolicy#cycleDay} * and available {@link NetworkStatsHistory} data. Always selects the newest * item, updating the inspection range on chartData. * Rebuild list based on {@link NetworkPolicy} and available * {@link NetworkStatsHistory} data. Always selects the newest item, * updating the inspection range on chartData. */ public boolean updateCycleList(NetworkPolicy policy, ChartData chartData) { // stash away currently selected cycle to try restoring below Loading @@ -87,12 +91,12 @@ public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { boolean hasCycles = false; if (policy != null) { // find the next cycle boundary long cycleEnd = computeNextCycleBoundary(historyEnd, policy); // walk backwards, generating all valid cycle ranges while (cycleEnd > historyStart) { final long cycleStart = computeLastCycleBoundary(cycleEnd, policy); final Iterator<Pair<ZonedDateTime, ZonedDateTime>> it = NetworkPolicyManager .cycleIterator(policy); while (it.hasNext()) { final Pair<ZonedDateTime, ZonedDateTime> cycle = it.next(); final long cycleStart = cycle.first.toInstant().toEpochMilli(); final long cycleEnd = cycle.second.toInstant().toEpochMilli(); final boolean includeCycle; if (chartData != null) { Loading @@ -106,7 +110,6 @@ public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { add(new CycleAdapter.CycleItem(context, cycleStart, cycleEnd)); hasCycles = true; } cycleEnd = cycleStart; } } Loading Loading
src/com/android/settings/datausage/BillingCyclePreference.java +9 −7 Original line number Diff line number Diff line Loading @@ -14,9 +14,10 @@ package com.android.settings.datausage; import static android.net.NetworkPolicy.CYCLE_NONE; import android.content.Context; import android.content.Intent; import android.net.NetworkPolicy; import android.net.NetworkTemplate; import android.os.Bundle; import android.os.RemoteException; Loading @@ -32,7 +33,6 @@ public class BillingCyclePreference extends Preference implements TemplatePrefer private NetworkTemplate mTemplate; private NetworkServices mServices; private NetworkPolicy mPolicy; private int mSubId; public BillingCyclePreference(Context context, AttributeSet attrs) { Loading @@ -57,16 +57,18 @@ public class BillingCyclePreference extends Preference implements TemplatePrefer mTemplate = template; mSubId = subId; mServices = services; mPolicy = services.mPolicyEditor.getPolicy(mTemplate); setSummary(getContext().getString(R.string.billing_cycle_fragment_summary, mPolicy != null ? mPolicy.cycleDay : "1")); final int cycleDay = services.mPolicyEditor.getPolicyCycleDay(mTemplate); if (cycleDay != CYCLE_NONE) { setSummary(getContext().getString(R.string.billing_cycle_fragment_summary, cycleDay)); } else { setSummary(null); } setIntent(getIntent()); } private void updateEnabled() { try { setEnabled(mPolicy != null && mServices.mNetworkService.isBandwidthControlEnabled() setEnabled(mServices.mNetworkService.isBandwidthControlEnabled() && mServices.mTelephonyManager.getDataEnabled(mSubId) && mServices.mUserManager.isAdminUser()); } catch (RemoteException e) { Loading
src/com/android/settings/datausage/BillingCycleSettings.java +17 −12 Original line number Diff line number Diff line Loading @@ -14,9 +14,12 @@ package com.android.settings.datausage; import static android.net.NetworkPolicy.CYCLE_NONE; import static android.net.NetworkPolicy.LIMIT_DISABLED; import static android.net.NetworkPolicy.WARNING_DISABLED; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; import android.app.Fragment; import android.content.Context; import android.content.DialogInterface; Loading Loading @@ -45,9 +48,6 @@ import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settingslib.NetworkPolicyEditor; import com.android.settingslib.net.DataUsageController; import static android.net.NetworkPolicy.LIMIT_DISABLED; import static android.net.NetworkPolicy.WARNING_DISABLED; public class BillingCycleSettings extends DataUsageBase implements Preference.OnPreferenceChangeListener, DataUsageEditController { Loading Loading @@ -103,11 +103,15 @@ public class BillingCycleSettings extends DataUsageBase implements } private void updatePrefs() { NetworkPolicy policy = services.mPolicyEditor.getPolicy(mNetworkTemplate); mBillingCycle.setSummary(getString(R.string.billing_cycle_fragment_summary, policy != null ? policy.cycleDay : 1)); if (policy != null && policy.warningBytes != WARNING_DISABLED) { mDataWarning.setSummary(Formatter.formatFileSize(getContext(), policy.warningBytes)); final int cycleDay = services.mPolicyEditor.getPolicyCycleDay(mNetworkTemplate); if (cycleDay != CYCLE_NONE) { mBillingCycle.setSummary(getString(R.string.billing_cycle_fragment_summary, cycleDay)); } else { mBillingCycle.setSummary(null); } final long warningBytes = services.mPolicyEditor.getPolicyWarningBytes(mNetworkTemplate); if (warningBytes != WARNING_DISABLED) { mDataWarning.setSummary(Formatter.formatFileSize(getContext(), warningBytes)); mDataWarning.setEnabled(true); mEnableDataWarning.setChecked(true); } else { Loading @@ -115,8 +119,9 @@ public class BillingCycleSettings extends DataUsageBase implements mDataWarning.setEnabled(false); mEnableDataWarning.setChecked(false); } if (policy != null && policy.limitBytes != LIMIT_DISABLED) { mDataLimit.setSummary(Formatter.formatFileSize(getContext(), policy.limitBytes)); final long limitBytes = services.mPolicyEditor.getPolicyWarningBytes(mNetworkTemplate); if (limitBytes != LIMIT_DISABLED) { mDataLimit.setSummary(Formatter.formatFileSize(getContext(), limitBytes)); mDataLimit.setEnabled(true); mEnableDataLimit.setChecked(true); } else { Loading Loading @@ -319,7 +324,7 @@ public class BillingCycleSettings extends DataUsageBase implements } /** * Dialog to edit {@link NetworkPolicy#cycleDay}. * Dialog to edit {@link NetworkPolicy}. */ public static class CycleEditorFragment extends InstrumentedDialogFragment implements DialogInterface.OnClickListener { Loading
src/com/android/settings/datausage/CycleAdapter.java +15 −12 Original line number Diff line number Diff line Loading @@ -15,17 +15,21 @@ package com.android.settings.datausage; import android.content.Context; import android.net.NetworkPolicy; import android.net.NetworkPolicyManager; import android.net.NetworkStatsHistory; import android.text.format.DateUtils; import android.util.Pair; import android.widget.AdapterView; import android.widget.ArrayAdapter; import com.android.settings.R; import com.android.settings.Utils; import com.android.settingslib.net.ChartData; import libcore.util.Objects; import static android.net.NetworkPolicyManager.computeLastCycleBoundary; import static android.net.NetworkPolicyManager.computeNextCycleBoundary; import java.time.ZonedDateTime; import java.util.Iterator; public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { Loading Loading @@ -61,9 +65,9 @@ public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { } /** * Rebuild list based on {@link NetworkPolicy#cycleDay} * and available {@link NetworkStatsHistory} data. Always selects the newest * item, updating the inspection range on chartData. * Rebuild list based on {@link NetworkPolicy} and available * {@link NetworkStatsHistory} data. Always selects the newest item, * updating the inspection range on chartData. */ public boolean updateCycleList(NetworkPolicy policy, ChartData chartData) { // stash away currently selected cycle to try restoring below Loading @@ -87,12 +91,12 @@ public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { boolean hasCycles = false; if (policy != null) { // find the next cycle boundary long cycleEnd = computeNextCycleBoundary(historyEnd, policy); // walk backwards, generating all valid cycle ranges while (cycleEnd > historyStart) { final long cycleStart = computeLastCycleBoundary(cycleEnd, policy); final Iterator<Pair<ZonedDateTime, ZonedDateTime>> it = NetworkPolicyManager .cycleIterator(policy); while (it.hasNext()) { final Pair<ZonedDateTime, ZonedDateTime> cycle = it.next(); final long cycleStart = cycle.first.toInstant().toEpochMilli(); final long cycleEnd = cycle.second.toInstant().toEpochMilli(); final boolean includeCycle; if (chartData != null) { Loading @@ -106,7 +110,6 @@ public class CycleAdapter extends ArrayAdapter<CycleAdapter.CycleItem> { add(new CycleAdapter.CycleItem(context, cycleStart, cycleEnd)); hasCycles = true; } cycleEnd = cycleStart; } } Loading