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

Commit 5c401966 authored by Julia Reynolds's avatar Julia Reynolds Committed by Android (Google) Code Review
Browse files

Merge "Don't crash on invalid numbers." into nyc-dev

parents f4f2211b b9cad485
Loading
Loading
Loading
Loading
+14 −7
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ import android.content.res.Resources;
import android.text.InputType;
import android.util.AttributeSet;
import android.util.DisplayMetrics;
import android.util.Slog;
import android.view.Display;
import android.view.View;
import android.widget.EditText;
@@ -27,6 +28,7 @@ import com.android.settings.R;
import com.android.settingslib.display.DisplayDensityUtils;

public class DensityPreference extends CustomEditTextPreference {
    private static final String TAG = "DensityPreference";

    public DensityPreference(Context context, AttributeSet attrs) {
        super(context, attrs);
@@ -62,6 +64,7 @@ public class DensityPreference extends CustomEditTextPreference {
    @Override
    protected void onDialogClosed(boolean positiveResult) {
        if (positiveResult) {
            try {
                final Resources res = getContext().getResources();
                final DisplayMetrics metrics = res.getDisplayMetrics();
                final int newSwDp = Math.max(Integer.parseInt(getText()), 320);
@@ -69,6 +72,10 @@ public class DensityPreference extends CustomEditTextPreference {
                final int newDensity = DisplayMetrics.DENSITY_MEDIUM * minDimensionPx / newSwDp;
                final int densityDpi = Math.max(newDensity, 120);
                DisplayDensityUtils.setForcedDisplayDensity(Display.DEFAULT_DISPLAY, densityDpi);
            } catch (Exception e) {
                // TODO: display a message instead of silently failing.
                Slog.e(TAG, "Couldn't save density", e);
            }
        }
    }
}