Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 30e9474d authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Revert "Display and parse numbers properly in all locales"" into oc-dev

parents 10158fee 293556d6
Loading
Loading
Loading
Loading
+11 −17
Original line number Diff line number Diff line
@@ -14,16 +14,13 @@

package com.android.settings.datausage;

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;
import android.content.res.Resources;
import android.icu.text.NumberFormat;
import android.net.NetworkPolicy;
import android.net.NetworkTemplate;
import android.os.Bundle;
@@ -45,7 +42,8 @@ import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.NetworkPolicyEditor;
import com.android.settingslib.net.DataUsageController;

import java.text.ParseException;
import static android.net.NetworkPolicy.LIMIT_DISABLED;
import static android.net.NetworkPolicy.WARNING_DISABLED;

public class BillingCycleSettings extends DataUsageBase implements
        Preference.OnPreferenceChangeListener, DataUsageEditController {
@@ -248,6 +246,7 @@ public class BillingCycleSettings extends DataUsageBase implements
            final boolean isLimit = getArguments().getBoolean(EXTRA_LIMIT);
            final long bytes = isLimit ? editor.getPolicyLimitBytes(template)
                    : editor.getPolicyWarningBytes(template);
            final long limitDisabled = isLimit ? LIMIT_DISABLED : WARNING_DISABLED;

            if (bytes > 1.5f * GB_IN_BYTES) {
                final String bytesText = formatText(bytes / (float) GB_IN_BYTES);
@@ -266,7 +265,7 @@ public class BillingCycleSettings extends DataUsageBase implements

        private String formatText(float v) {
            v = Math.round(v * 100) / 100f;
            return NumberFormat.getInstance().format(v);
            return String.valueOf(v);
        }

        @Override
@@ -279,19 +278,14 @@ public class BillingCycleSettings extends DataUsageBase implements

            final NetworkTemplate template = getArguments().getParcelable(EXTRA_TEMPLATE);
            final boolean isLimit = getArguments().getBoolean(EXTRA_LIMIT);
            EditText bytesField = mView.findViewById(R.id.bytes);
            Spinner spinner = mView.findViewById(R.id.size_spinner);
            EditText bytesField = (EditText) mView.findViewById(R.id.bytes);
            Spinner spinner = (Spinner) mView.findViewById(R.id.size_spinner);

            String bytesString = bytesField.getText().toString();

            double input = 0;
            try {
                input = NumberFormat.getInstance().parse(bytesString).doubleValue();
            } catch (ParseException e) {
                Log.w(TAG, "Failed to parse byte value " + bytesString);
            if (bytesString.isEmpty()) {
                bytesString = "0";
            }

            final long bytes = (long) (input
            final long bytes = (long) (Float.valueOf(bytesString)
                        * (spinner.getSelectedItemPosition() == 0 ? MB_IN_BYTES : GB_IN_BYTES));

            // to fix the overflow problem
+5 −6
Original line number Diff line number Diff line
@@ -16,17 +16,16 @@
package com.android.settings.utils;


import static com.google.common.truth.Truth.assertThat;
import static org.junit.Assert.fail;

import com.android.settings.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.annotation.Config;

@RunWith(SettingsRobolectricTestRunner.class)
import static com.google.common.truth.Truth.assertThat;
import static org.junit.Assert.fail;

@RunWith(RobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class ThreadUtilsTest {