diff --git a/lib/providers.dart b/lib/providers.dart index ff957ae..b4590f8 100644 --- a/lib/providers.dart +++ b/lib/providers.dart @@ -7,7 +7,7 @@ import 'package:lightmeter/data/shared_prefs_service.dart'; import 'package:lightmeter/data/volume_events_service.dart'; import 'package:lightmeter/environment.dart'; import 'package:lightmeter/providers/equipment_profile_provider.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:lightmeter/providers/user_preferences_provider.dart'; import 'package:platform/platform.dart'; import 'package:shared_preferences/shared_preferences.dart'; @@ -27,7 +27,7 @@ class LightmeterProviders extends StatelessWidget { ]), builder: (_, snapshot) { if (snapshot.data != null) { - return ServiceProvider( + return ServicesProvider( caffeineService: const CaffeineService(), environment: env.copyWith(hasLightSensor: snapshot.data![1] as bool), hapticsService: const HapticsService(), diff --git a/lib/providers/equipment_profile_provider.dart b/lib/providers/equipment_profile_provider.dart index 747dcf0..0f1a1c9 100644 --- a/lib/providers/equipment_profile_provider.dart +++ b/lib/providers/equipment_profile_provider.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:lightmeter/utils/inherited_generics.dart'; import 'package:m3_lightmeter_resources/m3_lightmeter_resources.dart'; import 'package:uuid/uuid.dart'; @@ -35,7 +35,7 @@ class EquipmentProfileProviderState extends State { EquipmentProfile get _selectedProfile => _customProfiles.firstWhere( (e) => e.id == _selectedId, orElse: () { - ServiceProvider.userPreferencesServiceOf(context).selectedEquipmentProfileId = + ServicesProvider.userPreferencesServiceOf(context).selectedEquipmentProfileId = _defaultProfile.id; return _defaultProfile; }, @@ -44,8 +44,8 @@ class EquipmentProfileProviderState extends State { @override void initState() { super.initState(); - _selectedId = ServiceProvider.userPreferencesServiceOf(context).selectedEquipmentProfileId; - _customProfiles = ServiceProvider.userPreferencesServiceOf(context).equipmentProfiles; + _selectedId = ServicesProvider.userPreferencesServiceOf(context).selectedEquipmentProfileId; + _customProfiles = ServicesProvider.userPreferencesServiceOf(context).equipmentProfiles; } @override @@ -63,7 +63,7 @@ class EquipmentProfileProviderState extends State { setState(() { _selectedId = data.id; }); - ServiceProvider.userPreferencesServiceOf(context).selectedEquipmentProfileId = + ServicesProvider.userPreferencesServiceOf(context).selectedEquipmentProfileId = _selectedProfile.id; } @@ -96,7 +96,7 @@ class EquipmentProfileProviderState extends State { } void _refreshSavedProfiles() { - ServiceProvider.userPreferencesServiceOf(context).equipmentProfiles = _customProfiles; + ServicesProvider.userPreferencesServiceOf(context).equipmentProfiles = _customProfiles; setState(() {}); } } diff --git a/lib/providers/service_provider.dart b/lib/providers/services_provider.dart similarity index 69% rename from lib/providers/service_provider.dart rename to lib/providers/services_provider.dart index 6dc9bdd..c394482 100644 --- a/lib/providers/service_provider.dart +++ b/lib/providers/services_provider.dart @@ -7,7 +7,7 @@ import 'package:lightmeter/data/shared_prefs_service.dart'; import 'package:lightmeter/data/volume_events_service.dart'; import 'package:lightmeter/environment.dart'; -class ServiceProvider extends InheritedWidget { +class ServicesProvider extends InheritedWidget { final CaffeineService caffeineService; final Environment environment; final HapticsService hapticsService; @@ -16,7 +16,7 @@ class ServiceProvider extends InheritedWidget { final UserPreferencesService userPreferencesService; final VolumeEventsService volumeEventsService; - const ServiceProvider({ + const ServicesProvider({ required this.caffeineService, required this.environment, required this.hapticsService, @@ -28,37 +28,37 @@ class ServiceProvider extends InheritedWidget { }); static CaffeineService caffeineServiceOf(BuildContext context) { - return ServiceProvider._of(context).caffeineService; + return ServicesProvider._of(context).caffeineService; } static Environment environmentOf(BuildContext context) { - return ServiceProvider._of(context).environment; + return ServicesProvider._of(context).environment; } static HapticsService hapticsServiceOf(BuildContext context) { - return ServiceProvider._of(context).hapticsService; + return ServicesProvider._of(context).hapticsService; } static LightSensorService lightSensorServiceOf(BuildContext context) { - return ServiceProvider._of(context).lightSensorService; + return ServicesProvider._of(context).lightSensorService; } static PermissionsService permissionsServiceOf(BuildContext context) { - return ServiceProvider._of(context).permissionsService; + return ServicesProvider._of(context).permissionsService; } static UserPreferencesService userPreferencesServiceOf(BuildContext context) { - return ServiceProvider._of(context).userPreferencesService; + return ServicesProvider._of(context).userPreferencesService; } static VolumeEventsService volumeEventsServiceOf(BuildContext context) { - return ServiceProvider._of(context).volumeEventsService; + return ServicesProvider._of(context).volumeEventsService; } - static ServiceProvider _of(BuildContext context) { - return context.findAncestorWidgetOfExactType()!; + static ServicesProvider _of(BuildContext context) { + return context.findAncestorWidgetOfExactType()!; } @override - bool updateShouldNotify(ServiceProvider oldWidget) => false; + bool updateShouldNotify(ServicesProvider oldWidget) => false; } diff --git a/lib/providers/user_preferences_provider.dart b/lib/providers/user_preferences_provider.dart index 65f54a8..41fd4bf 100644 --- a/lib/providers/user_preferences_provider.dart +++ b/lib/providers/user_preferences_provider.dart @@ -8,7 +8,7 @@ import 'package:lightmeter/data/models/supported_locale.dart'; import 'package:lightmeter/data/models/theme_type.dart'; import 'package:lightmeter/data/shared_prefs_service.dart'; import 'package:lightmeter/generated/l10n.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:m3_lightmeter_resources/m3_lightmeter_resources.dart'; class UserPreferencesProvider extends StatefulWidget { @@ -71,12 +71,12 @@ class UserPreferencesProvider extends StatefulWidget { class _UserPreferencesProviderState extends State with WidgetsBindingObserver { UserPreferencesService get userPreferencesService => - ServiceProvider.userPreferencesServiceOf(context); + ServicesProvider.userPreferencesServiceOf(context); late bool dynamicColor = userPreferencesService.dynamicColor; late EvSourceType evSourceType; late final MeteringScreenLayoutConfig meteringScreenLayout = - ServiceProvider.userPreferencesServiceOf(context).meteringScreenLayout; + ServicesProvider.userPreferencesServiceOf(context).meteringScreenLayout; late Color primaryColor = userPreferencesService.primaryColor; late StopType stopType = userPreferencesService.stopType; late SupportedLocale locale = userPreferencesService.locale; @@ -85,9 +85,9 @@ class _UserPreferencesProviderState extends State @override void initState() { super.initState(); - evSourceType = ServiceProvider.userPreferencesServiceOf(context).evSourceType; + evSourceType = ServicesProvider.userPreferencesServiceOf(context).evSourceType; evSourceType = evSourceType == EvSourceType.sensor && - !ServiceProvider.environmentOf(context).hasLightSensor + !ServicesProvider.environmentOf(context).hasLightSensor ? EvSourceType.camera : evSourceType; WidgetsBinding.instance.addObserver(this); @@ -145,11 +145,11 @@ class _UserPreferencesProviderState extends State setState(() { dynamicColor = enable; }); - ServiceProvider.userPreferencesServiceOf(context).dynamicColor = enable; + ServicesProvider.userPreferencesServiceOf(context).dynamicColor = enable; } void toggleEvSourceType() { - if (!ServiceProvider.environmentOf(context).hasLightSensor) { + if (!ServicesProvider.environmentOf(context).hasLightSensor) { return; } setState(() { @@ -160,7 +160,7 @@ class _UserPreferencesProviderState extends State evSourceType = EvSourceType.camera; } }); - ServiceProvider.userPreferencesServiceOf(context).evSourceType = evSourceType; + ServicesProvider.userPreferencesServiceOf(context).evSourceType = evSourceType; } void setLocale(SupportedLocale locale) { @@ -168,7 +168,7 @@ class _UserPreferencesProviderState extends State setState(() { this.locale = locale; }); - ServiceProvider.userPreferencesServiceOf(context).locale = locale; + ServicesProvider.userPreferencesServiceOf(context).locale = locale; }); } @@ -182,28 +182,28 @@ class _UserPreferencesProviderState extends State ); }); }); - ServiceProvider.userPreferencesServiceOf(context).meteringScreenLayout = meteringScreenLayout; + ServicesProvider.userPreferencesServiceOf(context).meteringScreenLayout = meteringScreenLayout; } void setPrimaryColor(Color primaryColor) { setState(() { this.primaryColor = primaryColor; }); - ServiceProvider.userPreferencesServiceOf(context).primaryColor = primaryColor; + ServicesProvider.userPreferencesServiceOf(context).primaryColor = primaryColor; } void setStopType(StopType stopType) { setState(() { this.stopType = stopType; }); - ServiceProvider.userPreferencesServiceOf(context).stopType = stopType; + ServicesProvider.userPreferencesServiceOf(context).stopType = stopType; } void setThemeType(ThemeType themeType) { setState(() { this.themeType = themeType; }); - ServiceProvider.userPreferencesServiceOf(context).themeType = themeType; + ServicesProvider.userPreferencesServiceOf(context).themeType = themeType; } Brightness get _themeBrightness { diff --git a/lib/screens/metering/flow_metering.dart b/lib/screens/metering/flow_metering.dart index 24ca72c..ca5874e 100644 --- a/lib/screens/metering/flow_metering.dart +++ b/lib/screens/metering/flow_metering.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:lightmeter/interactors/metering_interactor.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:lightmeter/screens/metering/bloc_metering.dart'; import 'package:lightmeter/screens/metering/communication/bloc_communication_metering.dart'; import 'package:lightmeter/screens/metering/components/shared/volume_keys_notifier/notifier_volume_keys.dart'; @@ -20,15 +20,15 @@ class _MeteringFlowState extends State { Widget build(BuildContext context) { return InheritedWidgetBase( data: MeteringInteractor( - ServiceProvider.userPreferencesServiceOf(context), - ServiceProvider.caffeineServiceOf(context), - ServiceProvider.hapticsServiceOf(context), - ServiceProvider.permissionsServiceOf(context), - ServiceProvider.lightSensorServiceOf(context), - ServiceProvider.volumeEventsServiceOf(context), + ServicesProvider.userPreferencesServiceOf(context), + ServicesProvider.caffeineServiceOf(context), + ServicesProvider.hapticsServiceOf(context), + ServicesProvider.permissionsServiceOf(context), + ServicesProvider.lightSensorServiceOf(context), + ServicesProvider.volumeEventsServiceOf(context), )..initialize(), child: InheritedWidgetBase( - data: VolumeKeysNotifier(ServiceProvider.volumeEventsServiceOf(context)), + data: VolumeKeysNotifier(ServicesProvider.volumeEventsServiceOf(context)), child: MultiBlocProvider( providers: [ BlocProvider(create: (_) => MeteringCommunicationBloc()), diff --git a/lib/screens/metering/screen_metering.dart b/lib/screens/metering/screen_metering.dart index ae7ac13..64f5c18 100644 --- a/lib/screens/metering/screen_metering.dart +++ b/lib/screens/metering/screen_metering.dart @@ -6,7 +6,7 @@ import 'package:lightmeter/data/models/ev_source_type.dart'; import 'package:lightmeter/data/models/exposure_pair.dart'; import 'package:lightmeter/data/models/film.dart'; import 'package:lightmeter/data/models/metering_screen_layout_config.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:lightmeter/providers/user_preferences_provider.dart'; import 'package:lightmeter/screens/metering/bloc_metering.dart'; import 'package:lightmeter/screens/metering/components/bottom_controls/provider_bottom_controls.dart'; @@ -45,7 +45,7 @@ class MeteringScreen extends StatelessWidget { builder: (context, state) => MeteringBottomControlsProvider( ev: state is MeteringDataState ? state.ev : null, isMetering: state.isMetering, - onSwitchEvSourceType: ServiceProvider.environmentOf(context).hasLightSensor + onSwitchEvSourceType: ServicesProvider.environmentOf(context).hasLightSensor ? UserPreferencesProvider.of(context).toggleEvSourceType : null, onMeasure: () => context.read().add(const MeasureEvent()), diff --git a/lib/screens/settings/components/about/components/report_issue/widget_list_tile_report_issue.dart b/lib/screens/settings/components/about/components/report_issue/widget_list_tile_report_issue.dart index 4af82da..8500f7d 100644 --- a/lib/screens/settings/components/about/components/report_issue/widget_list_tile_report_issue.dart +++ b/lib/screens/settings/components/about/components/report_issue/widget_list_tile_report_issue.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:lightmeter/generated/l10n.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:url_launcher/url_launcher.dart'; class ReportIssueListTile extends StatelessWidget { @@ -13,7 +13,7 @@ class ReportIssueListTile extends StatelessWidget { title: Text(S.of(context).reportIssue), onTap: () { launchUrl( - Uri.parse(ServiceProvider.environmentOf(context).issuesReportUrl), + Uri.parse(ServicesProvider.environmentOf(context).issuesReportUrl), mode: LaunchMode.externalApplication, ); }, diff --git a/lib/screens/settings/components/about/components/source_code/widget_list_tile_source_code.dart b/lib/screens/settings/components/about/components/source_code/widget_list_tile_source_code.dart index b23cf9a..6d3c546 100644 --- a/lib/screens/settings/components/about/components/source_code/widget_list_tile_source_code.dart +++ b/lib/screens/settings/components/about/components/source_code/widget_list_tile_source_code.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:lightmeter/generated/l10n.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:url_launcher/url_launcher.dart'; class SourceCodeListTile extends StatelessWidget { @@ -13,7 +13,7 @@ class SourceCodeListTile extends StatelessWidget { title: Text(S.of(context).sourceCode), onTap: () { launchUrl( - Uri.parse(ServiceProvider.environmentOf(context).sourceCodeUrl), + Uri.parse(ServicesProvider.environmentOf(context).sourceCodeUrl), mode: LaunchMode.externalApplication, ); }, diff --git a/lib/screens/settings/components/about/components/write_email/widget_list_tile_write_email.dart b/lib/screens/settings/components/about/components/write_email/widget_list_tile_write_email.dart index c2236c3..a5cc9eb 100644 --- a/lib/screens/settings/components/about/components/write_email/widget_list_tile_write_email.dart +++ b/lib/screens/settings/components/about/components/write_email/widget_list_tile_write_email.dart @@ -1,7 +1,7 @@ import 'package:clipboard/clipboard.dart'; import 'package:flutter/material.dart'; import 'package:lightmeter/generated/l10n.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:url_launcher/url_launcher.dart'; class WriteEmailListTile extends StatelessWidget { @@ -13,7 +13,7 @@ class WriteEmailListTile extends StatelessWidget { leading: const Icon(Icons.email), title: Text(S.of(context).writeEmail), onTap: () { - final email = ServiceProvider.environmentOf(context).contactEmail; + final email = ServicesProvider.environmentOf(context).contactEmail; final mailToUrl = Uri.parse('mailto:$email?subject=M3 Lightmeter'); canLaunchUrl(mailToUrl).then((canLaunch) { if (canLaunch) { diff --git a/lib/screens/settings/components/metering/components/calibration/components/calibration_dialog/widget_dialog_calibration.dart b/lib/screens/settings/components/metering/components/calibration/components/calibration_dialog/widget_dialog_calibration.dart index 7462dda..be29f79 100644 --- a/lib/screens/settings/components/metering/components/calibration/components/calibration_dialog/widget_dialog_calibration.dart +++ b/lib/screens/settings/components/metering/components/calibration/components/calibration_dialog/widget_dialog_calibration.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:lightmeter/generated/l10n.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:lightmeter/res/dimens.dart'; import 'package:lightmeter/screens/settings/components/metering/components/calibration/components/calibration_dialog/bloc_dialog_calibration.dart'; import 'package:lightmeter/screens/settings/components/metering/components/calibration/components/calibration_dialog/event_dialog_calibration.dart'; @@ -14,7 +14,7 @@ class CalibrationDialog extends StatelessWidget { @override Widget build(BuildContext context) { - final bool hasLightSensor = ServiceProvider.environmentOf(context).hasLightSensor; + final bool hasLightSensor = ServicesProvider.environmentOf(context).hasLightSensor; return AlertDialog( icon: const Icon(Icons.settings_brightness), titlePadding: Dimens.dialogIconTitlePadding, diff --git a/lib/screens/settings/flow_settings.dart b/lib/screens/settings/flow_settings.dart index 05ef305..eeeed10 100644 --- a/lib/screens/settings/flow_settings.dart +++ b/lib/screens/settings/flow_settings.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:lightmeter/interactors/settings_interactor.dart'; -import 'package:lightmeter/providers/service_provider.dart'; +import 'package:lightmeter/providers/services_provider.dart'; import 'package:lightmeter/screens/settings/screen_settings.dart'; import 'package:lightmeter/utils/inherited_generics.dart'; @@ -11,10 +11,10 @@ class SettingsFlow extends StatelessWidget { Widget build(BuildContext context) { return InheritedWidgetBase( data: SettingsInteractor( - ServiceProvider.userPreferencesServiceOf(context), - ServiceProvider.caffeineServiceOf(context), - ServiceProvider.hapticsServiceOf(context), - ServiceProvider.volumeEventsServiceOf(context), + ServicesProvider.userPreferencesServiceOf(context), + ServicesProvider.caffeineServiceOf(context), + ServicesProvider.hapticsServiceOf(context), + ServicesProvider.volumeEventsServiceOf(context), ), child: const SettingsScreen(), );