diff --git a/res/values/cherish_strings.xml b/res/values/cherish_strings.xml
index 5320323..877f496 100644
--- a/res/values/cherish_strings.xml
+++ b/res/values/cherish_strings.xml
@@ -1168,4 +1168,11 @@
Hide
Stock statusbar height
Use default statusbar height in Hide
+
+
+ Corners
+ Rounded corner radius
+ Corner content padding
+ Use framework values
+ Useful if the device actually has rounded corners
diff --git a/res/xml/cherish_settings_misc.xml b/res/xml/cherish_settings_misc.xml
index 62f57f8..b84cf08 100644
--- a/res/xml/cherish_settings_misc.xml
+++ b/res/xml/cherish_settings_misc.xml
@@ -83,4 +83,35 @@
android:fragment="com.cherish.settings.fragments.SmartPixels"
android:title="@string/smart_pixels_title"
android:summary="@string/smart_pixels_summary" />
+
+
+
+
+
+
+
+
+
+
diff --git a/src/com/cherish/settings/fragments/MiscSettings.java b/src/com/cherish/settings/fragments/MiscSettings.java
index e7164d7..413cd71 100644
--- a/src/com/cherish/settings/fragments/MiscSettings.java
+++ b/src/com/cherish/settings/fragments/MiscSettings.java
@@ -7,6 +7,7 @@ import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.os.UserHandle;
+import android.content.Context;
import android.content.ContentResolver;
import android.content.res.Resources;
import androidx.preference.ListPreference;
@@ -28,13 +29,22 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.HashSet;
+import android.content.pm.PackageManager.NameNotFoundException;
import com.android.settings.SettingsPreferenceFragment;
import com.cherish.settings.preferences.SystemSettingMasterSwitchPreference;
import com.cherish.settings.preferences.SystemSettingListPreference;
+import com.cherish.settings.preferences.SecureSettingSwitchPreference;
public class MiscSettings extends SettingsPreferenceFragment implements
OnPreferenceChangeListener {
private static final String SMART_PIXELS = "smart_pixels";
+ private static final String SYSUI_ROUNDED_SIZE = "sysui_rounded_size";
+ private static final String SYSUI_ROUNDED_CONTENT_PADDING = "sysui_rounded_content_padding";
+ private static final String SYSUI_ROUNDED_FWVALS = "sysui_rounded_fwvals";
+
+ private CustomSeekBarPreference mCornerRadius;
+ private CustomSeekBarPreference mContentPadding;
+ private SecureSettingSwitchPreference mRoundedFwvals;
@Override
public void onCreate(Bundle icicle) {
@@ -43,6 +53,38 @@ public class MiscSettings extends SettingsPreferenceFragment implements
addPreferencesFromResource(R.xml.cherish_settings_misc);
updateSmartPixelsPreference();
+
+ Resources res = null;
+ Context ctx = getContext();
+ float density = Resources.getSystem().getDisplayMetrics().density;
+
+ try {
+ res = ctx.getPackageManager().getResourcesForApplication("com.android.systemui");
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
+ }
+
+ // Rounded Corner Radius
+ mCornerRadius = (CustomSeekBarPreference) findPreference(SYSUI_ROUNDED_SIZE);
+ int resourceIdRadius = (int) ctx.getResources().getDimension(com.android.internal.R.dimen.rounded_corner_radius);
+ int cornerRadius = Settings.Secure.getIntForUser(ctx.getContentResolver(), Settings.Secure.SYSUI_ROUNDED_SIZE,
+ ((int) (resourceIdRadius / density)), UserHandle.USER_CURRENT);
+ mCornerRadius.setValue(cornerRadius);
+ mCornerRadius.setOnPreferenceChangeListener(this);
+
+ // Rounded Content Padding
+ //mContentPadding = (CustomSeekBarPreference) findPreference(SYSUI_ROUNDED_CONTENT_PADDING);
+ //int resourceIdPadding = res.getIdentifier("com.android.systemui:dimen/rounded_corner_content_padding", null,
+ // null);
+ //int contentPadding = Settings.Secure.getIntForUser(ctx.getContentResolver(),
+ // Settings.Secure.SYSUI_ROUNDED_CONTENT_PADDING,
+ // (int) (res.getDimension(resourceIdPadding) / density), UserHandle.USER_CURRENT);
+ //mContentPadding.setValue(contentPadding);
+ //mContentPadding.setOnPreferenceChangeListener(this);
+
+ // Rounded use Framework Values
+ mRoundedFwvals = (SecureSettingSwitchPreference) findPreference(SYSUI_ROUNDED_FWVALS);
+ mRoundedFwvals.setOnPreferenceChangeListener(this);
}
@@ -59,9 +101,37 @@ public class MiscSettings extends SettingsPreferenceFragment implements
@Override
public boolean onPreferenceChange(Preference preference, Object objValue) {
+ if (preference == mCornerRadius) {
+ Settings.Secure.putIntForUser(getContext().getContentResolver(), Settings.Secure.SYSUI_ROUNDED_SIZE,
+ (int) objValue, UserHandle.USER_CURRENT);
+ return true;
+ //} else if (preference == mContentPadding) {
+ // Settings.Secure.putIntForUser(getContext().getContentResolver(), Settings.Secure.SYSUI_ROUNDED_CONTENT_PADDING,
+ // (int) objValue, UserHandle.USER_CURRENT);
+ // return true;
+ } else if (preference == mRoundedFwvals) {
+ restoreCorners();
+ return true;
+ }
return false;
}
+
+ private void restoreCorners() {
+ Resources res = null;
+ float density = Resources.getSystem().getDisplayMetrics().density;
+ Context ctx = getContext();
+ try {
+ res = ctx.getPackageManager().getResourcesForApplication("com.android.systemui");
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
+ }
+
+ int resourceIdRadius = (int) ctx.getResources().getDimension(com.android.internal.R.dimen.rounded_corner_radius);
+ //int resourceIdPadding = res.getIdentifier("com.android.systemui:dimen/rounded_corner_content_padding", null, null);
+ mCornerRadius.setValue((int) (resourceIdRadius / density));
+ //mContentPadding.setValue((int) (res.getDimension(resourceIdPadding) / density));
+ }
@Override
public int getMetricsCategory() {