feat: One-shot full charge charge

This commit is contained in:
AlbertGG
2024-12-14 22:07:46 +00:00
committed by Luke Jones
parent e7c4619ee9
commit 72ff1ab3ab
5 changed files with 81 additions and 3 deletions

View File

@@ -22,6 +22,8 @@ pub struct CliStart {
pub prev_kbd_bright: bool,
#[options(meta = "", help = "Set your battery charge limit <20-100>")]
pub chg_limit: Option<u8>,
#[options(help = "Toggle one-shot battery charge to 100%")]
pub one_shot_chg: bool,
#[options(command)]
pub command: Option<CliCommand>,
}

View File

@@ -185,7 +185,8 @@ fn do_parsed(
&& parsed.kbd_bright.is_none()
&& parsed.chg_limit.is_none()
&& !parsed.next_kbd_bright
&& !parsed.prev_kbd_bright)
&& !parsed.prev_kbd_bright
&& !parsed.one_shot_chg)
|| parsed.help
{
println!("{}", CliStart::usage());
@@ -314,6 +315,11 @@ fn do_parsed(
proxy.set_charge_control_end_threshold(chg_limit)?;
}
if parsed.one_shot_chg {
let proxy = PlatformProxyBlocking::new(&conn)?;
proxy.one_shot_full_charge()?;
}
Ok(())
}