powerStateStream property

Stream<PowerStateChangeEvent> get powerStateStream

Stream of power state changes.

Emitted when battery level changes significantly, charging state changes, or power save mode is toggled.

Implementation

static Stream<PowerStateChangeEvent> get powerStateStream {
  return events
      .where((event) => event.type == EventType.powerSaveChange)
      .map((event) {
    if (event.data is PowerStateChangeEvent) {
      return event.data as PowerStateChangeEvent;
    }
    // Create synthetic event from power save boolean
    final isPowerSave = event.data == true;
    return PowerStateChangeEvent(
      previous: PowerState.unknown,
      current: PowerState(
        batteryLevel: 50,
        isCharging: false,
        isPowerSaveMode: isPowerSave,
      ),
      changeType: PowerStateChangeType.powerSaveMode,
    );
  });
}