mirror of
https://github.com/Steve-Tech/YAFI.git
synced 2026-04-19 16:50:36 +00:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fa5442d5fd | ||
|
|
09f072a150 | ||
|
|
f2cf2c7923 | ||
|
|
35f9c766b9 |
3
.gitignore
vendored
3
.gitignore
vendored
@@ -175,3 +175,6 @@ cython_debug/
|
||||
|
||||
# Flatpak builder
|
||||
.flatpak-builder/
|
||||
|
||||
# Binary files
|
||||
*.bin
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
]
|
||||
},
|
||||
"build-commands": [
|
||||
"pip3 install --prefix=${FLATPAK_DEST} --no-cache-dir \"cros_ec_python>=0.0.2\""
|
||||
"pip3 install --prefix=${FLATPAK_DEST} --no-cache-dir \"cros_ec_python>=0.0.4\""
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
7
pyinstaller/winyafi.spec
Normal file → Executable file
7
pyinstaller/winyafi.spec
Normal file → Executable file
@@ -1,14 +1,14 @@
|
||||
# -*- mode: python ; coding: utf-8 -*-
|
||||
from PyInstaller.utils.hooks import collect_data_files
|
||||
|
||||
datas = []
|
||||
datas = [('LpcCrOSEC.bin', '.')]
|
||||
datas += collect_data_files('yafi')
|
||||
|
||||
|
||||
a = Analysis(
|
||||
['winyafi.py'],
|
||||
pathex=[],
|
||||
binaries=[('WinRing0x64.dll', '.')],
|
||||
binaries=[],
|
||||
datas=datas,
|
||||
hiddenimports=['cros_ec_python'],
|
||||
hookspath=[],
|
||||
@@ -16,7 +16,7 @@ a = Analysis(
|
||||
runtime_hooks=[],
|
||||
excludes=[],
|
||||
noarchive=False,
|
||||
optimize=0,
|
||||
optimize=2,
|
||||
)
|
||||
pyz = PYZ(a.pure)
|
||||
|
||||
@@ -39,5 +39,6 @@ exe = EXE(
|
||||
target_arch=None,
|
||||
codesign_identity=None,
|
||||
entitlements_file=None,
|
||||
icon=['yafi.ico'],
|
||||
uac_admin=True,
|
||||
)
|
||||
|
||||
BIN
pyinstaller/yafi.ico
Executable file
BIN
pyinstaller/yafi.ico
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 32 KiB |
@@ -1,6 +1,6 @@
|
||||
[project]
|
||||
name = "yafi"
|
||||
version = "0.2"
|
||||
version = "0.3"
|
||||
authors = [
|
||||
{ name="Steve-Tech" }
|
||||
]
|
||||
|
||||
@@ -31,8 +31,10 @@ class BatteryPage(Gtk.Box):
|
||||
|
||||
chg_limit_enable = Gtk.Template.Child()
|
||||
chg_limit = Gtk.Template.Child()
|
||||
chg_limit_label = Gtk.Template.Child()
|
||||
chg_limit_scale = Gtk.Template.Child()
|
||||
bat_limit = Gtk.Template.Child()
|
||||
bat_limit_label = Gtk.Template.Child()
|
||||
bat_limit_scale = Gtk.Template.Child()
|
||||
chg_limit_override = Gtk.Template.Child()
|
||||
chg_limit_override_btn = Gtk.Template.Child()
|
||||
@@ -56,7 +58,9 @@ class BatteryPage(Gtk.Box):
|
||||
self.chg_limit_enable.set_active(ec_limit_enabled)
|
||||
if ec_limit_enabled:
|
||||
self.chg_limit_scale.set_value(ec_limit[0])
|
||||
self.chg_limit_label.set_label(f"{ec_limit[0]}%")
|
||||
self.bat_limit_scale.set_value(ec_limit[1])
|
||||
self.bat_limit_label.set_label(f"{ec_limit[1]}%")
|
||||
self.chg_limit.set_sensitive(True)
|
||||
self.bat_limit.set_sensitive(True)
|
||||
self.chg_limit_override.set_sensitive(True)
|
||||
@@ -103,7 +107,7 @@ class BatteryPage(Gtk.Box):
|
||||
)
|
||||
except ec_exceptions.ECError as e:
|
||||
if e.ec_status == ec_exceptions.EcStatus.EC_RES_INVALID_COMMAND:
|
||||
app.no_support.append(ec_commands.framework_laptop.EC_CMD_CHARGE_LIMIT)
|
||||
app.no_support.append(ec_commands.framework_laptop.EC_CMD_CHARGE_LIMIT_CONTROL)
|
||||
self.chg_limit_enable.set_sensitive(False)
|
||||
else:
|
||||
raise e
|
||||
@@ -182,9 +186,24 @@ class BatteryPage(Gtk.Box):
|
||||
)
|
||||
|
||||
def _update_battery(self, app):
|
||||
if ec_commands.framework_laptop.EC_CMD_BATTERY_EXTENDER in app.no_support:
|
||||
return False
|
||||
success = False
|
||||
|
||||
# Charge Limiter
|
||||
if not ec_commands.framework_laptop.EC_CMD_CHARGE_LIMIT_CONTROL in app.no_support:
|
||||
try:
|
||||
ec_limit = ec_commands.framework_laptop.get_charge_limit(app.cros_ec)
|
||||
self.chg_limit_label.set_label(f"{ec_limit[0]}%")
|
||||
self.bat_limit_label.set_label(f"{ec_limit[1]}%")
|
||||
|
||||
success = True
|
||||
except ec_exceptions.ECError as e:
|
||||
if e.ec_status == ec_exceptions.EcStatus.EC_RES_INVALID_COMMAND:
|
||||
app.no_support.append(ec_commands.framework_laptop.EC_CMD_CHARGE_LIMIT_CONTROL)
|
||||
else:
|
||||
raise e
|
||||
|
||||
# Battery Extender
|
||||
if not ec_commands.framework_laptop.EC_CMD_BATTERY_EXTENDER in app.no_support:
|
||||
try:
|
||||
ec_extender = ec_commands.framework_laptop.get_battery_extender(
|
||||
app.cros_ec
|
||||
@@ -197,16 +216,17 @@ class BatteryPage(Gtk.Box):
|
||||
self.bat_ext_reset_time.set_subtitle(
|
||||
format_timedelta(ec_extender["reset_timedelta"])
|
||||
)
|
||||
|
||||
success = True
|
||||
except ec_exceptions.ECError as e:
|
||||
if e.ec_status == ec_exceptions.EcStatus.EC_RES_INVALID_COMMAND:
|
||||
app.no_support.append(
|
||||
ec_commands.framework_laptop.EC_CMD_BATTERY_EXTENDER
|
||||
)
|
||||
return False
|
||||
else:
|
||||
raise e
|
||||
|
||||
return app.current_page == 2
|
||||
return app.current_page == 2 and success
|
||||
|
||||
def format_timedelta(timedelta):
|
||||
days = f"{timedelta.days} days, " if timedelta.days else ""
|
||||
|
||||
@@ -121,7 +121,7 @@ class YafiApplication(Adw.Application):
|
||||
developers=["Stephen Horvath"],
|
||||
issue_url="https://github.com/Steve-Tech/YAFI/issues",
|
||||
license_type=Gtk.License.GPL_2_0,
|
||||
version="0.2",
|
||||
version="0.3",
|
||||
website="https://github.com/Steve-Tech/YAFI",
|
||||
)
|
||||
about.add_acknowledgement_section(None, ["Framework Computer Inc. https://frame.work/"])
|
||||
|
||||
@@ -29,6 +29,9 @@
|
||||
<property name="title">Charge Limit</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkLabel" id="chg_limit_label"/>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale" id="chg_limit_scale">
|
||||
<property name="adjustment">
|
||||
@@ -54,6 +57,9 @@
|
||||
<property name="title">Discharge Limit</property>
|
||||
<child>
|
||||
<object class="GtkBox">
|
||||
<child>
|
||||
<object class="GtkLabel" id="bat_limit_label"/>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkScale" id="bat_limit_scale">
|
||||
<property name="adjustment">
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
(4,3,"AdwActionRow",None,2,None,None,None,0,None,None),
|
||||
(4,4,"AdwActionRow","chg_limit",2,None,None,None,2,None,None),
|
||||
(4,5,"GtkBox",None,4,None,None,None,0,None,None),
|
||||
(4,6,"GtkScale","chg_limit_scale",5,None,None,None,0,None,None),
|
||||
(4,6,"GtkScale","chg_limit_scale",5,None,None,None,1,None,None),
|
||||
(4,7,"GtkAdjustment",None,6,None,None,None,0,None,None),
|
||||
(4,13,"AdwPreferencesGroup","bat_ext_group",2,None,None,None,5,None,None),
|
||||
(4,27,"AdwSpinRow","bat_ext_trigger",13,None,None,None,5,None,None),
|
||||
@@ -71,7 +71,7 @@
|
||||
(4,32,"AdwSwitchRow","bat_ext_enable",13,None,None,None,1,None,None),
|
||||
(4,33,"AdwActionRow","bat_limit",2,None,None,None,3,None,None),
|
||||
(4,34,"GtkBox",None,33,None,None,None,0,None,None),
|
||||
(4,35,"GtkScale","bat_limit_scale",34,None,None,None,0,None,None),
|
||||
(4,35,"GtkScale","bat_limit_scale",34,None,None,None,1,None,None),
|
||||
(4,36,"GtkAdjustment",None,35,None,None,None,0,None,None),
|
||||
(4,37,"AdwActionRow","chg_limit_override",2,None,None,None,4,None,None),
|
||||
(4,38,"GtkBox",None,37,None,None,None,0,None,None),
|
||||
@@ -79,6 +79,8 @@
|
||||
(4,40,"AdwSwitchRow","chg_limit_enable",2,None,None,None,1,None,None),
|
||||
(4,41,"AdwActionRow","bat_ext_trigger_time",13,None,None,None,3,None,None),
|
||||
(4,42,"AdwActionRow","bat_ext_reset_time",13,None,None,None,4,None,None),
|
||||
(4,43,"GtkLabel","chg_limit_label",5,None,None,None,0,None,None),
|
||||
(4,44,"GtkLabel","bat_limit_label",34,None,None,None,0,None,None),
|
||||
(5,1,"GtkBox","HardwarePage",None,None,None,None,0,None,None),
|
||||
(5,2,"GtkListBox",None,1,None,None,None,0,None,None),
|
||||
(5,3,"AdwActionRow",None,2,None,None,None,0,None,None),
|
||||
|
||||
Binary file not shown.
@@ -7,4 +7,8 @@
|
||||
<file preprocess="xml-stripblanks">ui/battery.ui</file>
|
||||
<file preprocess="xml-stripblanks">ui/hardware.ui</file>
|
||||
</gresource>
|
||||
<gresource prefix="/au/stevetech/yafi/icons/scalable/actions">
|
||||
<file alias="au.stevetech.yafi.svg" preprocess="xml-stripblanks">../data/icons/hicolor/scalable/apps/au.stevetech.yafi.svg</file>
|
||||
<file alias="au.stevetech.yafi-symbolic.svg" preprocess="xml-stripblanks">../data/icons/hicolor/symbolic/apps/au.stevetech.yafi-symbolic.svg</file>
|
||||
</gresource>
|
||||
</gresources>
|
||||
|
||||
Reference in New Issue
Block a user