Skip to content

Commit

Permalink
Battery: adding Advanced Control Interface
Browse files Browse the repository at this point in the history
for yank555.lu's Fast Charge

Signed-off-by: sunilpaulmathew <sunil.kde@gmail.com>
  • Loading branch information
sunilpaulmathew committed Mar 20, 2018
1 parent 53e8f9f commit 1cc3adc
Show file tree
Hide file tree
Showing 3 changed files with 398 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,12 @@
import com.grarak.kerneladiutor.fragments.ApplyOnBootFragment;
import com.grarak.kerneladiutor.fragments.DescriptionFragment;
import com.grarak.kerneladiutor.fragments.RecyclerViewFragment;
import com.grarak.kerneladiutor.utils.Utils;
import com.grarak.kerneladiutor.utils.kernel.battery.Battery;
import com.grarak.kerneladiutor.views.recyclerview.CardView;
import com.grarak.kerneladiutor.views.recyclerview.RecyclerViewItem;
import com.grarak.kerneladiutor.views.recyclerview.SeekBarView;
import com.grarak.kerneladiutor.views.recyclerview.SelectView;
import com.grarak.kerneladiutor.views.recyclerview.StatsView;
import com.grarak.kerneladiutor.views.recyclerview.SwitchView;

Expand Down Expand Up @@ -63,13 +65,32 @@ protected void init() {
protected void addItems(List<RecyclerViewItem> items) {
levelInit(items);
voltageInit(items);
if (mBattery.hasForceFastCharge()) {
forceFastChargeInit(items);
}
fastChargeControlInit(items);
chargeRateInit(items);
if (mBattery.hasBlx()) {
blxInit(items);
}
chargeRateInit(items);
if (mBattery.hasForceFastCharge()) {
ForceFastChargeInit(items);
}
if (mBattery.hasFastChargeControlAC()) {
FastChargeControlACinit(items);
}
if (mBattery.hasFastChargeControlUSB()) {
FastChargeControlUSBinit(items);
}
if (mBattery.hasFastChargeControlWIRELESS()) {
FastChargeControlWirelessinit(items);
}
if (mBattery.hasMtpForceFastCharge()) {
MtpFastChargeInit(items);
}
if (mBattery.hasScreenCurrentLimit()) {
ScreenCurrentLimitInit(items);
}
if (mBattery.hasChargeCustomAC()) {
WarningChargingInit(items);
}
}

@Override
Expand Down Expand Up @@ -97,19 +118,195 @@ private void voltageInit(List<RecyclerViewItem> items) {
items.add(mVoltage);
}

private void forceFastChargeInit(List<RecyclerViewItem> items) {
SwitchView forceFastCharge = new SwitchView();
forceFastCharge.setTitle(getString(R.string.usb_fast_charge));
forceFastCharge.setSummary(getString(R.string.usb_fast_charge_summary));
forceFastCharge.setChecked(mBattery.isForceFastChargeEnabled());
forceFastCharge.addOnSwitchListener(new SwitchView.OnSwitchListener() {
private void fastChargeControlInit(List<RecyclerViewItem> items) {
CardView FastChargeCard = new CardView(getActivity());
FastChargeCard.setTitle(getString(R.string.charge_levels));

items.add(FastChargeCard);
}

private void ForceFastChargeInit(List<RecyclerViewItem> items) {
SelectView forceFastCharge = new SelectView();
forceFastCharge.setTitle(getString(R.string.fast_charge));
forceFastCharge.setSummary(getString(R.string.fast_charge_summary));
forceFastCharge.setItems(mBattery.enableForceFastCharge(getActivity()));
forceFastCharge.setItem(mBattery.getForceFastCharge());
forceFastCharge.setOnItemSelected(new SelectView.OnItemSelected() {
@Override
public void onItemSelected(SelectView selectView, int position, String item) {
mBattery.setForceFastCharge(position, getActivity());
}
});

items.add(forceFastCharge);
}

private void FastChargeControlACinit(List<RecyclerViewItem> items) {
SelectView ACLevelCard = new SelectView();
ACLevelCard.setTitle(getString(R.string.charge_level_ac));
ACLevelCard.setSummary(getString(R.string.charge_level_ac_summary));
ACLevelCard.setItems(mBattery.getFastChargeControlAC());
ACLevelCard.setItem(mBattery.getFastChargeCustomAC());
ACLevelCard.setOnItemSelected(new SelectView.OnItemSelected() {
@Override
public void onItemSelected(SelectView selectView, int position, String item) {
mBattery.setFastChargeControlAC(item, getActivity());
}
});
items.add(ACLevelCard);
}

private void FastChargeControlUSBinit(List<RecyclerViewItem> items) {
SelectView USBLevelCard = new SelectView();
USBLevelCard.setTitle(getString(R.string.charge_level_usb));
USBLevelCard.setSummary(getString(R.string.charge_level_usb_summary));
USBLevelCard.setItems(mBattery.getFastChargeControlUSB());
USBLevelCard.setItem(mBattery.getFastChargeCustomUSB());
USBLevelCard.setOnItemSelected(new SelectView.OnItemSelected() {
@Override
public void onItemSelected(SelectView selectView, int position, String item) {
mBattery.setFastChargeControlUSB(item, getActivity());
}
});
items.add(USBLevelCard);
}

private void FastChargeControlWirelessinit(List<RecyclerViewItem> items) {
SelectView WirelessLevelCard = new SelectView();
WirelessLevelCard.setTitle(getString(R.string.charge_level_wireless));
WirelessLevelCard.setSummary(getString(R.string.charge_level_wireless_summary));
WirelessLevelCard.setItems(mBattery.getFastChargeControlWIRELESS());
WirelessLevelCard.setItem(mBattery.getFastChargeCustomWIRELESS());
WirelessLevelCard.setOnItemSelected(new SelectView.OnItemSelected() {
@Override
public void onItemSelected(SelectView selectView, int position, String item) {
mBattery.setFastChargeControlWIRELESS(item, getActivity());
}
});
items.add(WirelessLevelCard);
}

private void MtpFastChargeInit(List<RecyclerViewItem> items) {
SwitchView MtpFastCharge = new SwitchView();
MtpFastCharge.setTitle(getString(R.string.mtp_fast_charge));
MtpFastCharge.setSummary(getString(R.string.mtp_fast_charge_summary));
MtpFastCharge.setChecked(mBattery.isMtpForceFastChargeEnabled());
MtpFastCharge.addOnSwitchListener(new SwitchView.OnSwitchListener() {
@Override
public void onChanged(SwitchView switchView, boolean isChecked) {
mBattery.enableForceFastCharge(isChecked, getActivity());
mBattery.enableMtpForceFastCharge(isChecked, getActivity());
}
});

items.add(forceFastCharge);
items.add(MtpFastCharge);
}

private void ScreenCurrentLimitInit(List<RecyclerViewItem> items) {
SwitchView ScreenLimit = new SwitchView();
ScreenLimit.setTitle(getString(R.string.screen_limit));
ScreenLimit.setSummary(getString(R.string.screen_limit_summary));
ScreenLimit.setChecked(mBattery.isScreenCurrentLimit());
ScreenLimit.addOnSwitchListener(new SwitchView.OnSwitchListener() {
@Override
public void onChanged(SwitchView switchView, boolean isChecked) {
mBattery.enableScreenCurrentLimit(isChecked, getActivity());
}
});

items.add(ScreenLimit);
}

private void WarningChargingInit(List<RecyclerViewItem> items) {
CardView WarningChargeCard = new CardView(getActivity());
WarningChargeCard.setTitle(getString(R.string.warning_charge));

if (mBattery.hasFailsafe()) {
SwitchView Failsafe = new SwitchView();
Failsafe.setTitle(getString(R.string.failsafe));
Failsafe.setSummary(getString(R.string.failsafe_summary));
Failsafe.setChecked(mBattery.isFailsafe());
Failsafe.addOnSwitchListener(new SwitchView.OnSwitchListener() {
@Override
public void onChanged(SwitchView switchView, boolean isChecked) {
mBattery.enableFailsafe(isChecked, getActivity());
}
});

WarningChargeCard.addItem(Failsafe);
}

if (mBattery.hasFastChargeCustomAC()) {
SeekBarView chargingCustomAC = new SeekBarView();
chargingCustomAC.setTitle(getString(R.string.charging_custom_ac));
chargingCustomAC.setSummary(getString(R.string.charging_current_ac_summary));
chargingCustomAC.setUnit(getString(R.string.ma));
chargingCustomAC.setMax(2200);
chargingCustomAC.setMin(100);
chargingCustomAC.setOffset(10);
chargingCustomAC.setProgress(mBattery.getChargeCustomAC() / 10 - 10 );
chargingCustomAC.setOnSeekBarListener(new SeekBarView.OnSeekBarListener() {
@Override
public void onMove(SeekBarView seekBarView, int position, String value) {
}

@Override
public void onStop(SeekBarView seekBarView, int position, String value) {
mBattery.setChargeControlAC((position + 10) * 10, getActivity());
}
});

WarningChargeCard.addItem(chargingCustomAC);
}

if (mBattery.hasFastChargeCustomUSB()) {
SeekBarView chargingCustomUSB = new SeekBarView();
chargingCustomUSB.setTitle(getString(R.string.charging_custom_usb));
chargingCustomUSB.setSummary(getString(R.string.charging_current_usb_summary));
chargingCustomUSB.setUnit(getString(R.string.ma));
chargingCustomUSB.setMax(1200);
chargingCustomUSB.setMin(100);
chargingCustomUSB.setOffset(10);
chargingCustomUSB.setProgress(mBattery.getChargeCustomUSB() / 10 - 10);
chargingCustomUSB.setOnSeekBarListener(new SeekBarView.OnSeekBarListener() {
@Override
public void onStop(SeekBarView seekBarView, int position, String value) {
mBattery.setChargeControlUSB((position + 10) * 10, getActivity());
}

@Override
public void onMove(SeekBarView seekBarView, int position, String value) {
}
});

WarningChargeCard.addItem(chargingCustomUSB);
}

if (mBattery.hasFastChargeCustomWireless()) {
SeekBarView chargingCustomWireless = new SeekBarView();
chargingCustomWireless.setTitle(getString(R.string.charging_custom_wireless));
chargingCustomWireless.setSummary(getString(R.string.charging_current_wireless_summary));
chargingCustomWireless.setUnit(getString(R.string.ma));
chargingCustomWireless.setMax(1400);
chargingCustomWireless.setMin(100);
chargingCustomWireless.setOffset(10);
chargingCustomWireless.setProgress(mBattery.getChargeCustomWireless() / 10 - 10 );
chargingCustomWireless.setOnSeekBarListener(new SeekBarView.OnSeekBarListener() {
@Override
public void onMove(SeekBarView seekBarView, int position, String value) {
}

@Override
public void onStop(SeekBarView seekBarView, int position, String value) {
mBattery.setChargeControlWireless((position + 10) * 10, getActivity());
}
});

WarningChargeCard.addItem(chargingCustomWireless);
}

if (WarningChargeCard.size() > 0) {
items.add(WarningChargeCard);
}
}

private void blxInit(List<RecyclerViewItem> items) {
Expand Down
Loading

0 comments on commit 1cc3adc

Please sign in to comment.