Whether a battery device is present in the system.
Whether the battery is fully charged.
Whether the battery is currently charging.
Current energy level in Wh.
Full energy capacity in Wh.
Current energy discharge/charge rate in W.
Symbolic icon name reflecting current battery level and charge state.
Check if service has been disposed
Current battery charge percentage (0-100).
Estimated seconds remaining until full or empty.
Creates a Binding for a property on this service.
The property to bind
A Binding that can be used in widget constructors
Notifies listeners that a property changed and emits the 'changed' signal.
The property name that changed
Connects a callback to a signal on this service.
The signal name (defaults to 'changed')
The callback to invoke when the signal is emitted
The signal connection ID
Creates an incremental list binding that reuses existing widgets.
Instead of recreating all widgets on every update, this method caches widgets by a key function and only creates new widgets for new items, destroying widgets for removed items.
A Binding that produces an array of widgets
ProtecteddisconnectClean up all tracked signal connections Call this in service-specific dispose implementations
Dispose of service resources Override in subclasses to add specific cleanup
Emits a signal, warning if the signal was not registered via Service.register.
The warning is cheap (a Set lookup per emit) and helps catch typos
and missing signal declarations that silently break .bind().
ProtectedretryProtectedtrackTrack a signal connection for automatic cleanup
The object the signal is connected to (defaults to this)
The signal connection ID
Track a signal connection for automatic cleanup
The signal connection ID
Updates a property value and emits a notify signal if the value changed.
Performs a deep equality check via JSON serialization to avoid unnecessary notifications.
The property name in kebab-case
The new value
StaticimportStaticpspecStaticregister
Battery Service
Provides battery status information via UPower DBus interface.
Lifecycle:
Fires
changed - Emitted when any battery property changes