ui: use Battery object in GUI
This commit is contained in:
parent
64d8cad81a
commit
9121169f91
|
@ -23,7 +23,6 @@ import gi
|
|||
|
||||
from gi.repository import GLib, Gtk
|
||||
from gi.repository.Gdk import ScrollDirection
|
||||
from logitech_receiver.status import KEYS as _K
|
||||
|
||||
import solaar.gtk as gtk
|
||||
|
||||
|
@ -198,8 +197,8 @@ try:
|
|||
def _update_tray_icon():
|
||||
if _picked_device and gtk.battery_icons_style != "solaar":
|
||||
_ignore, _ignore, name, device_status = _picked_device
|
||||
battery_level = device_status.get(_K.BATTERY_LEVEL)
|
||||
battery_charging = device_status.get(_K.BATTERY_CHARGING)
|
||||
battery_level = device_status.battery.level if device_status.battery is not None else None
|
||||
battery_charging = device_status.battery.charging() if device_status.battery is not None else None
|
||||
tray_icon_name = _icons.battery(battery_level, battery_charging)
|
||||
|
||||
description = "%s: %s" % (name, device_status.to_string())
|
||||
|
@ -253,8 +252,8 @@ except ImportError:
|
|||
|
||||
if _picked_device and gtk.battery_icons_style != "solaar":
|
||||
_ignore, _ignore, name, device_status = _picked_device
|
||||
battery_level = device_status.get(_K.BATTERY_LEVEL)
|
||||
battery_charging = device_status.get(_K.BATTERY_CHARGING)
|
||||
battery_level = device_status.battery.level if device_status.battery is not None else None
|
||||
battery_charging = device_status.battery.charging() if device_status.battery is not None else None
|
||||
tray_icon_name = _icons.battery(battery_level, battery_charging)
|
||||
else:
|
||||
# there may be a receiver, but no peripherals
|
||||
|
@ -331,7 +330,7 @@ def _pick_device_with_lowest_battery():
|
|||
for info in _devices_info:
|
||||
if info[1] is None: # is receiver
|
||||
continue
|
||||
level = info[-1].get(_K.BATTERY_LEVEL)
|
||||
level = info[-1].battery.level if info[-1].battery is not None else None
|
||||
# print ("checking %s -> %s", info, level)
|
||||
if level is not None and picked_level > level:
|
||||
picked = info
|
||||
|
@ -428,8 +427,8 @@ def _update_menu_item(index, device):
|
|||
menu_items = _menu.get_children()
|
||||
menu_item = menu_items[index]
|
||||
|
||||
level = device.status.get(_K.BATTERY_LEVEL)
|
||||
charging = device.status.get(_K.BATTERY_CHARGING)
|
||||
level = device.status.battery.level if device.status.battery is not None else None
|
||||
charging = device.status.battery.charging() if device.status.battery is not None else None
|
||||
icon_name = _icons.battery(level, charging)
|
||||
|
||||
menu_item.set_label((" " if 0 < device.number <= 6 else "") + device.name + ": " + device.status.to_string())
|
||||
|
|
|
@ -684,17 +684,17 @@ def _update_device_panel(device, panel, buttons, full=False):
|
|||
is_online = bool(device.online)
|
||||
panel.set_sensitive(is_online)
|
||||
|
||||
if device.status.get(_K.BATTERY_LEVEL) is None:
|
||||
if device.status.battery is None or device.status.battery.level is None:
|
||||
device.status.read_battery()
|
||||
|
||||
battery_level = device.status.get(_K.BATTERY_LEVEL)
|
||||
battery_voltage = device.status.get(_K.BATTERY_VOLTAGE)
|
||||
battery_level = device.status.battery.level if device.status.battery is not None else None
|
||||
battery_voltage = device.status.battery.voltage if device.status.battery is not None else None
|
||||
if battery_level is None and battery_voltage is None:
|
||||
panel._battery.set_visible(False)
|
||||
else:
|
||||
panel._battery.set_visible(True)
|
||||
battery_next_level = device.status.get(_K.BATTERY_NEXT_LEVEL)
|
||||
charging = device.status.get(_K.BATTERY_CHARGING)
|
||||
battery_next_level = device.status.battery.next_level
|
||||
charging = device.status.battery.charging() if device.status.battery is not None else None
|
||||
icon_name = _icons.battery(battery_level, charging)
|
||||
panel._battery._icon.set_from_icon_name(icon_name, _INFO_ICON_SIZE)
|
||||
panel._battery._icon.set_sensitive(True)
|
||||
|
@ -752,7 +752,7 @@ def _update_device_panel(device, panel, buttons, full=False):
|
|||
panel._secure.set_tooltip_text("")
|
||||
|
||||
if is_online:
|
||||
light_level = device.status.get(_K.LIGHT_LEVEL)
|
||||
light_level = device.status.battery.light_level if device.status.battery is not None else None
|
||||
if light_level is None:
|
||||
panel._lux.set_visible(False)
|
||||
else:
|
||||
|
@ -908,8 +908,8 @@ def update_device(device, item, selected_device_id, need_popup, full=False):
|
|||
is_online = bool(device.online)
|
||||
_model.set_value(item, _COLUMN.ACTIVE, is_online)
|
||||
|
||||
battery_level = device.status.get(_K.BATTERY_LEVEL)
|
||||
battery_voltage = device.status.get(_K.BATTERY_VOLTAGE)
|
||||
battery_level = device.status.battery.level if device.status.battery is not None else None
|
||||
battery_voltage = device.status.battery.voltage if device.status.battery is not None else None
|
||||
if battery_level is None:
|
||||
_model.set_value(item, _COLUMN.STATUS_TEXT, _CAN_SET_ROW_NONE)
|
||||
_model.set_value(item, _COLUMN.STATUS_ICON, _CAN_SET_ROW_NONE)
|
||||
|
@ -922,7 +922,7 @@ def update_device(device, item, selected_device_id, need_popup, full=False):
|
|||
status_text = "%(battery_percent)d%%" % {"battery_percent": battery_level}
|
||||
_model.set_value(item, _COLUMN.STATUS_TEXT, status_text)
|
||||
|
||||
charging = device.status.get(_K.BATTERY_CHARGING)
|
||||
charging = device.status.battery.charging() if device.status.battery is not None else None
|
||||
icon_name = _icons.battery(battery_level, charging)
|
||||
_model.set_value(item, _COLUMN.STATUS_ICON, icon_name)
|
||||
|
||||
|
|
Loading…
Reference in New Issue