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

Commit 5d272ce4 authored by Daniel Nishi's avatar Daniel Nishi
Browse files

Unify storage calculations.

Due to one calculation using longs and the other using doubles, there
were situations where the percentage was off-by-one between the two
places.

By changing both places to now use doubles to calculate percentages, the
numbers should be unified.

Change-Id: I4f4ed19326562e198273adc60a1593c7d1a6b6a7
Fixes: 37923610
Test: Manual
parent c619ad77
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -39,6 +39,7 @@ import com.android.settings.R;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.DonutView;

import java.text.NumberFormat;
import java.util.Locale;

/**
@@ -46,7 +47,7 @@ import java.util.Locale;
 * on a given storage volume. It is visualized with a donut graphing the % used.
 */
public class StorageSummaryDonutPreference extends Preference implements View.OnClickListener {
    private int mPercent = -1;
    private double mPercent = -1;

    public StorageSummaryDonutPreference(Context context) {
        this(context, null);
@@ -64,8 +65,7 @@ public class StorageSummaryDonutPreference extends Preference implements View.On
            return;
        }

        mPercent = MathUtils.constrain((int) ((usedBytes * 100) / totalBytes),
                (usedBytes > 0) ? 1 : 0, 100);
        mPercent = usedBytes / (double) totalBytes;
    }

    @Override
+3 −3
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ public class DonutView extends View {
    // From manual testing, this is the longest we can go without visual errors.
    private static final int LINE_CHARACTER_LIMIT = 10;
    private float mStrokeWidth;
    private int mPercent;
    private double mPercent;
    private Paint mBackgroundCircle;
    private Paint mFilledArc;
    private TextPaint mTextPaint;
@@ -118,7 +118,7 @@ public class DonutView extends View {
                getWidth() - mStrokeWidth,
                getHeight() - mStrokeWidth,
                TOP,
                (360 * mPercent / 100),
                (360 *  (float) mPercent),
                false,
                mFilledArc);
    }
@@ -140,7 +140,7 @@ public class DonutView extends View {
    /**
     * Set a percentage full to have the donut graph.
     */
    public void setPercentage(int percent) {
    public void setPercentage(double percent) {
        mPercent = percent;
        mPercentString = Utils.formatPercentage(mPercent);
        mFullString = getContext().getString(R.string.storage_percent_full);