@@ -4,6 +4,7 @@ import 'package:camerawesome/camerawesome_plugin.dart';
44import 'package:camerawesome/pigeon.dart' ;
55import 'package:camerawesome/src/orchestrator/camera_context.dart' ;
66import 'package:flutter/material.dart' ;
7+ import 'package:flutter/services.dart' ;
78
89/// This is the builder for your camera interface
910/// Using the [state] you can do anything you need without having to think about the camera flow
@@ -279,8 +280,7 @@ class CameraAwesomeBuilder extends StatefulWidget {
279280 Alignment previewAlignment = Alignment .center,
280281 PictureInPictureConfigBuilder ? pictureInPictureConfigBuilder,
281282 }) : this ._(
282- sensorConfig: sensorConfig ??
283- SensorConfig .single (sensor: Sensor .position (SensorPosition .back)),
283+ sensorConfig: sensorConfig ?? SensorConfig .single (sensor: Sensor .position (SensorPosition .back)),
284284 enablePhysicalButton: false ,
285285 progressIndicator: progressIndicator,
286286 builder: builder,
@@ -314,8 +314,7 @@ class CameraAwesomeBuilder extends StatefulWidget {
314314 required OnImageForAnalysis onImageForAnalysis,
315315 AnalysisConfig ? imageAnalysisConfig,
316316 }) : this ._(
317- sensorConfig: sensorConfig ??
318- SensorConfig .single (sensor: Sensor .position (SensorPosition .back)),
317+ sensorConfig: sensorConfig ?? SensorConfig .single (sensor: Sensor .position (SensorPosition .back)),
319318 enablePhysicalButton: false ,
320319 progressIndicator: progressIndicator,
321320 builder: builder,
@@ -341,8 +340,7 @@ class CameraAwesomeBuilder extends StatefulWidget {
341340 }
342341}
343342
344- class _CameraWidgetBuilder extends State <CameraAwesomeBuilder >
345- with WidgetsBindingObserver {
343+ class _CameraWidgetBuilder extends State <CameraAwesomeBuilder > with WidgetsBindingObserver {
346344 late CameraContext _cameraContext;
347345 final _cameraPreviewKey = GlobalKey <AwesomeCameraPreviewState >();
348346 StreamSubscription <MediaCapture ?>? _captureStateListener;
@@ -362,6 +360,7 @@ class _CameraWidgetBuilder extends State<CameraAwesomeBuilder>
362360
363361 @override
364362 void didChangeDependencies () {
363+ SystemChrome .setPreferredOrientations ([DeviceOrientation .portraitUp]);
365364 super .didChangeDependencies ();
366365 }
367366
@@ -392,15 +391,11 @@ class _CameraWidgetBuilder extends State<CameraAwesomeBuilder>
392391 widget.sensorConfig,
393392 enablePhysicalButton: widget.enablePhysicalButton,
394393 filter: widget.defaultFilter ?? AwesomeFilter .None ,
395- initialCaptureMode: widget.saveConfig? .initialCaptureMode ??
396- (widget.showPreview
397- ? CaptureMode .preview
398- : CaptureMode .analysis_only),
394+ initialCaptureMode: widget.saveConfig? .initialCaptureMode ?? (widget.showPreview ? CaptureMode .preview : CaptureMode .analysis_only),
399395 saveConfig: widget.saveConfig,
400396 onImageForAnalysis: widget.onImageForAnalysis,
401397 analysisConfig: widget.imageAnalysisConfig,
402- exifPreferences: widget.saveConfig? .exifPreferences ??
403- ExifPreferences (saveGPSLocation: false ),
398+ exifPreferences: widget.saveConfig? .exifPreferences ?? ExifPreferences (saveGPSLocation: false ),
404399 availableFilters: widget.availableFilters,
405400 );
406401
@@ -421,9 +416,7 @@ class _CameraWidgetBuilder extends State<CameraAwesomeBuilder>
421416 child: StreamBuilder <CameraState >(
422417 stream: _cameraContext.state$,
423418 builder: (context, snapshot) {
424- if (! snapshot.hasData ||
425- snapshot.data! .captureMode == null ||
426- snapshot.requireData is PreparingCameraState ) {
419+ if (! snapshot.hasData || snapshot.data! .captureMode == null || snapshot.requireData is PreparingCameraState ) {
427420 return widget.progressIndicator ??
428421 const Center (
429422 child: CircularProgressIndicator .adaptive (),
@@ -444,54 +437,46 @@ class _CameraWidgetBuilder extends State<CameraAwesomeBuilder>
444437 state: snapshot.requireData,
445438 padding: widget.previewPadding,
446439 alignment: widget.previewAlignment,
447- onPreviewTap: widget.onPreviewTapBuilder
448- ? .call (snapshot.requireData) ??
440+ onPreviewTap: widget.onPreviewTapBuilder? .call (snapshot.requireData) ??
449441 OnPreviewTap (
450442 onTap: (
451443 position,
452444 flutterPreviewSize,
453445 pixelPreviewSize,
454446 ) {
455447 snapshot.requireData.when (
456- onPhotoMode: (photoState) =>
457- photoState.focusOnPoint (
448+ onPhotoMode: (photoState) => photoState.focusOnPoint (
458449 flutterPosition: position,
459450 pixelPreviewSize: pixelPreviewSize,
460451 flutterPreviewSize: flutterPreviewSize,
461452 ),
462- onVideoMode: (videoState) =>
463- videoState.focusOnPoint (
453+ onVideoMode: (videoState) => videoState.focusOnPoint (
464454 flutterPosition: position,
465455 pixelPreviewSize: pixelPreviewSize,
466456 flutterPreviewSize: flutterPreviewSize,
467457 ),
468- onVideoRecordingMode: (videoRecState) =>
469- videoRecState.focusOnPoint (
458+ onVideoRecordingMode: (videoRecState) => videoRecState.focusOnPoint (
470459 flutterPosition: position,
471460 pixelPreviewSize: pixelPreviewSize,
472461 flutterPreviewSize: flutterPreviewSize,
473462 ),
474- onPreviewMode: (previewState) =>
475- previewState.focusOnPoint (
463+ onPreviewMode: (previewState) => previewState.focusOnPoint (
476464 flutterPosition: position,
477465 pixelPreviewSize: pixelPreviewSize,
478466 flutterPreviewSize: flutterPreviewSize,
479467 ),
480468 );
481469 },
482470 ),
483- onPreviewScale: widget.onPreviewScaleBuilder
484- ? .call (snapshot.requireData) ??
471+ onPreviewScale: widget.onPreviewScaleBuilder? .call (snapshot.requireData) ??
485472 OnPreviewScale (
486473 onScale: (scale) {
487- snapshot.requireData.sensorConfig
488- .setZoom (scale);
474+ snapshot.requireData.sensorConfig.setZoom (scale);
489475 },
490476 ),
491477 interfaceBuilder: widget.builder,
492478 previewDecoratorBuilder: widget.previewDecoratorBuilder,
493- pictureInPictureConfigBuilder:
494- widget.pictureInPictureConfigBuilder,
479+ pictureInPictureConfigBuilder: widget.pictureInPictureConfigBuilder,
495480 ),
496481 ),
497482 ],
0 commit comments