m3_lightmeter/lib/screens/settings/components/general/widget_settings_section_general.dart
Vadim e001c153fb
ML-11 Implement volume buttons actions (#86)
* [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
2023-07-09 13:39:33 +02:00

26 lines
1.1 KiB
Dart

import 'dart:io';
import 'package:flutter/material.dart';
import 'package:lightmeter/generated/l10n.dart';
import 'package:lightmeter/screens/settings/components/general/components/caffeine/provider_list_tile_caffeine.dart';
import 'package:lightmeter/screens/settings/components/general/components/haptics/provider_list_tile_haptics.dart';
import 'package:lightmeter/screens/settings/components/general/components/language/widget_list_tile_language.dart';
import 'package:lightmeter/screens/settings/components/general/components/volume_actions/provider_list_tile_volume_actions.dart';
import 'package:lightmeter/screens/settings/components/shared/settings_section/widget_settings_section.dart';
class GeneralSettingsSection extends StatelessWidget {
const GeneralSettingsSection({super.key});
@override
Widget build(BuildContext context) {
return SettingsSection(
title: S.of(context).general,
children: [
const CaffeineListTileProvider(),
const HapticsListTileProvider(),
if (Platform.isAndroid) const VolumeActionsListTileProvider(),
const LanguageListTile(),
],
);
}
}