added the alert_command option
running a shell command before the battery is completely discharged
This commit is contained in:
parent
e85425c8c6
commit
f404874767
@ -5,6 +5,7 @@ import configparser
|
||||
from i3pystatus import IntervalModule, formatp
|
||||
from i3pystatus.core.util import lchop, TimeWrapper, make_bar
|
||||
from i3pystatus.core.desktop import DesktopNotification
|
||||
from i3pystatus.core.command import run_through_shell
|
||||
|
||||
|
||||
class UEventParser(configparser.ConfigParser):
|
||||
@ -138,6 +139,7 @@ class BatteryChecker(IntervalModule):
|
||||
"format",
|
||||
("not_present_text", "Text displayed if the battery is not present. No formatters are available"),
|
||||
("alert", "Display a libnotify-notification on low battery"),
|
||||
("alert_command", "Runs a shell command of low-battery emergency"),
|
||||
"alert_percentage",
|
||||
("alert_format_title", "The title of the notification, all formatters can be used"),
|
||||
("alert_format_body", "The body text of the notification, all formatters can be used"),
|
||||
@ -165,6 +167,7 @@ class BatteryChecker(IntervalModule):
|
||||
not_present_text = "Battery {battery_ident} not present"
|
||||
|
||||
alert = False
|
||||
alert_command = ""
|
||||
alert_percentage = 10
|
||||
alert_format_title = "Low battery"
|
||||
alert_format_body = "Battery {battery_ident} has only {percentage:.2f}% ({remaining:%E%hh:%Mm}) remaining!"
|
||||
@ -292,6 +295,8 @@ class BatteryChecker(IntervalModule):
|
||||
else:
|
||||
fdict["status"] = "FULL"
|
||||
color = self.full_color
|
||||
if self.alert_command and fdict["status"] == "DIS" and fdict["percentage"] <= 1:
|
||||
run_through_shell(self.alert_command, enable_shell=True)
|
||||
|
||||
if self.alert and fdict["status"] == "DIS" and fdict["percentage"] <= self.alert_percentage:
|
||||
DesktopNotification(
|
||||
|
Loading…
Reference in New Issue
Block a user