mirror of
https://github.com/vodemn/m3_lightmeter.git
synced 2024-11-24 00:10:47 +00:00
e001c153fb
* [Android] wip * implemented `VolumeEventsService` * implemented `VolumeKeysListener` (wip) * Added screenshots links * [Android] nullable typo * implemented `VolumeKeysNotifier` * deinitialize camera when on Settings screen * disable volume handling when on Settings screen * used "platform" package to mock `isAndroid` * init/deinit camera on settings open * allow volume action override only on metering screen * lints * cleanup * await dispose * tests * reduced `SwitchListTile.contentPadding` * fixed tests * removed `VolumeAction.zoom` * added social preview * typo * fixed `CameraContainerBloc` tests * added `Stream.empty()` tests
17 lines
942 B
Dart
17 lines
942 B
Dart
import 'package:flutter_bloc/flutter_bloc.dart';
|
|
|
|
import 'package:lightmeter/screens/metering/communication/event_communication_metering.dart';
|
|
import 'package:lightmeter/screens/metering/communication/state_communication_metering.dart';
|
|
|
|
class MeteringCommunicationBloc
|
|
extends Bloc<MeteringCommunicationEvent, MeteringCommunicationState> {
|
|
MeteringCommunicationBloc() : super(const InitState()) {
|
|
// `MeasureState` is not const, so that `Bloc` treats each state as new and updates state stream
|
|
// ignore: prefer_const_constructors
|
|
on<MeasureEvent>((_, emit) => emit(MeasureState()));
|
|
on<MeteringInProgressEvent>((event, emit) => emit(MeteringInProgressState(event.ev100)));
|
|
on<MeteringEndedEvent>((event, emit) => emit(MeteringEndedState(event.ev100)));
|
|
on<SettingsOpenedEvent>((_, emit) => emit(const SettingsOpenedState()));
|
|
on<SettingsClosedEvent>((_, emit) => emit(const SettingsClosedState()));
|
|
}
|
|
}
|