diff --git a/app/src/main/java/com/grarak/kerneladiutor/fragments/kernel/CPUHotplugFragment.java b/app/src/main/java/com/grarak/kerneladiutor/fragments/kernel/CPUHotplugFragment.java index fb223a1d8..f021f28f9 100755 --- a/app/src/main/java/com/grarak/kerneladiutor/fragments/kernel/CPUHotplugFragment.java +++ b/app/src/main/java/com/grarak/kerneladiutor/fragments/kernel/CPUHotplugFragment.java @@ -24,6 +24,7 @@ import com.grarak.kerneladiutor.R; import com.grarak.kerneladiutor.fragments.ApplyOnBootFragment; import com.grarak.kerneladiutor.fragments.RecyclerViewFragment; +import com.grarak.kerneladiutor.utils.Prefs; import com.grarak.kerneladiutor.utils.Utils; import com.grarak.kerneladiutor.utils.kernel.cpu.CPUFreq; import com.grarak.kerneladiutor.utils.kernel.cpuhotplug.AlucardHotplug; @@ -1525,15 +1526,20 @@ public void onStop(SeekBarView seekBarView, int position, String value) { alucardHotplug.addItem(cpuUpRate); } - DescriptionView tunables = new DescriptionView(); + if (!(Prefs.getBoolean("advanced_tunables", false, getActivity()))) + Prefs.saveBoolean("advanced_tunables", false, getActivity()); + + final SwitchView tunables = new SwitchView(); tunables.setTitle(getString(R.string.adv_hotplug_tunables)); tunables.setSummary(getString(R.string.adv_hotplug_tunables_summary)); + tunables.setChecked(Prefs.getBoolean("advanced_tunables", false, getActivity())); + alucardHotplug.addItem(tunables); - for (int i = 0; i < AlucardHotplug.size(); i++) { + for (int i = 0; i < AlucardHotplug.size(); i++) { if (AlucardHotplug.exists(i)) { - GenericSelectView advancedtunables = new GenericSelectView(); + final GenericSelectView advancedtunables = new GenericSelectView(); advancedtunables.setSummary(AlucardHotplug.getName(i)); advancedtunables.setValue(AlucardHotplug.getValue(i)); advancedtunables.setValueRaw(advancedtunables.getValue()); @@ -1546,9 +1552,31 @@ public void onGenericValueSelected(GenericSelectView genericSelectView, String v genericSelectView.setValue(value); } }); - alucardHotplug.addItem(advancedtunables); + class tunablesManager { + public void showadvancedtunables (boolean enable) { + if (enable == true) { + alucardHotplug.addItem(advancedtunables); + } else { + alucardHotplug.removeItem(advancedtunables); + } } - } + } + + final tunablesManager manager = new tunablesManager(); + if (Prefs.getBoolean("advanced_tunables", false, getActivity()) == true) { + manager.showadvancedtunables(true); + } else { + manager.showadvancedtunables(false); + } + tunables.addOnSwitchListener(new SwitchView.OnSwitchListener() { + @Override + public void onChanged(SwitchView switchview, boolean isChecked) { + Prefs.saveBoolean("advanced_tunables", isChecked, getActivity()); + manager.showadvancedtunables(isChecked); + } + }); + } + } if (alucardHotplug.size() > 0) { items.add(alucardHotplug); diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 14dda2c00..e09995e28 100755 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -303,7 +303,7 @@ Quad-Core mode Dual-Core mode Advanced Hotplug Tunables - Warning! This is only for advanced users.\nPlease do not touch unless you\'re an expert. + Warning! This is only for advanced users. Please do not touch unless you\'re an expert. Core Control Qualcomm\'s hotplugging solution. Sorry you can\'t turn it off. #blameqcom H-Cube